[FFmpeg-trac] #10802(undetermined:new): misleading error message in dv muxer?
FFmpeg
trac at avcodec.org
Mon Jan 15 11:01:43 EET 2024
#10802: misleading error message in dv muxer?
-------------------------------------+-------------------------------------
Reporter: Andrew-R | Type: defect
Status: new | Priority: minor
Component: | Version: git-
undetermined | master
Keywords: dvvideo | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Summary of the bug:
How to reproduce:
download dv-avi-test.avi from http://samples.mplayerhq.hu/avi/DV-type2/
I tried to un-wrap it to make raw dv stream for testing
{{{
/dev/shm/ffmpeg/ffmpeg -i dv-avi-test.avi -c:v copy -an dv-test.dv
ffmpeg version N-112149-ga87a52ed0b Copyright (c) 2000-2024 the FFmpeg
developers
built with gcc 11.2.0 (GCC)
configuration:
libavutil 58. 36.101 / 58. 36.101
libavcodec 60. 37.100 / 60. 37.100
libavformat 60. 20.100 / 60. 20.100
libavdevice 60. 4.100 / 60. 4.100
libavfilter 9. 17.100 / 9. 17.100
libswscale 7. 6.100 / 7. 6.100
libswresample 4. 13.100 / 4. 13.100
[avi @ 0xb2c3700] Switching to NI mode, due to poor interleaving
Input #0, avi, from 'dv-avi-test.avi':
Duration: 00:04:53.09, start: 0.000000, bitrate: 286 kb/s
Stream #0:0: Video: dvvideo, yuv411p, 720x480 [SAR 32:27 DAR 16:9],
28771 kb/s, 60k fps, 29.97 tbr, 60k tbn
Stream #0:1: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Output #0, dv, to 'dv-test.dv':
Metadata:
encoder : Lavf60.20.100
Stream #0:0: Video: dvvideo, yuv411p, 720x480 [SAR 32:27 DAR 16:9],
q=2-31, 28771 kb/s, 60k fps, 29.97 tbr, 29.97 tbn
Press [q] to stop, [?] for help
[dv @ 0xb368a00] Unexpected frame size, 0 != 120000
[vost#0:0/copy @ 0xb3693c0] Error submitting a packet to the muxer:
Function not implemented
Last message repeated 1 times
[out#0/dv @ 0xb2c6a40] Error muxing a packet
[out#0/dv @ 0xb2c6a40] Task finished with error code: -38 (Function not
implemented)
[out#0/dv @ 0xb2c6a40] Terminating thread with return code -38 (Function
not implemented)
[out#0/dv @ 0xb2c6a40] video:10078kB audio:0kB subtitle:0kB other
streams:0kB global headers:0kB muxing overhead: 0.000000%
size= 10078kB time=00:00:02.90 bitrate=28440.5kbits/s speed= 190x
Conversion failed!
}}}
yet in fact (?) conversion worked, I see file
{{{
/dev/shm/ffmpeg/ffprobe dv-test.dv
ffprobe version N-112149-ga87a52ed0b Copyright (c) 2007-2024 the FFmpeg
developers
built with gcc 11.2.0 (GCC)
configuration:
libavutil 58. 36.101 / 58. 36.101
libavcodec 60. 37.100 / 60. 37.100
libavformat 60. 20.100 / 60. 20.100
libavdevice 60. 4.100 / 60. 4.100
libavfilter 9. 17.100 / 9. 17.100
libswscale 7. 6.100 / 7. 6.100
libswresample 4. 13.100 / 4. 13.100
[dv @ 0xc1f4bc0] Estimating duration from bitrate, this may be inaccurate
Input #0, dv, from 'dv-test.dv':
Metadata:
timecode : 00:00:00:00
Duration: 00:00:02.87, start: 0.000000, bitrate: 28771 kb/s
Stream #0:0: Video: dvvideo, yuv411p, 720x480 [SAR 32:27 DAR 16:9],
28771 kb/s, 60k fps, 29.97 tbr, 60k tbn
Stream #0:1: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
}}}
If I try to make it encode audio, I get:
{{{
/dev/shm/ffmpeg/ffmpeg -i dv-avi-test.avi -c:v copy -c:a pcm_s16be -af
aresample=48000 dv-test.dv
ffmpeg version N-112149-ga87a52ed0b Copyright (c) 2000-2024 the FFmpeg
developers
built with gcc 11.2.0 (GCC)
configuration:
libavutil 58. 36.101 / 58. 36.101
libavcodec 60. 37.100 / 60. 37.100
libavformat 60. 20.100 / 60. 20.100
libavdevice 60. 4.100 / 60. 4.100
libavfilter 9. 17.100 / 9. 17.100
libswscale 7. 6.100 / 7. 6.100
libswresample 4. 13.100 / 4. 13.100
[avi @ 0xb48b700] Switching to NI mode, due to poor interleaving
Input #0, avi, from 'dv-avi-test.avi':
Duration: 00:04:53.09, start: 0.000000, bitrate: 286 kb/s
Stream #0:0: Video: dvvideo, yuv411p, 720x480 [SAR 32:27 DAR 16:9],
28771 kb/s, 60k fps, 29.97 tbr, 60k tbn
Stream #0:1: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (pcm_s16le (native) -> pcm_s16be (native))
Press [q] to stop, [?] for help
[dv @ 0xb530ac0] Can't initialize DV format!
Make sure that you supply exactly two streams:
video: 25fps or 29.97fps, audio: 2ch/48|44|32kHz/PCM
(50Mbps allows an optional second audio stream)
[out#0/dv @ 0xb5309c0] Could not write header (incorrect codec parameters
?): Operation not permitted
[af#0:1 @ 0xb532b00] Error sending frames to consumers: Operation not
permitted
[af#0:1 @ 0xb532b00] Task finished with error code: -1 (Operation not
permitted)
[af#0:1 @ 0xb532b00] Terminating thread with return code -1 (Operation not
permitted)
[out#0/dv @ 0xb5309c0] Nothing was written into output file, because at
least one of its streams received no packets.
size= 0kB time=N/A bitrate=N/A speed=N/A
Conversion failed!
}}}
Note that example itself appear to be black frame.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/10802>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list