[vlc-commits] mpeg: ts: only place pat/pmt/etc with use-keyframes on videoblocks

Ilkka Ollakka git at videolan.org
Sat Sep 24 18:15:33 CEST 2016


vlc | branch: master | Ilkka Ollakka <ileoo at videolan.org> | Sat Sep 24 16:43:25 2016 +0300| [0d1b130b4f77a07c400a497b30f15f397e883be8] | committer: Ilkka Ollakka

mpeg: ts: only place pat/pmt/etc with use-keyframes on videoblocks

for example avcodec encoder marks all audio blocks as type_i and we don't
want split for example livehttp output based on those.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0d1b130b4f77a07c400a497b30f15f397e883be8
---

 modules/mux/mpeg/ts.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/modules/mux/mpeg/ts.c b/modules/mux/mpeg/ts.c
index 402ef57..5967b1b 100644
--- a/modules/mux/mpeg/ts.c
+++ b/modules/mux/mpeg/ts.c
@@ -1548,7 +1548,9 @@ static bool MuxStreams(sout_mux_t *p_mux )
         /* Write PAT/PMT before every keyframe if use-key-frames is enabled,
          * this helps to do segmenting with livehttp-output so it can cut segment
          * and start new one with pat,pmt,keyframe*/
-        if( ( p_sys->b_use_key_frames ) && ( p_ts->i_flags & BLOCK_FLAG_TYPE_I ) )
+        if( ( p_sys->b_use_key_frames ) &&
+            ( p_input->p_fmt->i_cat == VIDEO_ES ) &&
+            ( p_ts->i_flags & BLOCK_FLAG_TYPE_I ) )
         {
             if( likely( !pat_was_previous ) )
             {



More information about the vlc-commits mailing list