[FFmpeg-trac] #8005(avformat:reopened): Assertion fails when reading rtp mpegts streaming using SDP file

FFmpeg trac at avcodec.org
Fri Jan 24 14:13:05 EET 2020


#8005: Assertion fails when reading rtp mpegts streaming using SDP file
-------------------------------------+-------------------------------------
             Reporter:  maf          |                    Owner:
                 Type:  defect       |                   Status:  reopened
             Priority:  important    |                Component:  avformat
              Version:  git-master   |               Resolution:
             Keywords:  sdp mpegts   |               Blocked By:
  crash abort                        |
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Changes (by maf):

 * status:  closed => reopened
 * resolution:  needs_more_info =>


Comment:

 Reproduced with latest version e931119...

 {{{

 ffplay rtp_test.sdp -protocol_whitelist "file,rtp,udp"

 ffplay version git-2020-01-24-e931119 Copyright (c) 2003-2020 the FFmpeg
 developers
   built with gcc 9.2.1 (GCC) 20200122
   configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-
 fontconfi
 g --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d
 --enable-libb
 luray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb
 --enab
 le-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-
 libshine --e
 nable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame
 --enable
 -libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-
 libx265 -
 -enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp
 --enab
 le-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-
 libmysofa --en
 able-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-
 ffnvcode
 c --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-
 dxva2 -
 -enable-avisynth --enable-libopenmpt --enable-amf
   libavutil      56. 38.100 / 56. 38.100
   libavcodec     58. 66.100 / 58. 66.100
   libavformat    58. 35.104 / 58. 35.104
   libavdevice    58.  9.103 / 58.  9.103
   libavfilter     7. 71.100 /  7. 71.100
   libswscale      5.  6.100 /  5.  6.100
   libswresample   3.  6.100 /  3.  6.100
   libpostproc    55.  6.100 / 55.  6.100
 [udp @ 00000000005cc140] 'circular_buffer_size' option was set but it is
 not supported on this build (pthread support is required)
 [udp @ 00000000005cc240] 'circular_buffer_size' option was set but it is
 not supported on this build (pthread support is required)
 [udp @ 00000000005cc340] 'circular_buffer_size' option was set but it is
 not supported on this build (pthread support is required)
 [udp @ 00000000005cc400] 'circular_buffer_size' option was set but it is
 not supported on this build (pthread support is required)
 Assertion pos >= 188 failed at src/libavformat/mpegts.c:2721f=0/0

 This application has requested the Runtime to terminate it in an unusual
 way.
 Please contact the application's support team for more information.
     nan    :  0.000 fd=   0 aq=    0KB vq=    0KB sq=    0B f=0/0
 }}}


 The SDP file might look like this.
 {{{
 v=0
 c=IN IP4 192.168.1.150
 m=video 20000 RTP/AVP 33
 a=rtpmap:33 MP2T/90000
 a=control:mpegts-transport

 }}}


 See the original post. Function handle_packet() in avformat/mpegts.c is
 calling avio_tell() on ts->stream->pb. But that is not the TS stream! That
 is the SDP file. The stream is not available to handle_packet at all as it
 is called from avpriv_mpegts_parse_packet where the packet comes as an
 argument.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/8005#comment:4>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list