Welcome to our community

Be a part of something great, join today!

  • Hey all, just changed over the backend after 15 years I figured time to give it a bit of an update, its probably gonna be a bit weird for most of you and i am sure there is a few bugs to work out but it should kinda work the same as before... hopefully :)

Bitjazz SheerVideo Compression?

Joel Kaye

Well-known member
Joined
Jan 4, 2007
Messages
2,962
Reaction score
0
Points
0
If I'm reading this right it's lossless 4:4:4 YUV at 2K for $150. For you codec wizards, how does this compare to Prorez, Cineform and REDCODE raw? What will the working codec be for us when color correcting and compositing?


http://www.bitjazz.com/en/products/sheervideo/faq/formats/

Does SheerVideo support 10-bit channels?

Yes, SheerVideo supports real-time lossless encoding and decoding of 10-bit data: RGB[A] 10b, Y'CbCr[A] 10bv 4:4:4[:4], and Y'CbCr[A] 10bv 4:2:2[:4], both progressive and interlaced, at all resolutions and frame rates, on both Mac and Windows.

SheerVideo supports the 10-bit RGB[A] 10b pixel formats 'b64a' and 'b48r'; the 10-bit Y'CbCr[A] 10bv 4:4:4[:4] pixel format 'v410'; and the 10-bit Y'CbCr[A] 10bv 4:2:2[:4] pixel formats 'v210', 'v216', and 'Y216'.

RGB[A] 10b 'b64a', 'b48r'
Y'CbCr[A] 10bv 4:4:4[:4] 'v410'
Y'CbCr[A] 10bv 4:2:2[:4] 'v210', 'v216', 'Y216'

The specific Sheer codec corresponding to 10-bit RGB[A] 10b is

Sheer RGB[A] 10b
which encodes from and decodes to RGB[A] 10b losslessly in real time. Sheer RGB[A] 8b also encodes from and decodes to RGB[A] 10b in real time, but only to 8 bits of precision. Sheer Y'CbCr[A] 10bv 4:4:4[:4], Sheer Y'CbCr[A] 8bv 4:4:4[:4], Sheer Y'CbCr[A] 10bv 4:2:2[:4], and Sheer Y'CbCr[A] 8bv 4:2:2[:4] codecs also encode from and decode to RGB[A] 10b, but not losslessly, and not always in real time. The generic Sheer codec uses Sheer RGB[A] 10b to encode RGB[A] 10b.

The specific Sheer codec corresponding to 10-bit Y'CbCr[A] 10bv 4:4:4[:4] is

Sheer Y'CbCr[A] 10bv 4:4:4[:4]
which encodes from and decodes to Y'CbCr[A] 10bv 4:4:4[:4] losslessly in real time. Sheer Y'CbCr[A] 8bv 4:4:4[:4] also encodes from and decodes to Y'CbCr[A] 10bv 4:4:4[:4] in real time, but only to 8 bits of precision. Sheer RGB[A] 10b, Sheer RGB[A] 8b, Sheer Y'CbCr[A] 10bv 4:2:2[:4], and Sheer Y'CbCr[A] 8bv 4:2:2[:4] codecs also encode from and decode to Y'CbCr[A] 10bv 4:4:4[:4], but not losslessly, and not always in real time. The generic Sheer codec uses Sheer Y'CbCr[A] 10bv 4:4:4[:4] to encode Y'CbCr[A] 10bv 4:4:4[:4].

The specific Sheer codec corresponding to 10-bit Y'CbCr[A] 10bv 4:2:2[:4] is

Sheer Y'CbCr[A] 10bv 4:2:2[:4]
which encodes from and decodes to Y'CbCr[A] 10bv 4:4:4[:4] losslessly in real time. Sheer Y'CbCr[A] 8bv 4:2:2[:4] also encodes from and decodes to Y'CbCr[A] 10bv 4:2:2[:4] in real time, but only to 8 bits of precision. Sheer RGB[A] 10b, Sheer RGB[A] 8b, Sheer Y'CbCr[A] 10bv 4:4:4[:4], and Sheer Y'CbCr[A] 8bv 4:4:4[:4] also encode from and decode to Y'CbCr[A] 10bv 4:2:2[:4], though not losslessly and not always in real time. The generic Sheer encoder encodes Y'CbCr[A] 10bv 4:2:2[:4] as Sheer Y'CbCr[A] 10bv 4:2:2[:4].
In the Sheer codec and Sheer format names, the 10b designation following the color-space name indicates that the channel precision is 10 bits:

Sheer RGB[A] 10b
Sheer Y'CbCr[A] 10bv 4:4:4[:4]
Sheer Y'CbCr[A] 10bv 4:2:2[:4]
With 10-bit channels, each component theoretically has 210 = 1024 possible distinct values, which is greater than the number of just noticeable differences that the human visual system can distinguish under optimal viewing conditions.

10-bit precision has long been the norm in high-end digitized film work, as in Cineon and DPX files; as well as in high-end video work, as in the D5 format.
 
Sheer would be a good choice for your renders out of your compositor. You'll most likely bring Redcode directly into your software, but when you change the image in some way and render it back out, you'll want to go with an uncompressed, archival format.

For cuts-only editing, you could stay in Redcode, since it's not an interframe-compressed codec.

I think this is where a lot of people are going to degrade their images by unwittingly recompressing to lossy formats: round trips through their compositor and back into their editor.

Once you've altered the image, save it uncompressed for archival use. You're most likely going to have to compress again for your delivery medium (unless you're going to film), so you want to maintain the quality of the camera original by using uncompressed codecs through the rest of the pipeline.
 
Sheer is mathematically lossless (which should be easy to test). It's mathematically/numerically the same as uncompressed.

Though it's possible to screw it up... sometimes things will get truncated to 8-bits, and you lose information when going between Y'CbCr and R'G'B'. And you can also get generation loss (or worse) when converting between 4:2:2 and 4:4:4. But you would get those issues anyways.

2- There is also that other meaning to uncompressed, in that 4:2:2 Y'CbCr is referred to as uncompressed (e.g. the apple 8/10-bit uncompressed codec). Chroma resolution is halved horizontally. In rare cases this causes visually-noticeable differences/loss (e.g. fully saturated text or colors). At high bitrates, chroma subsampling is a not very efficient/good method of compression.... so you might want to avoid it. Real uncompressed, lossless codecs like Sheer, and (very likely) wavelet-based codecs like Redcode should give you better quality.

3- The other archival issue to watch out for is that your format is still supported. If you migrate your data every few years, you should be able to avoid dead codecs/platforms/wrappers/file systems/software/etc.
 
I wrote an article about this series of codecs for the creative cow magazine. I think you can get the back issue at www.creativecow.net

I can't provide a link because you have to subscribe to get it.

David
 
Back
Top