Opened 4 years ago
Last modified 4 years ago
#8789 new defect
ffmpeg cannot properly decode some videos using the hardware acceleration framework VideoToolbox on macOS
Reported by: | dddong | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | undetermined |
Version: | unspecified | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
Summary of the bug:
I tried to use ffmpeg to decode the video in h264 encoding format. On the macOS platform, videotoolbox can be used to perform hardware acceleration on video decoding. I turned on this option, but the output of ffmpeg shows that there is a problem with creating Videotoolbox decoder. When hardware acceleration is not used, ffmpeg can correctly decode the video. Quicktime Player can also play the video normally.
How to reproduce:
% ffmpeg -hwaccel videotoolbox -i 0a4f103fc689528483c66c7535760591.mov -f rawvideo -vframes 1 /dev/null ffmpeg version N-98432-gf1feb3b Copyright (c) 2000-2020 the FFmpeg developers built on built with Apple clang version 11.0.3 (clang-1103.0.32.62) configuration: --enable-pthreads --enable-version3 --enable-avresample --cc=clang --host-cflags=-fno-stack-check --enable-ffplay --enable-gnutls --enable-videotoolbox --disable-libjack --disable-indev=jack --disable-x86asm libavutil 56. 55.100 / 56. 55.100 libavcodec 58. 94.100 / 58. 94.100 libavformat 58. 48.100 / 58. 48.100 libavdevice 58. 11.101 / 58. 11.101 libavfilter 7. 86.100 / 7. 86.100 libavresample 4. 0. 0 / 4. 0. 0 libswscale 5. 8.100 / 5. 8.100 libswresample 3. 8.100 / 3. 8.100 Hyper fast Audio and Video encoder
The full output is in the attachment ffmpeg-20200714-171859.log.
Attachments (2)
Change History (3)
by , 4 years ago
Attachment: | 0a4f103fc689528483c66c7535760591.mov added |
---|
by , 4 years ago
Attachment: | ffmpeg-20200714-171859.log added |
---|
comment:1 by , 4 years ago
Note:
See TracTickets
for help on using tickets.
It is not the problem of ffmpeg, but the support of some resolutions of VideoToolboox. VideoToolboox does not support some resolutions.
When calling VTDecompressionSessionCreate, the session cannot be obtained and an error occurs.
VideoToolbox session not available
If you convert your video to a 1080 resolution video, you can't go wrong.
So this is actually a problem with VideoToolboox.