ThingLister


Quick download links: ThingLister Applescript for OS9 ThingLister Applescript for OSX


QuickTime is complicated and vast enough to be available as a different sets of components ranging from 'minimal' to 'full'. Likely as not, that weird confection of track types and features you're wiring into your movie is not present in the minimal install (which most users have).

Hitting your movie without these components should result in QuickTime offering to download them, which might not be the most convenient thing in the world when you're also trying to show your .MOV.

In fact, after running the updater, the user will typically be required to reload the page that instigated it in order to see your fab content. Are your users able to make that synaptic leap? More importantly: Will they bother?

To alleviate this pain, since QuickTime 6.0, Apple has offered the 'preflighter' XML type which might look something like this:

<?xml version="1.0"?>
<?quicktime type="application/x-qtpreflight"?>
<qtpreflight>
<component type="eat " subtype="TEXT"/>
</qtpreflight>

Here we see a preflighter for the text importer component. You can add whatever others you like as child elements to the <qtpreflight> tag. If you save this as .XML, import into QuickTime player, then save as .MOV, you will be able to use the movie as a 'gateway' to your content, thus controlling exactly when the 'you haven't got this component' dialog appears.

Note the space in the "eat " parameter. All importer components use an "eat " type. (- and all exporters use "spit" type, but it's unlikely you need to worry about them for preflighting).

Problem is, how do we know what four letter 'thing' codes to put in the parameters for the component tags. You could try Unthinkable software's freeware utility 'thing reporter' or their IMNSHO slightly expensive 'thing detective', but neither of these will export the thing codes as a nice text list (Duh!). Apple doesn't provide a list, so I had to create one myself. I can't guarantee that it's accurate or complete, but it's surely better than a kick in the pants. I'd be particularly interested to have a list of which components are used by which features. (A luxury solution would be a droplet where you drop your QuickTime movie, and it generates a preflighter XML file based on the contents of that movie. I'd pay money for such a utility, but of course no such thing exists today).

Note, in order to create the list, I wrote an Applescript which makes use of Akua Sweets resource hacking features. I hope it was able to catch all the 'things' on my system, but there may be others I don't know about. The script is available here and will ONLY WORK ON OS9. If someone can dream up a way to write such a script for OSX, or just some utility that can do the job, I'd love to hear about it, but for now VIVA OS9!


UPDATE for OSX:

OK, so satimage ported their OSAX to OSX, which means we can now read resource files on that platform with Applescript. Great! Nice one Emmanuel! I have changed the script so that it uses the Satimage OSAX and made a couple of other OSX - specific changes to find the resources in the correct location. (Different from OS9 - and inside packages too, just to be an extra nuisance).

So, the upshot is that now I have an OSX version of my thinglister script. Don't forget to install the OSAX before running the script, and while you're at it, download a copy of Smile, which is a superb freeware Applescript editor from the same company.


In the html code for the table below, I have tried to use a non-breaking space everywhere a space is required such as "eat ". I don't know if this will survive if you just save this page as text from your browser. Suffice to say that in most cases, if there is a space in the 'four letter code' then it is found at the end of the code. i.e. if your 'four letter code' appears to have only three letters, there's almost certainly a space missing.

If you want to download the OS9 list shown below as a (stuffit compressed) text file, click here.

Type SubType Manuf. Name
 
ihlr dv   appl GenericDriverFamily
devc fwdv appl Device Control
imdc yuvs appl 65550 yuv transfer codec
mhlr mhlr appl Apple Standard Media Handler
mhlr vide appl Apple Video Media Handler
mhlr soun appl Apple Sound Media Handler
mhlr gnrc appl Apple Generic Media Handler
mhlr text appl Apple Text Media Handler
imdc jpeg appl Apple Photo - JPEG
imco raw  appl Apple None
imdc raw  appl Apple None
imdc cvid appl Apple Cinepak
imdc mjpa appl Apple Motion JPEG A
imdc mjpb appl Apple Motion JPEG B
imdc gif  appl Apple GIF
grip GIFf appl GIF
grip JPEG appl JFIF
imdc avr  appl Apple AVR JPEG
imdc dmb1 appl Apple OpenDML JPEG
imdc SVQ1 SVis Sorenson Video™ Decompressor
sdec Qclp QCOM Qualcomm PureVoice™
eat  celp soun QUALCOMM PureVoice Importer
pnot celp QCOM QUALCOMM PureVoice Previewer
scom Qclp QCOM Qualcomm PureVoice™
eat  QCP  soun QUALCOMM PureVoice Importer
sdec QDM2 QDes QDesign Music 2
ddec adec appl Apple Data Decompressor
ddec zlib appl Inflate Decompressor
muni muni appl No name!
eat  SWFL flsh Flash
mhlr flsh appl Flash Media Handler
mhlr moov appl Apple Movie Media Handler
nets base appl NetworkStatus
eat  .SMI appl SMIL
pars xml  appl Parser for XML 1.0
imdc base appl No name!
imdc h263 appl Apple H.263
imdc png  appl Apple PNG
grip PNGf appl PNG
imdc scal appl Apple Scaling Codec
imdc y420 appl Apple YUV420 Codec
imdc syv9 appl Apple Sorenson YUV9 Codec
imdc yuvx appl Apple YUV422 Codec
play obje appl Object Controller
mhlr obje appl QTVR Object Media Handler
mhlr qtvr appl QTVR Media Handler
imdc cupa pano QTVR Cubic Codec
imdc ltpa pano QTVR Cylindrical Codec
play stna appl QTVR 1.0 Object Controller
play STpn zzzz QTVR 1.0 Panorama Controller
play qtvr appl QTVR Movie Controller
play pano appl Panorama Controller
mhlr STpn zzzz QTVR Panorama Media Handler
mhlr pano appl QTVR Panorama Media Handler
eat  WAVE soun Wave
eat  ULAW soun µLaw
eat  moov ???? Movie
eat  AIFF soun AIFF
xlat qt appl QuickTime
eat  MOV  ???? Movie
dhlr alis appl Apple Alias Data Handler
clok micr appl Apple Microsecond Clock
clok tick appl Apple Tick Clock
prog ???? appl Standard Progress
play ?std appl Movie Controller
dhlr alis appl Apple Alias Data Handler for CDi Discs
dhlr hndl appl Apple Handle Data Handler
dhlr rsrc appl Apple Resource Data Handler
grip grip appl Generic
grip PICT appl Picture
clok icm  appl Apple ICM Clock
eat  grip ???? Graphic Files
eat  GIFf vide Animated GIF
dhlr url  appl Apple URL File Data Handler
play none appl None Movie Controller
eat  Sd2f soun Sound Designer II
miss base appl No name!
eat  qhtm appl HTML document
inac file appl FileInstallAction
inac thng appl ThingInstallAction
eat  hmov ???? Slow Movie
inac init appl INITInstallAction
dhlr ptr  appl Apple Pointer Data Handler
imdc qdrw appl Apple QuickDraw
shlr m1s  appl Apple MPEG System Stream Player
shlr m1v  appl Apple MPEG System Stream Player
shlr m1a  appl Apple MPEG System Stream Player
rtpm MPEG appl Apple MPEG System Stream Player
mhlr MPEG appl Apple MPEG System Stream Player
rtpr MPEG appl Apple MPEG System Stream Player
eat  MPEG MPEG Apple MPEG System Stream Player
eat  M1V  m1v  Apple MPEG System Stream Player
eat  M1A  m1a  Apple MPEG System Stream Player
imdc ACTL SBXC Streambox ACT-L2 Component
eat  .axs Axel MindAvenue AXEL Movie Importer
mhlr .axs Axel MindAvenue AXEL Media Handler
play bhiv appl Be Here iVideo
imdc bhiv behr Be Here iVideo
eat  IPIX iPmh iPIX Movie Import Component
mhlr iPmh iPXC iPIX Movie Import Component
imco VP31 ?On2 VP32 Video Player
imdc VP31 ?On2 VP32 Video Player
scom in24 appl 24-bit Integer
sdec in24 appl 24-bit Integer
scom in32 appl 32-bit Integer
sdec in32 appl 32-bit Integer
scom alaw appl ALaw 2:1
scom fl64 appl 64-bit Floating Point
sdec fl64 appl 64-bit Floating Point
scom fl32 appl 32-bit Floating Point
sdec fl32 appl 32-bit Floating Point
mhlr tmcd appl Time Code Media Handler
eat  snd  soun Sound
eat  sfil soun Sound
eat  PICS vide PICS
spit snd  soun Sound
spit AIFF soun AIFF
eat  trak soun Audio CD
spit sfil soun System 7 Sound
spit WAVE soun Wave
imco jpeg appl Apple Photo - JPEG
imco rpza appl Apple Video
imdc rpza appl Apple Video
imco cvid appl Apple Cinepak
imco yuv2 appl Apple Component Video - YUV422
imdc yuv2 appl Apple Component Video - YUV422
imco mjpa appl Apple Motion JPEG A
imco mjpb appl Apple Motion JPEG B
imtc mjpa mjpb M-JPEG A to M-JPEG B
imtc mjpb mjpa M-JPEG B to M-JPEG A
imdc flic appl Apple FLC
scdi imag appl Compression
sgpn vide cmpr Compression
imco SVQ1 SVis Sorenson Video™ Compressor
scom QDM2 QDes QDesign Music 2
imdc sync appl ColorSync
imdc r408 appl Apple r408
imdc dvpp appl Apple DVCPRO
imco dvpp appl Apple DVCPRO - PAL
spit MooV appl QuickTime Movie
eat  FLI  vide AutoDesk Animator
dcom adec appl Apple Data Compressor
eat  dvc! ???? DV
sdec dvca appl DV
spit dvc! appl DV Stream
sdec ms? appl DVI IMA
sdec ms? appl MS ADPCM
spit ULAW soun µLaw
vout base appl Apple Base Video Output
dcom zlib appl Deflate Compressor
spit VfW  appl AVI
spit FLC  appl FLC
spit grex appl Image Sequence
spit embd ???? QuickTime Media Link
imco SVQ3 SMI  Sorenson Video 3 Compressor
imdc dvc  appl Apple DV
imco h263 appl Apple H.263
imco dvc  appl Apple DV - NTSC
imdc dvcp appl Apple DV
imco dvcp appl Apple DV - PAL
imco h261 appl Apple H.261
imdc b64a appl Apple 64-bit ARGB
imco png  appl Apple PNG
imtc WRAW raw  RGB Upside down to RGB
scom ulaw appl µLaw 2:1
scom MAC6 appl MACE 6:1
scom MAC3 appl MACE 3:1
scom ima4 appl IMA 4:1
scdi soun appl No name!
barg ???? appl Movie Grabber
sgch vide appl Video
sgch soun appl Sound
sgpn vide sour Source
sgpn vide imag Image
sgpn soun cmpr Compression
sgpn soun sour Source
sgpn soun samp Sample
sgch text appl Text
sgpn text sett Text Settings
dhlr alis appl Streaming file data handler
imdc geff appl Special Effects and Filters
imdc ckey appl Chroma Key
imdc dslv appl Cross Fade
imdc matt appl Gradient Wipe
imdc smpt appl Wipe
blit ckey appl Apple Chroma Key Blitter
blit blnd appl Apple Blend Blitter
blit mask appl Apple Mask Blitter
blit matt appl Apple Matte Blitter
imdc gain appl Alpha Gain
imdc genk appl General Convolution
imdc rgbb appl RGB Balance
imdc fmns appl Film Noise
imdc blnd appl Alpha Compositor
imdc mplo appl Implode
imdc push appl Push
imdc zoom appl Zoom
imdc lens appl Lens Flare
imdc brco appl Brightness and Contrast
imdc trav appl Traveling Matte
imdc chan appl Channel Compositor
imdc slid appl Slide
sqft ftlr appl No name!
sqft spld appl Apple Splendid Filter Sequence Filter
imdc ripl appl Ripple
imdc clou appl Cloud
imdc fire appl Fire
imdc glas appl Glass
pnot PICS appl PICS Preview Viewer
pmak MooV appl Movie Preview Maker
pmak PICT appl Pict Preview Maker
pnot PICT appl Picture Preview Viewer
pnot moov appl Movie Previewer
pnot sfil appl Sound Previewer
pnot 3DMF appl 3D Preview Viewer
pmak qtif appl QuickTime Image Preview Maker
mpmp mpmp appl MP Helper
mngr moov appl MovieManager
eat  QTPF ???? QTPreFlight
eat  SKIN skin Skin
mhlr skin appl Apple Skin Media Handler
plug hlpr appl Browser Plug-in Helper
bwak wkie appl IE Prefs Updater
bwak wkns appl Netscape MIME prefs updater
bwak wkao appl AOL MIME prefs updater
syrp base appl QuickTime Base Application Configuration Component
null base appl No name!
imdc SVQ3 SMI  Sorenson Video 3 Decompressor
imdc dvpp gdw  DVCPRO
imdc dvcp gdw  DV
imdc dvc  gdw  DV
clok fwcy appl Apple FireWire Cycle Clock
imdc raw  res  DV
vout fire appl FireWire
mux  dv   appl FireWire
sdev dv   appl FireWire DV
res  fwpa appl DV Audio
vdig fire appl DV Video
eat  PICT vide Picture
eat  TEXT text Text
spit PICT ???? Picture
spit TEXT text Text
imdc kpcd appl Apple Photo CD
imdc qdgx appl Apple QuickDraw GX
imdc 8BPS appl Apple Planar RGB
imco 8BPS appl Apple Planar RGB
imdc PNTG appl Apple MacPaint
imdc .SGI appl Apple SGI
grip PNTG appl MacPaint
grip 8BPS appl Photoshop
grip qtif appl QuickTime Image
grip .SGI appl SGI
grip FPix appl FlashPix Image
imdc fpix appl FlashPix Image
imtc qdgx path GX shape to curves
pnot FPix appl FlashPix Image Previewer
spit BMPf ???? BMP
imdc tga  appl Apple TGA
grip TPIC appl TGA
grip qdgx appl QuickDraw GX
imdc cmyk appl Apple CMYK
imdc tiff appl Apple TIFF
grip TIFF appl TIFF
imco WRLE appl Apple BMP
grex base appl Base
grex BMPf appl BMP
grex JPEG appl JPEG
grex 8BPS appl Photoshop
grex PICT appl PICT
grex qtif appl QuickTime Image
grex PNTG appl MacPaint
grex TPIC appl TGA
imco tga  appl Apple TGA
imco tiff appl Apple TIFF
grex PNGf appl PNG
grex TIFF appl TIFF
grex .SGI appl SGI
eat  VfW  ???? AVI
imco rle  appl Apple Animation
imdc rle  appl Apple Animation
imco smc  appl Apple Graphics
imdc smc  appl Apple Graphics
imdc blit appl No name!
imdc WRLE appl Apple BMP
grip BMPf appl BMP
mhlr sprt appl Sprite Animation Media Handler
sdec QDMC QDes QDesign Music
imdc geff appl Special Effects and Filters
imdc dslv appl Cross Fade
imdc path appl Apple Curve
imdc push appl Push
imdc slid appl Slide
mhlr twen appl Apple Tween Media Handler
twen gxfp appl Path To Fixed Point Tween
twen atom appl Atom List Tween
twen gxmt appl Path To Matrix Translation Tween
twen gxxy appl Path X to Y Tween
twen gxyx appl Path Y to X Tween
twen gxmr appl Path To Matrix Translation And Rotation Tween
twen poly appl Polygon Tween
twen mulm appl MultiMatrix Tween
twen spin appl Spin Tween
twen gxpr appl Path To Matrix Rotation Tween
dtcp htpk appl HotPicks
eat  embd ???? QuickTime Media Link
sdec ms?U FhG  MPEG Layer-3 Audio
eat  Mp3  soun MPEG Layer-3 Audio
imdc h261 appl Apple H.261
imdc msvc appl Apple - Microsoft Video 1
adec aac  appl MPEG-4 AAC Decoder
sdec mp4a appl MPEG-4 Audio
imdc mp4v appl Apple MPEG4 Decompressor
eat  mpg4 ???? MPEG-4 Importer
mhlr sdsm appl Apple MPEG-4 Scene Media Handler
mhlr odsm appl Apple MPEG-4 ODSM Media Handler
aenc aac  appl MPEG-4 AAC Encoder
scom mp4a appl MPEG-4 Audio
imco mp4v appl Apple MPEG4 Compressor
spit mpg4 appl MPEG-4
musi gm   appl General MIDI Music Player
eat  Midi musi Standard MIDI
nota nota appl Note Allocator
tune tune appl Tune Player
musi ss   appl Software Music Player
mhlr musi appl Apple Music Media Handler
musi gene appl Generic MIDI Music Player
spit Midi musi Standard MIDI
spit AIFF musi AIFF
inst base appl QuickTime Base Instrument Component
midi mmgr appl MIDI Manager MIDI
midi oms  appl OMS MIDI
midi fms  appl FMS MIDI
musi midi appl MIDI Note Player
aunt out  smgr SoundManagerOutput
qprf musi appl Music
aunt musd dls  Apple: DLSMusicDevice
aunt mixr smxr Apple: AUmixer
aunt efct mrev Apple: AUMatrixReverb
aunt efct lmtr Apple: AUPeakLimiter
eat  3DMF qd3d 3DMF
mhlr qd3d appl QuickDraw 3D Media Handler
twen 3tra appl 3D Translate Tween
twen 3sca appl 3D Scale Tween
twen 3rot appl 3D Rotate Tween
twen 3rap appl 3D Rotate About Point Tween
twen 3rax appl 3D Rotate About Axis Tween
twen 3qua appl 3D Quaternion Tween
twen 3mat appl 3D Matrix Tween
twen 3cam appl 3D Camera Data Tween
twen 3nlr appl 3D Matrix NonLinear Tween
twen 3vro appl 3D VR Object Tween
twen 3caa appl 3D Matrix NonLinear Tween
rtpr SVQ1 SVis Sorenson Video™ Media Reassembler
rtpr QDM2 QDes QDesign Music 2 Reassembler
strm gnrc appl base stream module
conr gnrc appl base receive conductor
conr rtp  appl rtp receive conductor
conr rtsp appl rtsp conductor
conr icy  appl ShoutCast conductor
netw tcp  appl TCP QTS Module
netw udp  appl UDP Network
netw tcp  sck5 TCP (SOCKS5)
netw http appl http
cook http appl Apple Cookie Handler
auth http appl Apple Authentication Handler
eat  pls  strm ShoutCast
dhlr cach appl Apple Cache Data Handler
dhlr url  appl Apple URL Data Handler
dhlr url  appl Stream URL Data Handler
mhlr strm appl stream media handler
shlr gnrc appl base stream handler
shlr soun appl sound stream handler
shlr text appl text stream handler
shlr vide appl video stream handler
rtpr soun appl RTP Audio Reassembler
rtpr gnrc appl RTP Base Reassembler
rtpr 263+ appl RTP H263Plus Reassembler
rtpr jpeg appl RTP JPEG Reassembler
rtpr qtim appl rtp quicktime Reassembler
rtpr Qclp appl RTP PureVoice Reassembler
rtp  v2   appl RTPv2
rtpc gnrc appl rtp payload map
simp sdp  appl SDP Importer
simp xml  appl XML Importer
eat  rtsp strm Real Time Streaming Protocol
eat  sdp  strm Session Description Protocol
rtpr mp4a appl RTP MPEG4 Audio Reassembler
conm rtp  appl rtp media conductor
rtpr mp4v appl RTP MPEG4 Video Reassembler
rtpr SVQ3 SMI  Sorenson Video™ Media Reassembler
gide qpcg appl Sorenson Video™ Media Reassembler
subs bkmk appl Sorenson Video™ Media Reassembler
rtpm SVQ1 SVis Sorenson Video™ Media Packetizer
rtpm QDM2 QDes QDesign Music 2 Packetizer
cons rtp  appl rtp send conductor
mhlr hint appl hint media handler
rtpm h261 appl H.261 Media Packetizer
rtpm 263+ appl H.263+ Media Packetizer
rtpm Qclp appl Pure Voice Media Packetizer
rtpm qtim appl QuickTime Media Packetizer
rtpm soun appl Sound Media Packetizer
rtpm gnrc appl RTP Base Media Packetizer
rtpm jpeg appl RTP JPEG Media Packetizer
rtpl rtpm appl RTP Live Packetizer
rtpm mp4a appl RTP MPEG4 Audio Packetizer
spit MooV hint Hinted Movie
hint rtp  appl RTP Hinter Component
rtpm mp4v appl RTP MPEG4 Video Packetizer
rtpm SVQ3 SMI  Sorenson Video™ Media Packetizer
cons gnrc appl base send conductor
sept xml  appl XML Exporter
srcr gnrc appl base sourcer
srcr trak soun audio track sourcer
srcr trak gnrc base track sourcer
srcr grab appl SG channel sourcer
cons rtsp appl rtsp send conductor
srcr push appl PushData Sourcer
cosm rtp  appl rtp send media conductor
sept sdp  appl SDP Exporter
srcr sgch appl Sequence Grab Channel Sourcer
shlr musi appl music stream handler
rtpr h261 appl RTP H261 Reassembler
sdec dvi  appl DVI 4:1
sdec lpc  appl LPC 23:1
sdec agsm appl Apple GSM 10:1
eat  GSM  soun GSM Audio Importer
spit MooV vrob Interframe Compressed VR Object Movie
spit MooV vrsp Separate Single-Node Movies
spit MooV vrwe Fast Start QuickTime VR Movie
dhlr jrjr appl StreamDataHandler
dhlr urlb appl No name!
mhlr Zoom Zoom Zoomify Media Handler Component
imco ZyGo ZyGo ZyGoVideo
imdc ZyGo ZyGo ZyGoVideo
mhlr PULM PULM Pulse Media
eat  PW3  PULM Pulse Media
eat  PWC  PULM Pulse Media
wire PULM PULM Pulse Media