Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-127014

Some RTSP streams don't work with ffmpeg

    XMLWordPrintable

Details

    • Linux/Wayland, macOS, Windows
    • Multimedia wk 35-38, Multimedia wk 7-8, Multimedia, weeks 9-10, Multimedia, weeks 11-12

    Description

      I haven't figured out what exactly causes it to not work. Some streams work perfectly fine even with same codec. One that does not outputs this with attached example:

      qt.multimedia.ffmpeg.mediadataholder: AVStream duration -9223372036854775808 is invalid. Taking it from the metadata
      qt.multimedia.ffmpeg.metadata:    checking: title live stream 0, streamed by the LIVE555 Media Server
      qt.multimedia.ffmpeg.metadata:        adding QMediaMetaData::Title
      qt.multimedia.ffmpeg.metadata:    checking: comment h264/stream.live0
      qt.multimedia.ffmpeg.metadata:        adding QMediaMetaData::Comment
      qt.multimedia.ffmpeg.playbackengine: Create PlaybackEngine
      qt.multimedia.ffmpeg.playbackengine: Create codec for stream: 0 trackType: VideoStream
      qt.multimedia.ffmpeg.hwaccel: Check device types
      qt.core.library: "libnvcuvid.so" loaded library
      qt.core.library: "libnvcuvid.so" unloaded library 
      qt.multimedia.ffmpeg.hwaccel:     Checking HW context: cuda
      qt.multimedia.ffmpeg.hwaccel:     Using above hw context.
      qt.multimedia.ffmpeg.hwaccel:     Checking HW context: vaapi
      qt.multimedia.ffmpeg.hwaccel:     Using above hw context.
      qt.multimedia.ffmpeg.hwaccel: Device types checked. Spent time: 1267849us
      qt.multimedia.ffmpeg.utils: Skip experimental codec avui
      qt.multimedia.ffmpeg.utils: Skip experimental codec s302m
      qt.multimedia.ffmpeg.utils: Skip experimental codec dca
      qt.multimedia.ffmpeg.utils: Skip experimental codec mlp
      qt.multimedia.ffmpeg.utils: Skip experimental codec opus
      qt.multimedia.ffmpeg.utils: Skip experimental codec sonic
      qt.multimedia.ffmpeg.utils: Skip experimental codec sonicls
      qt.multimedia.ffmpeg.utils: Skip experimental codec truehd
      qt.multimedia.ffmpeg.utils: Skip experimental codec vorbis
      qt.multimedia.ffmpeg.utils: Skip experimental codec sonic
      qt.multimedia.ffmpeg.hwaccel: Found potential codec h264_cuvid for hw accel 2 ; Checking the hw device...
      qt.multimedia.ffmpeg.hwaccel:     Checking HW context: cuda
      qt.multimedia.ffmpeg.hwaccel:     Using above hw context.
      qt.multimedia.ffmpeg.hwaccel: HW device is OK
      qt.multimedia.playbackengine.codec: found decoder h264_cuvid for id 27
      qt.multimedia.ffmpeg.hwaccel: Selected format 117 for hw 2
      [h264_cuvid @ 0x62c904487a80] Invalid pkt_timebase, passing timestamps as-is.
      qt.multimedia.ffmpeg.streamdecoder: Create stream decoder, trackType VideoStream absSeekPos: 0
      qt.multimedia.ffmpeg.demuxer: Create demuxer. pos: 0 loop offset: 0 loop index: 0 loops: 1
      qt.multimedia.ffmpeg.demuxer: Activate demuxing stream 0 , trackType: VideoStream
      qt.multimedia.ffmpeg.hwaccel: Selected format 117 for hw 2
      qt.multimedia.ffmpeg.demuxer: finish demuxing
      qt.multimedia.ffmpeg.playbackengine: Playback engine end of stream
      

      It takes few seconds before it sends "Playback engine end of stream". Same stream plays fine with ffplay (although Qt statically links in some other ffmpeg build)

      Attachments

        1. qtbug127014.zip
          67 kB
          Joni Poikelin
        2. trace.txt
          59 kB
          Joni Poikelin

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              johanseg Jøger Hansegård
              poikelin Joni Poikelin
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes