What are Sprite Frames?
Sprite frames are patches. They can be replaced with external resources just like all other patches (with the same rules for different game modes). The same restrictions apply, though: the dimensions of the external resource do not affect the actual size of the sprite frame. This means the external resources must really be high-resolution versions of the original images. Otherwise the size and/or aspect ratio will not be right for the resource.
For example, in order to replace the Doom medikit (lump name MEDIA0), one would place the file media0.png into the Patches directory.
Color-mapped versions of sprite frames can have external resources, too. To indicate that a resource is color-mapped, its name is formed like this:
(patchName)-table(classNum)(tableNum).ext
(patchName) is the sprite frame lump name. (classNum) is the number of the color translation class. This number is always zero in jDoom and jHeretic. In jHexen, it's the player's class (0=Fighter, 1=Cleric, 2=Mage). tableNum is the index number of the color translation table. jDoom and jHeretic have 4 tables, jHexen has 8. For example: playa1-table01-ck.png would be the Doom player sprite frame A1 with color table 1. The -ck suffix makes the image color keyed (i.e. special colors indicate transparent pixels).