[FFmpeg-trac] #6415(undetermined:reopened): Strange DTS of first packet in RTSP stream
FFmpeg
trac at avcodec.org
Mon Jun 8 17:07:16 EEST 2020
#6415: Strange DTS of first packet in RTSP stream
-------------------------------------+-------------------------------------
Reporter: Alexander | Owner:
Type: defect | Status: reopened
Priority: normal | Component:
| undetermined
Version: unspecified | Resolution:
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Comment (by jlpoole):
confirmed problem still exists in 4.2.2:
{{{
[Gentoo] media-video/ffmpeg
4.2.2(0/56.58.58)^t(04:10:06 AM 05/24/2020)(X bzip2 encode gpl iconv
libaom network
opus postproc pulseaudio sdl threads v4l x265 zlib -alsa -altivec -amr
-amrenc -appkit
-bluray -bs2b -cdio -chromaprint -chromium -codec2 -cpudetection -cuda
-dav1d -debug
-doc -fdk -flite -fontconfig -frei0r -fribidi -gcrypt -gme -gmp -gnutls
-gsm
-hardcoded-tables -iec61883 -ieee1394 -jack -jpeg2k -kvazaar -ladspa
-libaribb24
-libass -libcaca -libdrm -libilbc -libressl -librtmp -libsoxr
-libtesseract
-libv4l -libxml2 -lv2 -lzma -mipsdspr1 -mipsdspr2 -mipsfpu -mmal -modplug
-mp3
-openal -opencl -opengl -openh264 -openssl -oss -pic -rubberband -samba
-snappy
-speex -srt -ssh -static-libs -svg -test -theora -truetype -twolame -vaapi
-vdpau -vidstab -vorbis -vpx -wavpack -webp -x264 -xvid -zeromq -zimg
-zvbi
ABI_MIPS="-n32 -n64 -o32" ABI_RISCV="-lp64 -lp64d" ABI_S390="-32 -64"
ABI_X86="64 -32 -x32" CPU_FLAGS_ARM="-neon -thumb -thumb2 -v6 -v8 -vfp
-vfpv3"
CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext sse sse2 sse3 sse4_1 sse4_2
ssse3 -3dnow -3dnowext -fma4 -xop" FFTOOLS="aviocat cws2fws ffescape
ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart
sidxindex trasher" VIDEO_CARDS="-nvidia")
}}}
{{{
taurus /home/jlpoole/work/ffmpeg/ticket_6415 # ./client.sh
ffmpeg version 4.2.2 Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 8.3.0 (Gentoo 8.3.0-r1 p1.1)
configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64
--docdir=/usr/share/doc/ffmpeg-4.2.2/html --mandir=/usr/share/man
--enable-shared --cc=x86_64-pc-linux-gnu-gcc --cxx=x86_64-pc-linux-gnu-g++
--ar=x86_64-pc-linux-gnu-ar --optflags='-march=native -O2 -pipe'
--disable-static --enable-avfilter --enable-avresample --disable-stripping
--disable-optimizations --disable-libcelt --disable-indev=alsa --disable-
indev=oss --disable-indev=jack --disable-outdev=alsa --disable-outdev=oss
--enable-bzlib --disable-runtime-cpudetect --disable-debug --disable-
gcrypt --disable-gnutls --disable-gmp --enable-gpl --disable-hardcoded-
tables --enable-iconv --disable-libtls --disable-libxml2 --disable-lzma
--enable-network --disable-opencl --disable-openssl --enable-postproc
--disable-libsmbclient --enable-ffplay --enable-sdl2 --disable-vaapi
--disable-vdpau --enable-xlib --enable-libxcb --enable-libxcb-shm
--enable-libxcb-xfixes --enable-zlib --disable-libcdio --disable-
libiec61883 --disable-libdc1394 --disable-libcaca --disable-openal
--disable-opengl --disable-libv4l2 --enable-libpulse --disable-libdrm
--disable-libjack --disable-libopencore-amrwb --disable-libopencore-amrnb
--disable-libcodec2 --disable-libdav1d --disable-libfdk-aac --disable-
libopenjpeg --disable-libbluray --disable-libgme --disable-libgsm
--disable-libaribb24 --disable-mmal --disable-libmodplug --enable-libopus
--disable-libilbc --disable-librtmp --disable-libssh --disable-libspeex
--disable-libsrt --disable-librsvg --disable-ffnvcodec --disable-libvorbis
--disable-libvpx --disable-libzvbi --disable-appkit --disable-libbs2b
--disable-chromaprint --disable-cuda-llvm --disable-libflite --disable-
frei0r --disable-libfribidi --disable-fontconfig --disable-ladspa
--disable-libass --disable-libtesseract --disable-lv2 --disable-
libfreetype --disable-libvidstab --disable-librubberband --disable-libzmq
--disable-libzimg --disable-libsoxr --enable-pthreads --disable-libvo-
amrwbenc --disable-libmp3lame --disable-libkvazaar --enable-libaom
--disable-libopenh264 --disable-libsnappy --disable-libtheora --disable-
libtwolame --disable-libwavpack --disable-libwebp --disable-libx264
--enable-libx265 --disable-libxvid --disable-armv5te --disable-armv6
--disable-armv6t2 --disable-neon --disable-vfp --disable-vfpv3 --disable-
armv8 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --disable-
altivec --disable-amd3dnow --disable-amd3dnowext --disable-fma4 --disable-
xop --cpu=host --disable-doc --disable-htmlpages --enable-manpages
libavutil 56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat 58. 29.100 / 58. 29.100
libavdevice 58. 8.100 / 58. 8.100
libavfilter 7. 57.100 / 7. 57.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 5.100 / 5. 5.100
libswresample 3. 5.100 / 3. 5.100
libpostproc 55. 5.100 / 55. 5.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging
level) with argument 'debug'.
Reading option '-rtsp_transport' ... matched as AVOption 'rtsp_transport'
with argument 'tcp'.
Reading option '-rtsp_flags' ... matched as AVOption 'rtsp_flags' with
argument 'listen'.
Reading option '-i' ... matched as input url with argument
'rtsp://localhost/in/1'.
Reading option '-acodec' ... matched as option 'acodec' (force audio codec
('copy' to copy stream)) with argument 'copy'.
Reading option '-vcodec' ... matched as option 'vcodec' (force video codec
('copy' to copy stream)) with argument 'copy'.
Reading option '-f' ... matched as option 'f' (force format) with argument
'null'.
Reading option '/dev/null' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option loglevel (set logging level) with argument debug.
Successfully parsed a group of options.
Parsing a group of options: input url rtsp://localhost/in/1.
Successfully parsed a group of options.
Opening an input file: rtsp://localhost/in/1.
[tcp @ 0x55f6a2d938c0] No default whitelist set
[rtsp @ 0x55f6a2d913c0] Updating control URI to rtsp://localhost:554/in/1
[rtsp @ 0x55f6a2d913c0] SDP: v=0
o=- 0 0 IN IP6 ::1
s=No Name
c=IN IP6 ::1
t=0 0
a=tool:libavformat 58.29.100
m=video 0 RTP/AVP 96
b=AS:465
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1; sprop-parameter-
sets=Z0LAHp4hgRhTTUBAQFAAAAMAEAAAAwPI8WLu,aM4GyyA=; profile-level-
id=42C01E
a=control:streamid=0
m=audio 0 RTP/AVP 97
b=AS:83
a=rtpmap:97 MPEG4-GENERIC/48000/1
a=fmtp:97 profile-level-id=1;mode=AAC-
hbr;sizelength=13;indexlength=3;indexdeltalength=3; config=1188
a=control:streamid=1
[rtsp @ 0x55f6a2d913c0] video codec set to: h264
[rtsp @ 0x55f6a2d913c0] RTP Packetization Mode: 1
[rtsp @ 0x55f6a2d913c0] Extradata set to 0x55f6a2d96880 (size: 40)
[rtsp @ 0x55f6a2d913c0] RTP Profile IDC: 42 Profile IOP: c0 Level: 1e
[rtsp @ 0x55f6a2d913c0] audio codec set to: aac
[rtsp @ 0x55f6a2d913c0] audio samplerate set to: 48000
[rtsp @ 0x55f6a2d913c0] audio channels set to: 1
[rtp @ 0x55f6a2d9a1c0] No default whitelist set
[udp @ 0x55f6a2d9ab40] No default whitelist set
[udp @ 0x55f6a2d9ab40] end receive buffer size reported is 131072
[udp @ 0x55f6a2d9a840] No default whitelist set
[udp @ 0x55f6a2d9a840] end receive buffer size reported is 131072
[rtsp @ 0x55f6a2d913c0] setting jitter buffer size to 500
[rtp @ 0x55f6a2dab3c0] No default whitelist set
[udp @ 0x55f6a2dbbf40] No default whitelist set
[udp @ 0x55f6a2dbbf40] bind failed: Address already in use
[rtp @ 0x55f6a2dab140] No default whitelist set
[udp @ 0x55f6a2dbc000] No default whitelist set
[udp @ 0x55f6a2dbc000] end receive buffer size reported is 131072
[udp @ 0x55f6a2dbbcc0] No default whitelist set
[udp @ 0x55f6a2dbbcc0] end receive buffer size reported is 131072
[rtsp @ 0x55f6a2d913c0] setting jitter buffer size to 500
Failed to parse interval end specification ''
[h264 @ 0x55f6a2d96300] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x55f6a2d96300] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x55f6a2d96300] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x55f6a2d96300] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x55f6a2d96300] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x55f6a2d96300] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x55f6a2d96300] Format yuv420p chosen by get_format().
[h264 @ 0x55f6a2d96300] Reinit context to 560x320, pix_fmt: yuv420p
[h264 @ 0x55f6a2d96300] nal_unit_type: 1(Coded slice of a non-IDR
picture), nal_ref_idc: 2
Last message repeated 1 times
[aac @ 0x55f6a2d97940] skip whole frame, skip left: 0
[h264 @ 0x55f6a2d96300] nal_unit_type: 1(Coded slice of a non-IDR
picture), nal_ref_idc: 2
Last message repeated 3 times
[rtsp @ 0x55f6a2d913c0] All info found
Input #0, rtsp, from 'rtsp://localhost/in/1':
Metadata:
title : No Name
Duration: N/A, start: -0.113000, bitrate: N/A
Stream #0:0, 28, 1/90000: Video: h264 (Constrained Baseline), 1
reference frame, yuv420p(tv, bt709, progressive, left), 560x320, 0/1, 30
fps, 30 tbr, 90k tbn, 60 tbc
Stream #0:1, 40, 1/48000: Audio: aac (LC), 48000 Hz, mono, fltp
Successfully opened the file.
Parsing a group of options: output url /dev/null.
Applying option acodec (force audio codec ('copy' to copy stream)) with
argument copy.
Applying option vcodec (force video codec ('copy' to copy stream)) with
argument copy.
Applying option f (force format) with argument null.
Successfully parsed a group of options.
Opening an output file: /dev/null.
Successfully opened the file.
Output #0, null, to '/dev/null':
Metadata:
title : No Name
encoder : Lavf58.29.100
Stream #0:0, 0, 1/90000: Video: h264 (Constrained Baseline), 1
reference frame, yuv420p(tv, bt709, progressive, left), 560x320 (0x0),
0/1, q=2-31, 30 fps, 30 tbr, 90k tbn, 90k tbc
Stream #0:1, 0, 1/48000: Audio: aac (LC), 48000 Hz, mono, fltp
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless
if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:1 i_done:0 finish:0] (this is harmless
if it occurs once at the start per stream)
Last message repeated 1 times
[null @ 0x55f6a2dcb340] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 18000 >= 3000
cur_dts is invalid st:1 (0) [init:1 i_done:0 finish:0] (this is harmless
if it occurs once at the start per stream)
[null @ 0x55f6a2dcb340] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 18000 >= 6000
cur_dts is invalid st:1 (0) [init:1 i_done:0 finish:0] (this is harmless
if it occurs once at the start per stream)
[null @ 0x55f6a2dcb340] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 18000 >= 9000
[null @ 0x55f6a2dcb340] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 18000 >= 12000
[null @ 0x55f6a2dcb340] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 18000 >= 15000
[null @ 0x55f6a2dcb340] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 18000 >= 18000
^Ctaurus /home/jlpoole/work/ffmpeg/ticket_6415 # .23 bitrate=N/A
speed=1.22x
taurus /home/jlpoole/work/ffmpeg/ticket_6415 #
}}}
{{{
taurus /home/jlpoole/work/ffmpeg/ticket_6415 # cat client.sh
# https://trac.ffmpeg.org/ticket/6415
ffmpeg -loglevel debug -rtsp_transport tcp -rtsp_flags listen -i
rtsp://localhost/in/1 -acodec copy -vcodec copy -f null /dev/null
taurus /home/jlpoole/work/ffmpeg/ticket_6415 # cat server.sh
# source from http://techslides.com/demos/samples/sample.mp4
#
ffmpeg -re -i source.mp4 -acodec copy -vcodec copy -f rtsp -muxdelay 0.1
rtsp://localhost/in/1
taurus /home/jlpoole/work/ffmpeg/ticket_6415 # ls -la
total 392
drwxr-xr-x 2 jlpoole jlpoole 4096 Jun 8 06:52 .
drwxr-xr-x 3 jlpoole jlpoole 4096 Jun 8 06:54 ..
-rwxr-xr-x 1 jlpoole jlpoole 170 Jun 8 06:52 client.sh
-rw-r--r-- 1 jlpoole jlpoole 383631 Feb 16 2014 sample.mp4
-rwxr-xr-x 1 jlpoole jlpoole 159 Jun 8 06:50 server.sh
lrwxrwxrwx 1 jlpoole jlpoole 10 Jun 8 06:51 source.mp4 -> sample.mp4
taurus /home/jlpoole/work/ffmpeg/ticket_6415 #
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/6415#comment:6>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list