[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