Open galenlynch opened 3 years ago
Yeah, I've turned off h264 hardware decoding in VLC because of this. I just assumed their hardware decoders were not fully compliant with the standard.
If the user's objective is to maintain lossless data with the best compression AV_PIX_FMT_GRAY8
may still be the best choice, even if players struggle. For some users, the videos playing back reliably across all video players isn't a high priority requirement.
The default transfer and target format is
AV_PIX_FMT_GRAY8
if the user suppliesGray
,Unsigned
, orFixedPoint
arrays. However, I have run into problems playing these videos on linux when the video player is using nvdec hardware acceleration, it looks badly corrupted, particularly its chroma. These videos seem to be fine with software decoders, or on Windows with either hardware or software decoders. I don't know if the (non-existent?) chroma is being handled incorrectly in our package and some metadata in the container allows some decoders to ignore the chroma or what.In these cases using
RGB
arrays to feed the VideoIO encoder circumvents this issue.It makes me question whether we should be using
AV_PIX_FMT_GRAY8
as the encoded pixel format.