[FFmpeg-user] Help with generating HLS from RTSP

Luke Davis l1 at newanswertech.com
Thu Jun 26 23:39:03 CEST 2014


On Thu, 26 Jun 2014, Luke wrote:

Perhaps a better version of my question is: does anyone know why I am getting 
the results I'm getting?  Anything I can do to make this process more stable? 
Or is transcoding an RTSP MP4 stream to HLS (MPEGTS) live on the same machine 
just impossible?

  > The setup: 
> Darwin Streaming Server on localhost, streaming, for testing, a playlist of 
> three copies of the same two second test mp4 movie.
>
> The ffmpeg command, on localhost, is:
>
> ffmpeg -i rtsp://172.31.17.213:554/test624 \
> -acodec libfdk_aac -ac 2 -b:a 128k -vcodec libx264 -fpre 
> $HOME/ffmpeg_build/share/ffmpeg/libx264-ipod640.ffpreset -b:v 500k -threads 0 
> -g 75 -level 3.1 \
> -map 0 -vbsf h264_mp4toannexb \
> -flags -global_header -f segment \
> -segment_time 10 \
> -segment_list test.m3u8 -segment_list_flags +live \
> -segment_list_entry_prefix http://somewhere.com/folder/ -segment_format 
> mpegts stream%05d.ts
>
> It works for a few minutes, but then fails.
>
> ffmpeg version 2.2.git Copyright (c) 2000-2014 the FFmpeg developers
>  built on Jun  1 2014 06:16:27 with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
>  configuration: --prefix=/home/video/ffmpeg_build 
> --extra-cflags=-I/home/video/ffmpeg_build/include 
> --extra-ldflags=-L/home/video/ffmpeg_build/lib --bindir=/home/video/bin 
> --extra-libs=-ldl --enable-gpl --enable-libass --enable-libfdk-aac 
> --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora 
> --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree
>  libavutil      52. 87.100 / 52. 87.100
>  libavcodec     55. 65.100 / 55. 65.100
>  libavformat    55. 42.100 / 55. 42.100
>  libavdevice    55. 13.101 / 55. 13.101
>  libavfilter     4.  5.100 /  4.  5.100
>  libswscale      2.  6.100 /  2.  6.100
>  libswresample   0. 19.100 /  0. 19.100
>  libpostproc    52.  3.100 / 52.  3.100
> Input #0, rtsp, from 'rtsp://172.31.17.213:554/test624':
>  Metadata:
>    title           : test624
>  Duration: N/A, start: 0.000000, bitrate: N/A
>    Stream #0:0: Video: mpeg4 (Advanced Simple Profile), yuv420p, 380x480 
> [SAR 1:1 DAR 19:24], 30 fps, 30 tbr, 90k tbn, 1k tbc
>    Stream #0:1: Audio: aac, 22050 Hz, stereo, fltp
> [libx264 @ 0x28ff0a0] using SAR=1/1
> [libx264 @ 0x28ff0a0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
> [libx264 @ 0x28ff0a0] profile Constrained Baseline, level 3.0
> [segment @ 0x29365c0] Codec for stream 0 does not use global headers but 
> container format requires global headers
> [segment @ 0x29365c0] Codec for stream 1 does not use global headers but 
> container format requires global headers
> Output #0, segment, to 'stream%05d.ts':
>  Metadata:
>    title           : test624
>    encoder         : Lavf55.42.100
>    Stream #0:0: Video: h264 (libx264), yuv420p, 380x480 [SAR 1:1 DAR 19:24], 
> q=-1--1, 500 kb/s, 30 fps, 90k tbn, 30 tbc
>    Metadata:
>      encoder         : Lavc55.65.100 libx264
>    Stream #0:1: Audio: aac (libfdk_aac), 22050 Hz, stereo, s16, 128 kb/s
>    Metadata:
>      encoder         : Lavc55.65.100 libfdk_aac
> Stream mapping:
>  Stream #0:0 -> #0:0 (mpeg4 -> libx264)
>  Stream #0:1 -> #0:1 (aac -> libfdk_aac)
> Press [q] to stop, [?] for help
> [mpeg4 @ 0x28b5b40] warning: first frame is no keyframe
> [mpeg4 @ 0x28b5b40] RTP: missed 241 packets
> [mpeg4 @ 0x28b5b40] concealing 320 DC, 320 AC, 320 MV errors in P frame
> [aac @ 0x28b6820] RTP: missed 12 packets=00:00:07.83 bitrate=N/A dup=173 
> drop=0
> frame= 5221 fps= 31 q=24.0 size=N/A time=00:02:53.98 bitrate=N/A dup=173 
> drop=0
>
> Then, eventually, I start seeing a vast quantity of the below:
>
> [rtsp @ 0x28b3080] CSeq 18 expected, 17 received.
> [aac @ 0x28b6820] RTP: missed 2665 packets
> [mpeg4 @ 0x28b5b40] RTP: missed 3 packets00:08:20.03 bitrate=N/A dup=6983 
> drop=0
> [mpeg4 @ 0x28b5b40] concealing 468 DC, 468 AC, 468 MV errors in P frame
> [mpeg4 @ 0x28b5b40] RTP: missed 11 packets0:08:20.26 bitrate=N/A dup=6983 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 4 packets
> [mpeg4 @ 0x28b5b40] RTP: missed 5 packets
> [mpeg4 @ 0x28b5b40] concealing 133 DC, 133 AC, 133 MV errors in P frame
> [mpeg4 @ 0x28b5b40] RTP: missed 5 packets00:08:20.60 bitrate=N/A dup=6989 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 1 packets
> [mpeg4 @ 0x28b5b40] RTP: missed 2 packets0:08:23.80 bitrate=N/A dup=6995 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 21 packets
> [mpeg4 @ 0x28b5b40] RTP: missed 129 packets:08:24.70 bitrate=N/A dup=7014 
> drop=0
> [mpeg4 @ 0x28b5b40] concealing 375 DC, 375 AC, 375 MV errors in P frame
> [mpeg4 @ 0x28b5b40] RTP: missed 6 packets
>    Last message repeated 1 times
> [mpeg4 @ 0x28b5b40] RTP: missed 7 packets
> [mpeg4 @ 0x28b5b40] RTP: missed 6 packets00:08:27.76 bitrate=N/A dup=7102 
> drop=0
>    Last message repeated 1 times
> [mpeg4 @ 0x28b5b40] RTP: missed 6 packets00:08:28.26 bitrate=N/A dup=7115 
> drop=0
>    Last message repeated 1 times
> [mpeg4 @ 0x28b5b40] RTP: missed 30 packets0:08:28.73 bitrate=N/A dup=7127 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 31 packets
> [mpeg4 @ 0x28b5b40] concealing 296 DC, 296 AC, 296 MV errors in P frame
> [mpeg4 @ 0x28b5b40] RTP: missed 13 packets0:08:29.20 bitrate=N/A dup=7139 
> drop=0
> [mpeg4 @ 0x28b5b40] concealing 396 DC, 396 AC, 396 MV errors in P frame
> [mpeg4 @ 0x28b5b40] RTP: missed 24 packets
> [mpeg4 @ 0x28b5b40] concealing 154 DC, 154 AC, 154 MV errors in P frame
> [mpeg4 @ 0x28b5b40] RTP: missed 6 packets00:08:30.30 bitrate=N/A dup=7170 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 3 packets00:08:30.53 bitrate=N/A dup=7176 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 6 packets00:08:31.13 bitrate=N/A dup=7193 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 3 packets00:08:31.36 bitrate=N/A dup=7199 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 1 packets00:08:31.50 bitrate=N/A dup=7202 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 7 packets00:08:31.86 bitrate=N/A dup=7211 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 2 packets
> [mpeg4 @ 0x28b5b40] RTP: missed 5 packets
> [mpeg4 @ 0x28b5b40] RTP: missed 2 packets
> [mpeg4 @ 0x28b5b40] RTP: missed 7 packets00:08:32.33 bitrate=N/A dup=7221 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 1 packets00:08:32.56 bitrate=N/A dup=7226 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 3 packets
> [mpeg4 @ 0x28b5b40] RTP: missed 2 packets00:08:32.86 bitrate=N/A dup=7233 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 3 packets
>    Last message repeated 1 times
> [mpeg4 @ 0x28b5b40] RTP: missed 2 packets
> [mpeg4 @ 0x28b5b40] RTP: missed 3 packets00:08:33.30 bitrate=N/A dup=7242 
> drop=0
> [mpeg4 @ 0x28b5b40] RTP: missed 2 packets
> [mpeg4 @ 0x28b5b40] RTP: missed 3 packets
> ...
>
> What am I doing wrong?
>
> Thanks
>
> Luke
>
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>


More information about the ffmpeg-user mailing list