[vlc-commits] demux: ts: check for EAC3 before AC3 logic channels descriptor (fix #16316 )

Francois Cartegnie git at videolan.org
Fri Jan 8 08:52:58 CET 2016


vlc/vlc-2.2 | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Thu Jan  7 17:22:50 2016 +0100| [07c33e45988e72d4afd9cf1df8b14d23665f9827] | committer: Jean-Baptiste Kempf

demux: ts: check for EAC3 before AC3 logic channels descriptor (fix #16316)

Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>

> http://git.videolan.org/gitweb.cgi/vlc/vlc-2.2.git/?a=commit;h=07c33e45988e72d4afd9cf1df8b14d23665f9827
---

 modules/demux/ts.c |   15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/modules/demux/ts.c b/modules/demux/ts.c
index 377db21..0ff94e5 100644
--- a/modules/demux/ts.c
+++ b/modules/demux/ts.c
@@ -3664,18 +3664,19 @@ static void PMTSetupEs0x06( demux_t *p_demux, ts_pid_t *pid,
     es_format_t *p_fmt = &pid->es->fmt;
     dvbpsi_descriptor_t *p_subs_dr = PMTEsFindDescriptor( p_es, 0x59 );
 
-    if( PMTEsHasRegistration( p_demux, p_es, "AC-3" ) ||
-        PMTEsFindDescriptor( p_es, 0x6a ) ||
-        PMTEsFindDescriptor( p_es, 0x81 ) )
+    if( PMTEsHasRegistration( p_demux, p_es, "EAC3" ) ||
+        PMTEsFindDescriptor( p_es, 0x7a ) )
     {
+        /* DVB with stream_type 0x06 (ETS EN 300 468) */
         p_fmt->i_cat = AUDIO_ES;
-        p_fmt->i_codec = VLC_CODEC_A52;
+        p_fmt->i_codec = VLC_CODEC_EAC3;
     }
-    else if( PMTEsFindDescriptor( p_es, 0x7a ) )
+    else if( PMTEsHasRegistration( p_demux, p_es, "AC-3" ) ||
+        PMTEsFindDescriptor( p_es, 0x6a ) ||
+        PMTEsFindDescriptor( p_es, 0x81 ) )
     {
-        /* DVB with stream_type 0x06 (ETS EN 300 468) */
         p_fmt->i_cat = AUDIO_ES;
-        p_fmt->i_codec = VLC_CODEC_EAC3;
+        p_fmt->i_codec = VLC_CODEC_A52;
     }
     else if( PMTEsHasRegistration( p_demux, p_es, "DTS1" ) ||
              PMTEsHasRegistration( p_demux, p_es, "DTS2" ) ||



More information about the vlc-commits mailing list