[FFmpeg-trac] #4300(ffmpeg:new): Segmenter duplicating audio stream from previous segments
FFmpeg
trac at avcodec.org
Fri Feb 6 06:49:32 CET 2015
#4300: Segmenter duplicating audio stream from previous segments
-------------------------------------+-------------------------------------
Reporter: hdezela | Type: defect
Status: new | Priority: normal
Component: ffmpeg | Version: git-
Keywords: hls, | master
ssegmenter | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Summary of the bug: When using ssegmenter to produce an HLS group from
RTMP (calling ffmpeg from nginx-rtmp with exec_push) each segment has the
audio from (segment - 3) under the original audio.
segment0 = audio0
segment1 = audio1
segment2 = audio2
segment3 = audio3+audio0
segment4 = audio4+audio1
This keeps layering up to something like segment 100 having its audio plus
the additive audio of all the -3 segments behind it. (see attached files)
The log shows nothing out of the ordinary:
{{{
ffmpeg version N-69586-ga6c2c8f Copyright (c) 2000-2015 the FFmpeg
developers
built with gcc 4.8.2 (GCC) 20140120 (Red Hat 4.8.2-16)
configuration: --enable-gpl --enable-version3 --enable-nonfree --enable-
shared --enable-libmp3lame --enable-libx264 --enable-libfaac --enable-
libvpx --enable-libvorbis --enable-libopencore-amrnb --enable-libopencore-
amrwb --enable-libopencore-amrnb --enable-libtheora --enable-librtmp
libavutil 54. 18.100 / 54. 18.100
libavcodec 56. 21.102 / 56. 21.102
libavformat 56. 19.100 / 56. 19.100
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 9.103 / 5. 9.103
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
Metadata:
Server NGINX RTMP (github.com/arut/nginx-rtmp-module)
width 852.00
height 480.00
displayWidth 852.00
displayHeight 480.00
duration 0.00
framerate 30.00
fps 30.00
videodatarate 100.00
videocodecid 0.00
audiodatarate 48.00
audiocodecid 0.00
profile
level
Input #0, live_flv, from 'rtmp://localhost/live/prueba':
Metadata:
Server : NGINX RTMP (github.com/arut/nginx-rtmp-module)
displayWidth : 852
displayHeight : 480
fps : 30
profile :
level :
Duration: 00:00:00.00, start: 0.000000, bitrate: N/A
Stream #0:0: Video: h264 (High), yuv420p(tv,
smpte170m/bt709/iec61966-2-1), 852x480, 102 kb/s, 30.30 fps, 30 tbr, 1k
tbn, 60 tbc
Stream #0:1: Audio: aac (LC), 48000 Hz, stereo, fltp, 49 kb/s
[libx264 @ 0x1b58880] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
AVX
[libx264 @ 0x1b58880] profile Constrained Baseline, level 3.0
Output #0, stream_segment,ssegment, to '/webdata/vivo/180p%05d.ts':
Metadata:
Server : NGINX RTMP (github.com/arut/nginx-rtmp-module)
displayWidth : 852
displayHeight : 480
fps : 30
profile :
level :
encoder : Lavf56.19.100
Stream #0:0: Video: h264 (libx264), yuv420p, 320x180, q=-1--1, 240
kb/s, 30 fps, 90k tbn, 30 tbc
Metadata:
encoder : Lavc56.21.102 libx264
Stream #0:1: Audio: aac (libfaac), 48000 Hz, stereo, s16, 32 kb/s
Metadata:
encoder : Lavc56.21.102 libfaac
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Stream #0:1 -> #0:1 (aac (native) -> aac (libfaac))
Press [q] to stop, [?] for help
frame= 15 fps=0.0 q=37.0 size=N/A time=00:00:00.44 bitrate=N/A dup=2
drop=0
frame= 30 fps= 30 q=32.0 size=N/A time=00:00:00.96 bitrate=N/A dup=2
drop=0
frame= 45 fps= 30 q=32.0 size=N/A time=00:00:01.47 bitrate=N/A dup=2
drop=0
frame= 60 fps= 30 q=30.0 size=N/A time=00:00:01.98 bitrate=N/A dup=2
drop=0
frame= 75 fps= 30 q=33.0 size=N/A time=00:00:02.47 bitrate=N/A dup=2
drop=0
frame= 90 fps= 30 q=30.0 size=N/A time=00:00:02.98 bitrate=N/A dup=2
drop=0
frame= 105 fps= 30 q=35.0 size=N/A time=00:00:03.47 bitrate=N/A dup=2
drop=0
frame= 120 fps= 30 q=31.0 size=N/A time=00:00:03.96 bitrate=N/A dup=2
drop=0
...
}}}
How to reproduce:
{{{
ffmpeg -y -re -i rtmp://localhost/live/$name -pix_fmt yuv420p -s 320x180
-b:v 240k -c:v libx264 -preset fast -profile:v baseline -level 3.0 -c:a
libfaac -ac 2 -ar 48000 -b:a 32k -g 10 -f ssegment -segment_list
/webdata/vivo/180p.m3u8 -segment_list_flags +live -segment_time 11
-segment_list_type m3u8 -segment_list_size 10 -segment_wrap 10
/webdata/vivo/180p%05d.ts 2>>/webdata/logs/ffmpeg-$name.log;
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/4300>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list