[FFmpeg-cvslog] avformat/mpegtsenc: add registration descriptor for AC-3 and EAC3

Limin Wang git at videolan.org
Wed Aug 26 15:54:54 EEST 2020


ffmpeg | branch: master | Limin Wang <lance.lmwang at gmail.com> | Sun Aug 23 23:02:31 2020 +0800| [4aa6eda76ebe195bae2c5a3183371f6a57ca4cdd] | committer: Limin Wang

avformat/mpegtsenc: add registration descriptor for AC-3 and EAC3

Some DVB and ATSC captures are using the official MPEG2 registration
descriptor in addition to using the correct stream type and the
AC-3_audio_stream_descriptor/AC3_descriptor. So let's add it even if it is not
strictly needed for DVB/ATSC.

Reviewed-by: Marton Balint <cus at passwd.hu>
Signed-off-by: Limin Wang <lance.lmwang at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4aa6eda76ebe195bae2c5a3183371f6a57ca4cdd
---

 libavformat/mpegtsenc.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
index 61fdd09f7a..c415078177 100644
--- a/libavformat/mpegtsenc.c
+++ b/libavformat/mpegtsenc.c
@@ -487,6 +487,10 @@ static int mpegts_write_pmt(AVFormatContext *s, MpegTSService *service)
         /* write optional descriptors here */
         switch (st->codecpar->codec_type) {
         case AVMEDIA_TYPE_AUDIO:
+            if (codec_id == AV_CODEC_ID_AC3)
+                put_registration_descriptor(&q, MKTAG('A', 'C', '-', '3'));
+            if (codec_id == AV_CODEC_ID_EAC3)
+                put_registration_descriptor(&q, MKTAG('E', 'A', 'C', '3'));
             if (ts->flags & MPEGTS_FLAG_SYSTEM_B) {
                 if (codec_id == AV_CODEC_ID_AC3) {
                     DVBAC3Descriptor *dvb_ac3_desc = ts_st->dvb_ac3_desc;



More information about the ffmpeg-cvslog mailing list