vlc | branch: master | Francois Cartegnie <[email protected]> | Mon Mar 11 18:08:02 2019 +0100| [1f42cfc37622602babf1f50338a19981150f2457] | committer: Francois Cartegnie
packetizer: dts: split second sync substream state > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1f42cfc37622602babf1f50338a19981150f2457 --- modules/packetizer/dts.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/modules/packetizer/dts.c b/modules/packetizer/dts.c index 3d557b2589..16673cd84e 100644 --- a/modules/packetizer/dts.c +++ b/modules/packetizer/dts.c @@ -75,6 +75,7 @@ typedef struct enum { STATE_SYNC_SUBSTREAM_EXTENSIONS = STATE_CUSTOM_FIRST, + STATE_NEXT_SYNC_SUBSTREAM_EXTENSIONS, }; static void PacketizeFlush( decoder_t *p_dec ) @@ -285,14 +286,20 @@ static block_t *PacketizeBlock( decoder_t *p_dec, block_t **pp_block ) VLC_DTS_HEADER_SIZE ) == VLC_SUCCESS && next_header.syncword == DTS_SYNC_SUBSTREAM ) { - p_dec->fmt_out.i_profile = PROFILE_DTS_HD; p_sys->i_input_size += next_header.i_frame_size; + p_sys->i_state = STATE_NEXT_SYNC_SUBSTREAM_EXTENSIONS; + break; } } p_sys->i_state = STATE_GET_DATA; } break; + case STATE_NEXT_SYNC_SUBSTREAM_EXTENSIONS: + p_dec->fmt_out.i_profile = PROFILE_DTS_HD; + p_sys->i_state = STATE_GET_DATA; + break; + case STATE_GET_DATA: /* Make sure we have enough data. */ if( block_WaitBytes( &p_sys->bytestream, _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
