Open simon816 opened 2 years ago
Wow; thanks for the detailed report! This looks like a tricky edge case; we can certainly make our parsing more robust.
One simple option would be to also require the line (after stripping) to start with Stream
. I'm not familiar enough with FFmpeg's output format to be certain that this is always how the output looks, but it would certainly rule out erroneous confusion with the description
field.
Version: 2.1.9
It is possible to fool audioread into determining there are 0 channels in the audio file when it does actually have an audio channel.
This occurs when metadata in the file contains the string "audio:"
Test case:
audioread assumes the first line on stderr containing "audio:" is ffmpeg outputting stream information https://github.com/beetbox/audioread/blob/5afc8a6dcb8ab801d19d67dc77fe8824ad04acb5/audioread/ffdec.py#L231
As seen in the following output, the description containing "audio: broken" occurs before "Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp, 128 kb/s"