[vlc-commits] packetizer: hevc: handle AU_END flag
Francois Cartegnie
git at videolan.org
Thu Mar 7 17:29:30 CET 2019
vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Tue Aug 21 15:46:59 2018 +0200| [d1d0f6d255a83a339be656ef6a3f10923ba72556] | committer: Francois Cartegnie
packetizer: hevc: handle AU_END flag
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d1d0f6d255a83a339be656ef6a3f10923ba72556
---
modules/packetizer/hevc.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/modules/packetizer/hevc.c b/modules/packetizer/hevc.c
index a5049f275d..b60892df5d 100644
--- a/modules/packetizer/hevc.c
+++ b/modules/packetizer/hevc.c
@@ -890,6 +890,7 @@ static void SetOutputBlockProperties(decoder_t *p_dec, block_t *p_output)
}
p_sys->pts = VLC_TICK_INVALID;
}
+ p_output->i_flags &= ~BLOCK_FLAG_AU_END;
hevc_release_sei_pic_timing(p_sys->p_timing);
p_sys->p_timing = NULL;
}
@@ -902,6 +903,7 @@ static block_t *ParseNALBlock(decoder_t *p_dec, bool *pb_ts_used, block_t *p_fra
{
decoder_sys_t *p_sys = p_dec->p_sys;
*pb_ts_used = false;
+ bool b_au_end = p_frag->i_flags & BLOCK_FLAG_AU_END;
if(p_sys->b_need_ts)
{
@@ -944,6 +946,10 @@ static block_t *ParseNALBlock(decoder_t *p_dec, bool *pb_ts_used, block_t *p_fra
p_output = ParseNonVCL(p_dec, i_nal_type, p_frag);
}
+ if( !p_output && b_au_end )
+ p_output = OutputQueues(p_sys, p_sys->sets != MISSING &&
+ p_sys->b_recovery_point);
+
p_output = GatherAndValidateChain(p_output);
if(p_output)
{
More information about the vlc-commits
mailing list