[FFmpeg-trac] #5525(avformat:new): hls_ts_options not applied to all ts packets

FFmpeg trac at avcodec.org
Sun May 15 14:00:13 CEST 2016


#5525: hls_ts_options not applied to all ts packets
-------------------------------------+-------------------------------------
             Reporter:  jack         |                    Owner:
                 Type:  defect       |                   Status:  new
             Priority:  normal       |                Component:  avformat
              Version:  unspecified  |               Resolution:
             Keywords:  hls ts       |               Blocked By:
  options                            |  Reproduced by developer:  0
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------

Comment (by jack):

 Sure, any input seems to reproduce, at long as it contains atn eac3 audio
 stream
 {{{
 2% [jack:/tmp]./ffmpeg -i test.mkv
 ffmpeg version git-2016-05-14-81c3ce0 Copyright (c) 2000-2016 the FFmpeg
 developers
   built with gcc 5.3.1 (Debian 5.3.1-11) 20160307
   configuration: --disable-vaapi
   libavutil      55. 24.100 / 55. 24.100
   libavcodec     57. 42.100 / 57. 42.100
   libavformat    57. 36.100 / 57. 36.100
   libavdevice    57.  0.101 / 57.  0.101
   libavfilter     6. 45.100 /  6. 45.100
   libswscale      4.  1.100 /  4.  1.100
   libswresample   2.  0.101 /  2.  0.101
 Input #0, matroska,webm, from 'test.mkv':
   Metadata:
     ENCODER         : Lavf57.25.100
   Duration: 00:21:00.25, start: 0.000000, bitrate: 1184 kb/s
     Stream #0:0: Video: mpeg4 (Simple Profile), yuv420p, 720x404 [SAR 1:1
 DAR 180:101], 23.98 fps, 23.98 tbr, 1k tbn (default)
     Metadata:
       DURATION        : 00:21:00.100000000
     Stream #0:1: Audio: eac3, 44100 Hz, stereo, fltp, 192 kb/s (default)
     Metadata:
       ENCODER         : Lavc57.24.102 eac3
       DURATION        : 00:21:00.252000000
 At least one output file must be specified
 }}}
 {{{
 3% [jack:/tmp]./ffmpeg -nostats -i test.mkv -hls_ts_options
 mpegts_flags=system_b -map 0:v -map 0:a -c copy -threads 4 -hls_time 10
 -hls_base_url http://10.1.1.2/test/ /tmp/test/play.m3u8
 ffmpeg version git-2016-05-14-81c3ce0 Copyright (c) 2000-2016 the FFmpeg
 developers
   built with gcc 5.3.1 (Debian 5.3.1-11) 20160307
   configuration: --disable-vaapi
   libavutil      55. 24.100 / 55. 24.100
   libavcodec     57. 42.100 / 57. 42.100
   libavformat    57. 36.100 / 57. 36.100
   libavdevice    57.  0.101 / 57.  0.101
   libavfilter     6. 45.100 /  6. 45.100
   libswscale      4.  1.100 /  4.  1.100
   libswresample   2.  0.101 /  2.  0.101
 Input #0, matroska,webm, from 'test.mkv':
   Metadata:
     ENCODER         : Lavf57.25.100
   Duration: 00:21:00.25, start: 0.000000, bitrate: 1184 kb/s
     Stream #0:0: Video: mpeg4 (Simple Profile), yuv420p, 720x404 [SAR 1:1
 DAR 180:101], 23.98 fps, 23.98 tbr, 1k tbn (default)
     Metadata:
       DURATION        : 00:21:00.100000000
     Stream #0:1: Audio: eac3, 44100 Hz, stereo, fltp, 192 kb/s (default)
     Metadata:
       ENCODER         : Lavc57.24.102 eac3
       DURATION        : 00:21:00.252000000
 [hls @ 0x3c1f9e0] Using AVStream.codec to pass codec parameters to muxers
 is deprecated, use AVStream.codecpar instead.
     Last message repeated 1 times
 Output #0, hls, to '/tmp/test/play.m3u8':
   Metadata:
     encoder         : Lavf57.36.100
     Stream #0:0: Video: mpeg4, yuv420p, 720x404 [SAR 1:1 DAR 180:101],
 q=2-31, 23.98 fps, 23.98 tbr, 90k tbn (default)
     Metadata:
       DURATION        : 00:21:00.100000000
     Stream #0:1: Audio: eac3, 44100 Hz, stereo, 192 kb/s (default)
     Metadata:
       ENCODER         : Lavc57.24.102 eac3
       DURATION        : 00:21:00.252000000
 Stream mapping:
   Stream #0:0 -> #0:0 (copy)
   Stream #0:1 -> #0:1 (copy)
 Press [q] to stop, [?] for help
 frame=30212 fps=6774 q=-1.0 Lsize=N/A time=00:21:00.21 bitrate=N/A speed=
 283x
 video:152138kB audio:29537kB subtitle:0kB other streams:0kB global
 headers:0kB muxing overhead: unknown
 }}}
 {{{
 4% [jack:/tmp]tsinfo test/play0.ts
 Reading from test/play0.ts
 Scanning 1000 TS packets

 Packet 2 is PAT
 Program list:
     Program 1 -> PID 1000 (4096)

 Packet 3 is PMT with PID 1000 (4096)
   Program 1, version 0, PCR PID 0100 (256)
   Program streams:
     PID 0100 ( 256) -> Stream type 10 ( 16) 14496-2 Visual (MPEG-4 part 2
 video)
     PID 0101 ( 257) -> Stream type 06 (  6) H.222.0/13818-1 PES private
 data (maybe Dolby/AC-3 in DVB)
         ES info (3 bytes): 7a 01 00
         Descriptor tag 7a (122) (1 byte): 00

 Found 2 PAT packets and 1 PMT packet in 1000 TS packets
 3% [jack:/tmp]tsinfo test/play2.ts
 Reading from test/play2.ts
 Scanning 1000 TS packets

 Packet 2 is PAT
 Program list:
     Program 1 -> PID 1000 (4096)

 Packet 3 is PMT with PID 1000 (4096)
   Program 1, version 0, PCR PID 0100 (256)
   Program streams:
     PID 0100 ( 256) -> Stream type 10 ( 16) 14496-2 Visual (MPEG-4 part 2
 video)
     PID 0101 ( 257) -> Stream type 87 (135) User private

 Found 2 PAT packets and 1 PMT packet in 1000 TS packets
 }}}

 I removed -hls_flags delete_segments only to get the first segment easily,
 this option do not change anything from this case

--
Ticket URL: <https://trac.ffmpeg.org/ticket/5525#comment:3>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list