Vidvox / hap

A codec for fast video playback
BSD 2-Clause "Simplified" License
387 stars 39 forks source link

New lossless formats #14

Open miroandel opened 8 years ago

miroandel commented 8 years ago

First of all thanks for the awesome work developing this codec and making it open source. Second, it would be very handy to add some uncompressed texture formats for high quality multi-threaded playback for those cases when HAP Q is not enough. I would propose HAP LS (lossless) using BGR and HAP LSA (lossless with alpha) using BGRA. A lot of folks are using image sequences to achieve this level of quality and it would be better using chunked HAP LS(A) instead.

It might also be very useful to add support for single-channel/monochrome texture formats for achieving 4:2:2 or 4:2:0 chromatic compression using a shader.

Best regards and keep up the good work!

Miroslav Andel Chief Software Developer Dataton

dlublin commented 8 years ago

Hey Miroslav!

Sorry for the delayed reply – it is a very interesting idea and we wanted to have a chance to discuss it before responding.

We would be very curious to hear more about the existing workflows and limitations that prompted you to ask for a lossless version of Hap. Our initial thought is that since Hap gets most of its advantages from using S3 Texture Compression storing lossless data there wouldn't be a significant data savings or performance difference compared to existing formats. That said, we'd love to know what bottlenecks or issues you are running into that you think could be addressed in Hap LS/LSA.

It might be easier to follow up over email? You can drop me a line at lublin[at]vidvox[dot]net and I'll loop in a discussion with Tom and Ray.

Also I'd like to add that we were very hap-py to see that Dataton adopted native support for the Hap codecs. Making it easier for people to work seamless between software like Watchout and other visual software is what the standard is all about!

ttoinou commented 6 years ago

So a little TL;DR of your email discussion :-) ?