This improves compatibility with some consumer TVs which apparently either search a HEVC descriptor (which our mpegts muxer can't generate) or a format specifier.
Since the HEVC format specifier is not registered (but used in the wild), it is not written if strict_std_compliance is higher than normal. This fixes the issue in ticket #7744. Signed-off-by: Marton Balint <c...@passwd.hu> --- libavformat/mpegtsenc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c index 099d003f42..fc0ea225c6 100644 --- a/libavformat/mpegtsenc.c +++ b/libavformat/mpegtsenc.c @@ -606,6 +606,8 @@ static int mpegts_write_pmt(AVFormatContext *s, MpegTSService *service) put_registration_descriptor(&q, MKTAG('d', 'r', 'a', 'c')); } else if (stream_type == STREAM_TYPE_VIDEO_VC1) { put_registration_descriptor(&q, MKTAG('V', 'C', '-', '1')); + } else if (stream_type == STREAM_TYPE_VIDEO_HEVC && s->strict_std_compliance <= FF_COMPLIANCE_NORMAL) { + put_registration_descriptor(&q, MKTAG('H', 'E', 'V', 'C')); } break; case AVMEDIA_TYPE_DATA: -- 2.16.4 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel