I often have to write up specs for video conversion for some of the video production houses that my company's clients work with. Unfortunately, I am a programmer first and "video-guy" on the side, so I don't know too much about all the different codecs.
I am looking for a good lossless codec that is both cross-platform (Win and Mac) and cross application (Adobe, Apple, etc).
mathematically lossess for the best compression: x264. easily 1/3 of huffyuv all times.
visually lossless, x264 with quantizer 1-5 or maybe up to 10. 1-5 is so visually lossless that not even insanely sharpening it you can see artifacts.
There are a few different codecs that will do cross platform.
Cineform is a good one. It has both a 444 version and a RAW version.
If you don't care about space taken and realtime playback, you could use an image sequence.
Apple Pro-res can now be read on both Mac and PC. However, encoding cannot be done by PCs.
Do you mean visually lossless or lossless?
The (schroedinger) dirac encoder supports lossless compression much more effective than huffyuv and is supported by GStreamer and libav. In GStreamer the option is rate-control=3 for schroedinger:
huffyuv is definitely the simplest solution and you will find several cross-platform implementations as C libraries for example.
It is easily encapsulated in AVI files and readable by the major players.
Format definition if you need to interact with it: http://multimedia.cx/huffyuv.txt
If you want mathematically lossless I would suggest something like Motion JPEG2000, which has a lossless compression option, but it doesn't have the broad support in editing applications.
If you want support between Apple's Final Cut Pro and Adobe Premier I would use uncompressed 444 if you are doing any compositing, or 422 if you aren't.