[vlc-commits] [Git][videolan/vlc][master] 3 commits: mux: ps: fix mapping of AAC audio

Rémi Denis-Courmont (@Courmisch) gitlab at videolan.org
Sat Apr 23 13:47:32 UTC 2022



Rémi Denis-Courmont pushed to branch master at VideoLAN / VLC


Commits:
79ec2f0c by Francois Cartegnie at 2022-04-23T13:30:17+00:00
mux: ps: fix mapping of AAC audio

- - - - -
8ac99ac7 by Francois Cartegnie at 2022-04-23T13:30:17+00:00
mux: ps: map HEVC

- - - - -
cea941e9 by Francois Cartegnie at 2022-04-23T13:30:17+00:00
demux/mux: ps: map MPEG-H

- - - - -


2 changed files:

- modules/demux/mpeg/ps.h
- modules/mux/mpeg/ps.c


Changes:

=====================================
modules/demux/mpeg/ps.h
=====================================
@@ -293,6 +293,10 @@ static inline int ps_track_fill( ps_track_t *tk, ps_psm_t *p_psm,
                 es_format_Change( &tk->fmt, AUDIO_ES, VLC_CODEC_MP4A );
                 tk->fmt.i_original_fourcc = VLC_FOURCC('L','A','T','M');
             }
+            else if( i_type == 0x2d )
+            {
+                es_format_Change( &tk->fmt, AUDIO_ES, VLC_CODEC_MPEGH );
+            }
             else if( tk->fmt.i_cat == UNKNOWN_ES )
             {
                 es_format_Change( &tk->fmt, AUDIO_ES, VLC_CODEC_MPGA );


=====================================
modules/mux/mpeg/ps.c
=====================================
@@ -291,6 +291,11 @@ static int AddStream( sout_mux_t *p_mux, sout_input_t *p_input )
                 StreamIdGet( p_sys->stream_id_mpgv, 0xe0, 0xef );
             p_stream->i_stream_type = 0x1b;
             break;
+        case VLC_CODEC_HEVC:
+            p_stream->i_stream_id =
+                StreamIdGet( p_sys->stream_id_mpgv, 0xe0, 0xef );
+            p_stream->i_stream_type = 0x24;
+            break;
         case VLC_CODEC_DVD_LPCM:
             p_stream->i_stream_id =
                 0xbd00 | StreamIdGet( p_sys->stream_id_lpcm, 0xa0, 0xaf );
@@ -309,9 +314,23 @@ static int AddStream( sout_mux_t *p_mux, sout_input_t *p_input )
             p_stream->i_stream_type = 0x03; /* ISO/IEC 11172 Audio */
             break;
         case VLC_CODEC_MP4A:
+            if( p_input->p_fmt->i_original_fourcc == VLC_FOURCC('A','D','T','S') )
+            {
+                p_stream->i_stream_type = 0x0f; /* ISO/IEC 13818-7 */
+            }
+            else if( p_input->p_fmt->i_original_fourcc == VLC_FOURCC('L','A','T','M') )
+            {
+                p_stream->i_stream_type = 0x11; /* ISO/IEC 14496-3 */
+            }
+            else
+                goto error;
             p_stream->i_stream_id =
                 StreamIdGet( p_sys->stream_id_mpga, 0xc0, 0xcf );
-            p_stream->i_stream_type = 0x0f;
+            break;
+        case VLC_CODEC_MPEGH:
+            p_stream->i_stream_id =
+                    StreamIdGet( p_sys->stream_id_mpga, 0xc0, 0xcf );
+            p_stream->i_stream_type = 0x2d; /* ISO/IEC 23008-3 Main */
             break;
         case VLC_CODEC_SPU:
             p_stream->i_stream_id =



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/945095a85560a59061c474f1da2453505d14cdaf...cea941e93025b7834011cd5866692b1d07996a18

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/945095a85560a59061c474f1da2453505d14cdaf...cea941e93025b7834011cd5866692b1d07996a18
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list