Opened 3 years ago

Last modified 3 years ago

#9241 new defect

probing incomplete with flvs containing subtitles and data

Reported by: j0sh Owned by:
Priority: normal Component: avformat
Version: git-master Keywords: flv regression
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:

If a FLV is detected as having a subtitle stream AND data stream, probing prematurely stops on the 3rd stream without waiting for additional streams. This usually means detecting audio, but missing video.

This can often happen when encoders introduce leading audio before video, or if pulling from a RTMP server that sends audio immediately but withholds video until the next keyframe (we don't necessarily want to trust metadata here).

For example, the attached representative file flv-probe-missing-streams.flv has some extraneous metadata along with an audio and video track. But only the audio is detected.

How to reproduce:

% ffprobe flv-probe-missing-streams.flv
...
Input #0, flv, from 'flv-probe-missing-streams.flv':
  Duration: 00:00:09.98, start: 0.000000, bitrate: 273 kb/s
    Stream #0:0: Data: none
    Stream #0:1: Subtitle: text
    Stream #0:2: Audio: aac (LC), 44100 Hz, mono, fltp

Here is a patch fixing this: https://patchwork.ffmpeg.org/project/ffmpeg/patch/1620949077-2936-1-git-send-email-joshua.allmann@gmail.com/

ffprobe output after the patch:

% ffprobe flv-probe-missing-streams.flv
...
Input #0, flv, from 'flv-probe-missing-streams.flv':
  Duration: 00:00:09.98, start: 0.000000, bitrate: 273 kb/s
    Stream #0:0: Data: none
    Stream #0:1: Subtitle: text
    Stream #0:2: Audio: aac (LC), 44100 Hz, mono, fltp
    Stream #0:3: Video: h264 (High), yuv420p(tv, progressive), 320x240 [SAR 1:1 DAR 4:3], 25 fps, 25 tbr, 1k tbn

Attachments (1)

flv-probe-missing-streams.flv (333.0 KB ) - added by j0sh 3 years ago.
Sample of a FLV where ffprobe does not detect video

Download all attachments as: .zip

Change History (2)

by j0sh, 3 years ago

Sample of a FLV where ffprobe does not detect video

comment:1 by Carl Eugen Hoyos, 3 years ago

Component: undeterminedavformat
Keywords: flv regression added
Version: unspecifiedgit-master

For future tickets: Please do not use ffprobe to report any issues if they are reproducible with ffmpeg and please always provide a command line together with the complete, uncut console output to make your tickets valid.

Does any Adobe software play the attached file?

Note: See TracTickets for help on using tickets.