[FFmpeg-trac] #7289(ffmpeg:new): Errors [mpegts Continuity check failed for pid ...]

FFmpeg trac at avcodec.org
Fri Jun 29 15:01:30 EEST 2018


#7289: Errors  [mpegts Continuity check failed for pid  ...]
-------------------------------------+-------------------------------------
             Reporter:  jidckii      |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:  ffmpeg       |                  Version:  git-
             Keywords:  mpegts       |  master
  errors stream                      |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 Hello.
 What do the errors mean:
 {{{ mpegts @ 0xf0e3c0] Continuity check failed for pid 17 expected 13 got
 15 }}}


 I'm trying to create a stream relay.
 And so, I capture the stream over RTSP with my ip-cam and redirect its
 multicast address inside the linux bridge.

 For the live action stream the following:
 Capture with ip camera (first process) :
 {{{
 ffmpeg -v 48 -nostats -analyzeduration 20000000 -fflags igndts -fflags
 genpts -fflags latm
               -max_delay 500000 -reorder_queue_size 10000 -rtsp_transport
 udp
               -r 15 -i rtsp://admin:@192.168.86.169:554/0?.sdp
               -map 0 -r 15 -c:v copy -an -f rtp_mpegts
               -max_interleave_delta 0 -fflags +discardcorrupt
               rtp://239.0.0.1:1234?ttl=1?pkt_size=1316
 }}}

 {{{
 ffmpeg version N-90807-g00099ef Copyright (c) 2000-2018 the FFmpeg
 developers
   built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.9) 20160609
   configuration: --disable-debug --disable-doc --disable-ffplay --enable-
 shared --enable-avresample --enable-libopencore-amrnb --enable-
 libopencore-amrwb --enable-gpl --enable-libass --enable-libfreetype
 --enable-libvidstab --enable-libmp3lame --enable-libopenjpeg --enable-
 libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-
 libx265 --enable-libxvid --enable-libx264 --enable-nonfree --enable-
 openssl --enable-libfdk_aac --enable-libkvazaar --enable-libaom --extra-
 libs=-lpthread --enable-postproc --enable-small --enable-version3 --extra-
 cflags=-I/opt/ffmpeg/include --extra-ldflags=-L/opt/ffmpeg/lib --extra-
 libs=-ldl --prefix=/opt/ffmpeg
   libavutil      56. 15.100 / 56. 15.100
   libavcodec     58. 19.100 / 58. 19.100
   libavformat    58. 13.100 / 58. 13.100
   libavdevice    58.  4.100 / 58.  4.100
   libavfilter     7. 19.100 /  7. 19.100
   libavresample   4.  0.  0 /  4.  0.  0
   libswscale      5.  2.100 /  5.  2.100
   libswresample   3.  2.100 /  3.  2.100
   libpostproc    55.  2.100 / 55.  2.100
 Splitting the commandline.
 Reading option '-v' ... matched as option 'v' (set logging level) with
 argument '48'.
 Reading option '-nostats' ... matched as option 'stats' (print progress
 report during encoding) with argument 0.
 Reading option '-analyzeduration' ... matched as AVOption
 'analyzeduration' with argument '20000000'.
 Reading option '-fflags' ... matched as AVOption 'fflags' with argument
 'igndts'.
 Reading option '-fflags' ... matched as AVOption 'fflags' with argument
 'genpts'.
 Reading option '-fflags' ... matched as AVOption 'fflags' with argument
 'latm'.
 Reading option '-max_delay' ... matched as AVOption 'max_delay' with
 argument '500000'.
 Reading option '-reorder_queue_size' ... matched as AVOption
 'reorder_queue_size' with argument '10000'.
 Reading option '-rtsp_transport' ... matched as AVOption 'rtsp_transport'
 with argument 'udp'.
 Reading option '-r' ... matched as option 'r' (set frame rate (Hz value,
 fraction or abbreviation)) with argument '15'.
 Reading option '-i' ... matched as input url with argument
 'rtsp://admin:@192.168.86.169:554/0?.sdp'.
 Reading option '-map' ... matched as option 'map' (set input stream
 mapping) with argument '0'.
 Reading option '-r' ... matched as option 'r' (set frame rate (Hz value,
 fraction or abbreviation)) with argument '15'.
 Reading option '-c:v' ... matched as option 'c' (codec name) with argument
 'copy'.
 Reading option '-an' ... matched as option 'an' (disable audio) with
 argument '1'.
 Reading option '-f' ... matched as option 'f' (force format) with argument
 'rtp_mpegts'.
 Reading option '-max_interleave_delta' ... matched as AVOption
 'max_interleave_delta' with argument '0'.
 Reading option '-fflags' ... matched as AVOption 'fflags' with argument
 '+discardcorrupt'.
 Reading option 'rtp://239.0.0.1:1234?ttl=1?pkt_size=1316' ... matched as
 output url.
 Finished splitting the commandline.
 Parsing a group of options: global .
 Applying option v (set logging level) with argument 48.
 Applying option nostats (print progress report during encoding) with
 argument 0.
 Successfully parsed a group of options.
 Parsing a group of options: input url
 rtsp://admin:@192.168.86.169:554/0?.sdp.
 Applying option r (set frame rate (Hz value, fraction or abbreviation))
 with argument 15.
 Successfully parsed a group of options.
 Opening an input file: rtsp://admin:@192.168.86.169:554/0?.sdp.
 [tcp @ 0x129d980] No default whitelist set
 [rtsp @ 0x129d200] SDP:
 v=0
 o=- 38990265062388 38990265062388 IN IP4 192.168.86.169
 s=RTSP Session
 c=IN IP4 192.168.86.169
 t=0 0
 a=control:*
 a=range:npt=0-
 m=video 0 RTP/AVP 96
 a=rtpmap:96 H264/90000
 a=range:npt=0-
 a=framerate:0S
 a=fmtp:96 profile-level-id=4d002a; packetization-mode=1; sprop-parameter-
 sets=Z00AKp2oHgCJ+WbgICAoAAADAAgAAAMA9CA=,aO48gA==
 a=framerate:25
 a=control:trackID=3
 m=audio 0 RTP/AVP 8
 a=control:trackID=4

 Failed to parse interval end specification ''
 [rtsp @ 0x129d200] video codec set to: h264
 Failed to parse interval end specification ''
 [rtsp @ 0x129d200] RTP Profile IDC: 4d Profile IOP: 0 Level: 2a
 [rtsp @ 0x129d200] RTP Packetization Mode: 1
 [rtsp @ 0x129d200] Extradata set to 0x129ce60 (size: 38)
 [rtp @ 0x129fe40] No default whitelist set
 [udp @ 0x12a2480] No default whitelist set
 [udp @ 0x12a2480] end receive buffer size reported is 131072
 [udp @ 0x129f740] No default whitelist set
 [udp @ 0x129f740] end receive buffer size reported is 131072
 [rtsp @ 0x129d200] setting jitter buffer size to 10000
 [rtp @ 0x12c2940] No default whitelist set
 [udp @ 0x129ff00] No default whitelist set
 [udp @ 0x129ff00] end receive buffer size reported is 131072
 [udp @ 0x129f8c0] No default whitelist set
 [udp @ 0x129f8c0] end receive buffer size reported is 131072
 [rtsp @ 0x129d200] setting jitter buffer size to 10000
 [rtsp @ 0x129d200] hello state=0
 [h264 @ 0x12a0dc0] nal_unit_type: 7, nal_ref_idc: 3
 [h264 @ 0x12a0dc0] nal_unit_type: 8, nal_ref_idc: 3
 [h264 @ 0x12a0dc0] nal_unit_type: 7, nal_ref_idc: 3
 [h264 @ 0x12a0dc0] nal_unit_type: 8, nal_ref_idc: 3
 [h264 @ 0x12a0dc0] unknown SEI type 229
 [h264 @ 0x12a0dc0] nal_unit_type: 7, nal_ref_idc: 3
 [h264 @ 0x12a0dc0] nal_unit_type: 8, nal_ref_idc: 3
 [h264 @ 0x12a0dc0] nal_unit_type: 6, nal_ref_idc: 0
 [h264 @ 0x12a0dc0] nal_unit_type: 5, nal_ref_idc: 3
 [h264 @ 0x12a0dc0] unknown SEI type 229
 [h264 @ 0x12a0dc0] Format yuvj420p chosen by get_format().
 [h264 @ 0x12a0dc0] Reinit context to 1920x1088, pix_fmt: yuvj420p
 [h264 @ 0x12a0dc0] nal_unit_type: 1, nal_ref_idc: 3
     Last message repeated 5 times
 [h264 @ 0x12a0dc0] unknown SEI type 229
 [rtsp @ 0x129d200] All info found
 Guessed Channel Layout for Input Stream #0.1 : mono
 Input #0, rtsp, from 'rtsp://admin:@192.168.86.169:554/0?.sdp':
   Metadata:
     title           : RTSP Session
   Duration: N/A, start: 0.000000, bitrate: N/A
     Stream #0:0, 28, 1/90000: Video: h264, 1 reference frame, yuvj420p(pc,
 bt709, progressive, left), 1920x1080 (1920x1088), 0/1, 15 fps, 15 tbr, 90k
 tbn, 30 tbc
     Stream #0:1, 94, 1/8000: Audio: pcm_alaw, 8000 Hz, mono, s16, 64 kb/s
 Successfully opened the file.
 Parsing a group of options: output url
 rtp://239.0.0.1:1234?ttl=1?pkt_size=1316.
 Applying option map (set input stream mapping) with argument 0.
 Applying option r (set frame rate (Hz value, fraction or abbreviation))
 with argument 15.
 Applying option c:v (codec name) with argument copy.
 Applying option an (disable audio) with argument 1.
 Applying option f (force format) with argument rtp_mpegts.
 Successfully parsed a group of options.
 Opening an output file: rtp://239.0.0.1:1234?ttl=1?pkt_size=1316.
 [rtp @ 0x14343c0] No default whitelist set
 [udp @ 0x14b0140] No default whitelist set
 [udp @ 0x12e3500] No default whitelist set
 Successfully opened the file.
 [mpegts @ 0x1302100] muxrate VBR, pcr every 1 pkts, sdt every 200, pat/pmt
 every 40 pkts
 Output #0, rtp_mpegts, to 'rtp://239.0.0.1:1234?ttl=1?pkt_size=1316':
   Metadata:
     title           : RTSP Session
     encoder         : Lavf58.13.100
     Stream #0:0, 0, 1/90000: Video: h264, 1 reference frame, yuvj420p(pc,
 bt709, progressive, left), 1920x1080 (0x0), 0/1, q=2-31, 15 fps, 15 tbr,
 90k tbn, 15 tbc
 Stream mapping:
   Stream #0:0 -> #0:0 (copy)
 Press [q] to stop, [?] for help
 cur_dts is invalid (this is harmless if it occurs once at the start per
 stream)
     Last message repeated 4 times
 [rtp_mpegts @ 0x12ffdc0] Non-monotonous DTS in output stream 0:0;
 previous: 36000, current: 6000; changing to 36001. This may result in
 incorrect timestamps in the output file.
 [rtp_mpegts @ 0x12ffdc0] Non-monotonous DTS in output stream 0:0;
 previous: 36001, current: 12000; changing to 36002. This may result in
 incorrect timestamps in the output file.
 [rtp_mpegts @ 0x12ffdc0] Non-monotonous DTS in output stream 0:0;
 previous: 36002, current: 18000; changing to 36003. This may result in
 incorrect timestamps in the output file.
 [rtp_mpegts @ 0x12ffdc0] Non-monotonous DTS in output stream 0:0;
 previous: 36003, current: 24000; changing to 36004. This may result in
 incorrect timestamps in the output file.
 [rtp_mpegts @ 0x12ffdc0] Non-monotonous DTS in output stream 0:0;
 previous: 36004, current: 30000; changing to 36005. This may result in
 incorrect timestamps in the output file.
 [rtp_mpegts @ 0x12ffdc0] Non-monotonous DTS in output stream 0:0;
 previous: 36005, current: 36000; changing to 36006. This may result in
 incorrect timestamps in the output file.
 [NULL @ 0x12a0dc0] unknown SEI type 229
     Last message repeated 2451 times
 [rtsp @ 0x129d200] max delay reached. need to consume packet
 [rtsp @ 0x129d200] RTP: missed 2 packets
 [rtsp @ 0x129d200] max delay reached. need to consume packet
 [rtsp @ 0x129d200] RTP: missed 6 packets
 [NULL @ 0x12a0dc0] unknown SEI type 229
     Last message repeated 284 times
 [rtsp @ 0x129d200] max delay reached. need to consume packet
 [rtsp @ 0x129d200] RTP: missed 3 packets
 [NULL @ 0x12a0dc0] unknown SEI type 229
 }}}

 Sometimes RTP packets are being crashed, but this is not the main problem.

 NEXT

 Capture from first the stream and redirect to hls (second process):

 {{{
 ffmpeg -v 48 -nostats -analyzeduration 10000000 -fflags igndts -max_delay
 0
               -i cache:rtp://239.0.0.1:1234
               -map 0 -r 15 -c:v copy -an
               -f hls -max_delay 10000000 -max_interleave_delta 0 -fflags
 +discardcorrupt
               -hls_time 3 -hls_list_size 15 -hls_flags delete_segments
 -use_localtime 1
               -hls_segment_filename "%Y%m%d_%H%M%S-%s.ts"
               cam01.m3u8

 }}}

 and here constantly appear errors

 {{{
 [mpegts @ 0xf0e3c0] Continuity check failed for pid 17 expected 6 got 8
 [mpegts @ 0xf0e3c0] Continuity check failed for pid 256 expected 10 got 8
 [mpegts @ 0xf0e3c0] Continuity check failed for pid 0 expected 10 got 5
 [mpegts @ 0xf0e3c0] Continuity check failed for pid 4096 expected 10 got 5
 [mpegts @ 0xf0e3c0] Continuity check failed for pid 17 expected 7 got 10
 [mpegts @ 0xf0e3c0] Continuity check failed for pid 256 expected 7 got 4
 [mpegts @ 0xf0e3c0] Continuity check failed for pid 0 expected 11 got 6
 [mpegts @ 0xf0e3c0] Continuity check failed for pid 4096 expected 11 got 6
 [mpegts @ 0xf0e3c0] Continuity check failed for pid 17 expected 13 got 15

 }}}

 full outpu in file cam01_hls.txt

--
Ticket URL: <https://trac.ffmpeg.org/ticket/7289>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list