[FFmpeg-user] example to use VDA hw decoder on mac with ffmpeg?

Shi Yan billconan at gmail.com
Tue Mar 17 18:23:01 CET 2015


this is what happened.

funny that the reason I wanted to try ffmpeg vda is because I want to use
vda in my code with libavcodec. but I had no luck.

The issue I saw was exactly

[10:20:50.169] vtDecompressionDuctCreate signalled err=-8973 (err) (Could
not select and open decoder instance) at
/SourceCache/CoreMedia_frameworks/CoreMedia-1562.107/Sources/VideoToolbox/VTDecompressionSession.c
line 1181

looks like the official ffmpeg executable has the same problem!

 ./ffmpeg -vcodec h264_vda -i ~/Downloads/big_buck_bunny_720p_surround.avi
out.yuv

av_register_hwaccel is called ----------------------------

av_register_hwaccel is called ----------------------------

ffmpeg version 2.6.1 Copyright (c) 2000-2015 the FFmpeg developers

  built with Apple LLVM version 6.0 (clang-600.0.57) (based on LLVM 3.5svn)

  configuration:

  libavutil      54. 20.100 / 54. 20.100

  libavcodec     56. 26.100 / 56. 26.100

  libavformat    56. 25.101 / 56. 25.101

  libavdevice    56.  4.100 / 56.  4.100

  libavfilter     5. 11.102 /  5. 11.102

  libswscale      3.  1.101 /  3.  1.101

  libswresample   1.  1.100 /  1.  1.100

indeed decoding with vda ------------

[10:20:50.169] vtDecompressionDuctCreate signalled err=-8973 (err) (Could
not select and open decoder instance) at
/SourceCache/CoreMedia_frameworks/CoreMedia-1562.107/Sources/VideoToolbox/VTDecompressionSession.c
line 1181

[h264_vda @ 0x7f9feb034600] Failed to init VDA decoder: -12473.

[avi @ 0x7f9feb00da00] Failed to open codec in av_find_stream_info

[NULL @ 0x7f9feb034600] missing picture in access unit with size 9960

indeed decoding with vda ------------

[10:20:50.252] vtDecompressionDuctCreate signalled err=-8973 (err) (Could
not select and open decoder instance) at
/SourceCache/CoreMedia_frameworks/CoreMedia-1562.107/Sources/VideoToolbox/VTDecompressionSession.c
line 1181

[h264_vda @ 0x7f9feb034600] Failed to init VDA decoder: -12473.

[NULL @ 0x7f9feb034600] missing picture in access unit with size 457

    Last message repeated 2 times

[NULL @ 0x7f9feb034600] missing picture in access unit with size 6988

[NULL @ 0x7f9feb034600] missing picture in access unit with size 10005

[NULL @ 0x7f9feb034600] missing picture in access unit with size 6442

[NULL @ 0x7f9feb034600] missing picture in access unit with size 6759

[NULL @ 0x7f9feb034600] missing picture in access unit with size 10104

[NULL @ 0x7f9feb034600] missing picture in access unit with size 10171

[NULL @ 0x7f9feb034600] missing picture in access unit with size 10435

[NULL @ 0x7f9feb034600] missing picture in access unit with size 10631

[NULL @ 0x7f9feb034600] missing picture in access unit with size 10936

[NULL @ 0x7f9feb034600] missing picture in access unit with size 10784

[NULL @ 0x7f9feb034600] missing picture in access unit with size 11712

[NULL @ 0x7f9feb034600] missing picture in access unit with size 12177

[NULL @ 0x7f9feb034600] missing picture in access unit with size 12744

[NULL @ 0x7f9feb034600] missing picture in access unit with size 13353

[NULL @ 0x7f9feb034600] missing picture in access unit with size 13343

[NULL @ 0x7f9feb034600] missing picture in access unit with size 14586

[NULL @ 0x7f9feb034600] missing picture in access unit with size 14462

[NULL @ 0x7f9feb034600] missing picture in access unit with size 15675

[NULL @ 0x7f9feb034600] missing picture in access unit with size 16625

[NULL @ 0x7f9feb034600] missing picture in access unit with size 16925

[NULL @ 0x7f9feb034600] missing picture in access unit with size 18544

[NULL @ 0x7f9feb034600] missing picture in access unit with size 19473

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17641

[NULL @ 0x7f9feb034600] missing picture in access unit with size 19022

[NULL @ 0x7f9feb034600] missing picture in access unit with size 20455

[NULL @ 0x7f9feb034600] missing picture in access unit with size 21389

[NULL @ 0x7f9feb034600] missing picture in access unit with size 21894

[NULL @ 0x7f9feb034600] missing picture in access unit with size 22884

[NULL @ 0x7f9feb034600] missing picture in access unit with size 23357

[NULL @ 0x7f9feb034600] missing picture in access unit with size 23579

[NULL @ 0x7f9feb034600] missing picture in access unit with size 23787

[NULL @ 0x7f9feb034600] missing picture in access unit with size 24310

[NULL @ 0x7f9feb034600] missing picture in access unit with size 25260

[NULL @ 0x7f9feb034600] missing picture in access unit with size 26726

[NULL @ 0x7f9feb034600] missing picture in access unit with size 27478

[NULL @ 0x7f9feb034600] missing picture in access unit with size 29205

[NULL @ 0x7f9feb034600] missing picture in access unit with size 30231

[NULL @ 0x7f9feb034600] missing picture in access unit with size 30668

[NULL @ 0x7f9feb034600] missing picture in access unit with size 31779

[NULL @ 0x7f9feb034600] missing picture in access unit with size 32744

[NULL @ 0x7f9feb034600] missing picture in access unit with size 34419

[NULL @ 0x7f9feb034600] missing picture in access unit with size 34970

[NULL @ 0x7f9feb034600] missing picture in access unit with size 36093

[NULL @ 0x7f9feb034600] missing picture in access unit with size 36690

[NULL @ 0x7f9feb034600] missing picture in access unit with size 37152

[NULL @ 0x7f9feb034600] missing picture in access unit with size 37561

[NULL @ 0x7f9feb034600] missing picture in access unit with size 37614

[NULL @ 0x7f9feb034600] missing picture in access unit with size 11880

[NULL @ 0x7f9feb034600] missing picture in access unit with size 12480

[NULL @ 0x7f9feb034600] missing picture in access unit with size 13123

[NULL @ 0x7f9feb034600] missing picture in access unit with size 14544

[NULL @ 0x7f9feb034600] missing picture in access unit with size 15736

[NULL @ 0x7f9feb034600] missing picture in access unit with size 15836

[NULL @ 0x7f9feb034600] missing picture in access unit with size 16167

[NULL @ 0x7f9feb034600] missing picture in access unit with size 16713

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17213

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17501

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17328

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17504

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17706

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17633

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17282

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17615

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17138

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17060

[NULL @ 0x7f9feb034600] missing picture in access unit with size 16922

[NULL @ 0x7f9feb034600] missing picture in access unit with size 17624

[NULL @ 0x7f9feb034600] missing picture in access unit with size 18740

[NULL @ 0x7f9feb034600] missing picture in access unit with size 19501

[NULL @ 0x7f9feb034600] missing picture in access unit with size 20016

[NULL @ 0x7f9feb034600] missing picture in access unit with size 19965

[NULL @ 0x7f9feb034600] missing picture in access unit with size 20123

[NULL @ 0x7f9feb034600] missing picture in access unit with size 19955

[NULL @ 0x7f9feb034600] missing picture in access unit with size 19877

[NULL @ 0x7f9feb034600] missing picture in access unit with size 20049

[NULL @ 0x7f9feb034600] missing picture in access unit with size 20472

[NULL @ 0x7f9feb034600] missing picture in access unit with size 20540

[NULL @ 0x7f9feb034600] missing picture in access unit with size 20589

[NULL @ 0x7f9feb034600] missing picture in access unit with size 20880

[NULL @ 0x7f9feb034600] missing picture in access unit with size 21124

[NULL @ 0x7f9feb034600] missing picture in access unit with size 21912

[NULL @ 0x7f9feb034600] missing picture in access unit with size 21186

[NULL @ 0x7f9feb034600] missing picture in access unit with size 21693

[NULL @ 0x7f9feb034600] missing picture in access unit with size 21697

[NULL @ 0x7f9feb034600] missing picture in access unit with size 22167

[NULL @ 0x7f9feb034600] missing picture in access unit with size 21503

[NULL @ 0x7f9feb034600] missing picture in access unit with size 21802

[NULL @ 0x7f9feb034600] missing picture in access unit with size 22303

[NULL @ 0x7f9feb034600] missing picture in access unit with size 22423

[NULL @ 0x7f9feb034600] missing picture in access unit with size 23016

[NULL @ 0x7f9feb034600] missing picture in access unit with size 23596

[NULL @ 0x7f9feb034600] missing picture in access unit with size 24247

[NULL @ 0x7f9feb034600] missing picture in access unit with size 24890

[NULL @ 0x7f9feb034600] missing picture in access unit with size 25059

[NULL @ 0x7f9feb034600] missing picture in access unit with size 25092

[NULL @ 0x7f9feb034600] missing picture in access unit with size 25210

[NULL @ 0x7f9feb034600] missing picture in access unit with size 25314

[NULL @ 0x7f9feb034600] missing picture in access unit with size 25532

[NULL @ 0x7f9feb034600] missing picture in access unit with size 25733

[NULL @ 0x7f9feb034600] missing picture in access unit with size 25647

[NULL @ 0x7f9feb034600] missing picture in access unit with size 26006

[NULL @ 0x7f9feb034600] missing picture in access unit with size 26297

[NULL @ 0x7f9feb034600] missing picture in access unit with size 26415

[NULL @ 0x7f9feb034600] missing picture in access unit with size 26281

[NULL @ 0x7f9feb034600] missing picture in access unit with size 11681

[NULL @ 0x7f9feb034600] missing picture in access unit with size 32288

[NULL @ 0x7f9feb034600] missing picture in access unit with size 11626

[NULL @ 0x7f9feb034600] missing picture in access unit with size 33383

[NULL @ 0x7f9feb034600] missing picture in access unit with size 28041

[NULL @ 0x7f9feb034600] missing picture in access unit with size 12108

[NULL @ 0x7f9feb034600] missing picture in access unit with size 33667

[NULL @ 0x7f9feb034600] missing picture in access unit with size 28753

[NULL @ 0x7f9feb034600] missing picture in access unit with size 12112

[NULL @ 0x7f9feb034600] missing picture in access unit with size 33916

Input #0, avi, from
'/Users/shiyan/Downloads/big_buck_bunny_720p_surround.avi':

  Metadata:

    encoder         : AVI-Mux GUI 1.17.7, Aug  8 2006  20:59:17

    JUNK            :

  Duration: 00:09:56.46, start: 0.000000, bitrate: 4456 kb/s

    Stream #0:0: Video: h264 (FMP4 / 0x34504D46), none, 1280x720, 4001
kb/s, 24 fps, 24 tbr, 24 tbn, 24 tbc

    Stream #0:1: Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, 5.1(side),
fltp, 448 kb/s

    Metadata:

      title           : BBB-Master

File 'out.yuv' already exists. Overwrite ? [y/N]

On Tue, Mar 17, 2015 at 1:39 AM, Carl Eugen Hoyos <cehoyos at ag.or.at> wrote:

> Shi Yan <billconan <at> gmail.com> writes:
>
> > ./ffmpeg -hwaccel vda -i ~/Downloads/big_buck_bunny_720p_surround.avi
> > -c:v rawvideo -pix_fmt yuv420p out.yuv
>
> Please try:
> $ ./ffmpeg -vcodec h264_vda -i bbb.avi out.yuv
> and please report back, it does not work here
> and I don't know why...
>
> Carl Eugen
>
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>


More information about the ffmpeg-user mailing list