[FFmpeg-trac] #2236(undetermined:new): Default stream selection does not work with HLS output
FFmpeg
trac at avcodec.org
Mon Feb 4 18:26:51 CET 2013
#2236: Default stream selection does not work with HLS output
-------------------------------------+-------------------------------------
Reporter: nealzebub | Type: defect
Status: new | Priority: normal
Component: | Version:
undetermined | unspecified
Keywords: hls | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
'''OS:''' CentOS 6.3 64-bit
'''Build:''' ffmpeg version N-49571-gb5f544a
'''Type:''' Burek static build, 64-bit, 20130204
'''Obtained from:''' http://ffmpeg.gusari.org/static/64bit/
I am attempting to encode from file(mainly MP4) to HTTP Live
Streaming(HLS) compatible streams.
According to the FFmpeg documentation, [http://ffmpeg.org/ffmpeg.html
#Stream-selection]:
''By default ffmpeg includes only one stream of each type (video, audio,
subtitle) present in the input files and adds them to each output file. It
picks the "best" of each based upon the following criteria; for video it
is the stream with the highest resolution, for audio the stream with the
most channels, for subtitle it’s the first subtitle stream. In the case
where several streams of the same type rate equally, the lowest numbered
stream is chosen.''
I should not have to map audio and videos streams when outputting to HLS.
I obtained a source file, so I could enter this report, from:
http://www.wowzamedia.com/_h264/bigbuckbunny_1500.mp4
The problem I encountered is when attempting to encode to HLS, without
mapping audio and video streams, a message appears:
{{{
Output file #0 does not contain any stream
}}}
If I set the output to mpegts or MP4, I receive no such message, and
encode completes normally, which means that auto stream selection
functioned as described in the documentation for those outputs.
'''Here is the exact command used:'''
{{{
./ffmpeg.20130204 -report -i ./source_media/bigbuckbunny_1500.mp4
-frames:v 480 -c:v libx264 -crf 25 -profile:v baseline -g 48 -sc_threshold
0 -flags +cgop -c:a aac -strict -2 -b:a 112k -f ssegment -segment_time 10
-segment_format mpegts "hls_%02d.ts"
}}}
'''Here is the report:'''
{{{
ffmpeg started on 2013-02-04 at 12:08:21
Report written to "ffmpeg-20130204-120821.log"
Command line:
./ffmpeg.20130204 -report -i ./source_media/bigbuckbunny_1500.mp4
-frames:v 480 -c:v libx264 -crf 25 -profile:v baseline -g 48 -sc_threshold
0 -flags +cgop -c:a aac -strict -2 -b:a 112k -f ssegment -segment_time 10
-segment_format mpegts "hls_%02d.ts"
ffmpeg version N-49571-gb5f544a Copyright (c) 2000-2013 the FFmpeg
developers
built on Feb 4 2013 05:23:01 with gcc 4.6 (Debian 4.6.3-1)
configuration: --prefix=/root/ffmpeg-static/64bit --extra-
cflags='-I/root/ffmpeg-static/64bit/include -static' --extra-
ldflags='-L/root/ffmpeg-static/64bit/lib -static' --extra-libs='-lxml2
-lexpat -lfreetype' --enable-static --disable-shared --disable-ffserver
--disable-doc --enable-bzlib --enable-zlib --enable-postproc --enable-
runtime-cpudetect --enable-libx264 --enable-gpl --enable-libtheora
--enable-libvorbis --enable-libmp3lame --enable-gray --enable-libass
--enable-libfreetype --enable-libopenjpeg --enable-libspeex --enable-
libvo-aacenc --enable-libvo-amrwbenc --enable-version3 --enable-libvpx
libavutil 52. 17.101 / 52. 17.101
libavcodec 54. 91.100 / 54. 91.100
libavformat 54. 61.104 / 54. 61.104
libavdevice 54. 3.103 / 54. 3.103
libavfilter 3. 35.101 / 3. 35.101
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 2.100 / 52. 2.100
Splitting the commandline.
Reading option '-report' ... matched as option 'report' (generate a
report) with argument '1'.
Reading option '-i' ... matched as input file with argument
'./source_media/bigbuckbunny_1500.mp4'.
Reading option '-frames:v' ... matched as option 'frames' (set the number
of frames to record) with argument '480'.
Reading option '-c:v' ... matched as option 'c' (codec name) with argument
'libx264'.
Reading option '-crf' ... matched as AVOption 'crf' with argument '25'.
Reading option '-profile:v' ... matched as option 'profile' (set profile)
with argument 'baseline'.
Reading option '-g' ... matched as AVOption 'g' with argument '48'.
Reading option '-sc_threshold' ... matched as AVOption 'sc_threshold' with
argument '0'.
Reading option '-flags' ... matched as AVOption 'flags' with argument
'+cgop'.
Reading option '-c:a' ... matched as option 'c' (codec name) with argument
'aac'.
Reading option '-strict' ... matched as AVOption 'strict' with argument
'-2'.
Reading option '-b:a' ... matched as option 'b' (video bitrate (please use
-b:v)) with argument '112k'.
Reading option '-f' ... matched as option 'f' (force format) with argument
'ssegment'.
Reading option '-segment_time' ... matched as AVOption 'segment_time' with
argument '10'.
Reading option '-segment_format' ... matched as AVOption 'segment_format'
with argument 'mpegts'.
Reading option 'hls_%02d.ts' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option report (generate a report) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input file
./source_media/bigbuckbunny_1500.mp4.
Successfully parsed a group of options.
Opening an input file: ./source_media/bigbuckbunny_1500.mp4.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x2ad0a20] Format mov,mp4,m4a,3gp,3g2,mj2
probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x2ad0a20] ISO: File Type Major Brand: isom
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x2ad0a20] File position before
avformat_find_stream_info() is 114213748
[h264 @ 0x2ad7260] Increasing reorder buffer to 1
[h264 @ 0x2ad7260] no picture ooo
[h264 @ 0x2ad7260] no picture
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x2ad0a20] All info found
rfps: 23.416667 0.019644
rfps: 23.416667 0.019644
rfps: 23.500000 0.014433
rfps: 23.500000 0.014433
rfps: 23.583333 0.010023
rfps: 23.583333 0.010023
rfps: 23.666667 0.006415
rfps: 23.666667 0.006415
rfps: 23.750000 0.003608
rfps: 23.750000 0.003608
rfps: 23.833333 0.001604
rfps: 23.833333 0.001604
rfps: 23.916667 0.000401
rfps: 23.916667 0.000401
rfps: 24.000000 0.000000
rfps: 24.083333 0.000401
rfps: 24.083333 0.000401
rfps: 24.166667 0.001603
rfps: 24.166667 0.001603
rfps: 24.250000 0.003607
rfps: 24.250000 0.003607
rfps: 24.333333 0.006413
rfps: 24.333333 0.006413
rfps: 24.416667 0.010021
rfps: 24.416667 0.010021
rfps: 24.500000 0.014430
rfps: 24.500000 0.014430
rfps: 24.583333 0.019641
rfps: 24.583333 0.019641
rfps: 47.416667 0.019645
rfps: 47.416667 0.019645
rfps: 47.500000 0.014434
rfps: 47.500000 0.014434
rfps: 47.583333 0.010024
rfps: 47.583333 0.010024
rfps: 47.666667 0.006416
rfps: 47.666667 0.006416
rfps: 47.750000 0.003609
rfps: 47.750000 0.003609
rfps: 47.833333 0.001604
rfps: 47.833333 0.001604
rfps: 47.916667 0.000401
rfps: 47.916667 0.000401
rfps: 48.000000 0.000000
rfps: 48.083333 0.000401
rfps: 48.083333 0.000401
rfps: 48.166667 0.001603
rfps: 48.166667 0.001603
rfps: 48.250000 0.003607
rfps: 48.250000 0.003607
rfps: 48.333333 0.006412
rfps: 48.333333 0.006412
rfps: 48.416667 0.010020
rfps: 48.416667 0.010020
rfps: 48.500000 0.014429
rfps: 48.500000 0.014429
rfps: 48.583333 0.019640
rfps: 48.583333 0.019640
rfps: 23.976024 0.000033
rfps: 23.976024 0.000033
rfps: 47.952048 0.000133
rfps: 47.952048 0.000133
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x2ad0a20] File position after
avformat_find_stream_info() is 27957
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
'./source_media/bigbuckbunny_1500.mp4':
Metadata:
major_brand : isom
minor_version : 0
compatible_brands: isomavc1mp42isom
Duration: 00:09:56.46, start: 0.000000, bitrate: 1531 kb/s
Stream #0:0(eng), 21, 1/100000: Video: h264 (Main) (avc1 /
0x31637661), yuv420p, 1080x608, 1393 kb/s, 24 fps, 24 tbr, 100k tbn, 200k
tbc
Metadata:
handler_name : VideoHandler
Stream #0:1(eng), 40, 1/48000: Audio: aac (mp4a / 0x6134706D), 48000
Hz, stereo, fltp, 131 kb/s
Metadata:
handler_name : SoundHandler
Successfully opened the file.
Parsing a group of options: output file hls_%02d.ts.
Applying option frames:v (set the number of frames to record) with
argument 480.
Applying option c:v (codec name) with argument libx264.
Applying option profile:v (set profile) with argument baseline.
Applying option c:a (codec name) with argument aac.
Applying option b:a (video bitrate (please use -b:v)) with argument 112k.
Applying option f (force format) with argument ssegment.
Successfully parsed a group of options.
Opening an output file: hls_%02d.ts.
Successfully opened the file.
Output #0, stream_segment,ssegment, to 'hls_%02d.ts':
Metadata:
major_brand : isom
minor_version : 0
compatible_brands: isomavc1mp42isom
Output file #0 does not contain any stream
Statistics: 595406 bytes read, 2 seeks
}}}
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2236>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list