2015-12-15 2 views
1

У меня есть карта захвата интенсивности BlackMagic pro 4k, которая отлично работает с помощью экспресс-инструмента, я могу видеть живой канал и запись, но после того, как я попробовал разные вещи из того, что я нашел в Интернете, чтобы сделать ffplay/ffmpeg работает, у меня получилось просто черный экран.FFmpeg/FFplay directshow и blackmagic

Я проверил, были ли все версии файлов ffmpeg eanable-decklinnk, я скомпилировал последнюю версию с последней версией api, но все же я получаю черный экран вместо фактического фида.

ffmpeg -list_devices true -f dshow -i dummy 
ffmpeg version N-77245-g7209c94 Copyright (c) 2000-2015 the FFmpeg developers 
    built with gcc 5.2.0 (Rev4, Built by MSYS2 project) 
    configuration: --enable-avisynth --enable-libbluray --enable-libcaca --enable -libass --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame 
--enable-libschroedinger --enable-libsoxr --enable-libtwolame --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libopus --enable-libtesseract -- 
enable-libdcadec --enable-libbs2b --enable-libmfx --enable-libfreetype --enable-fontconfig --enable-libfribidi --enable-opengl --enable-libvpx --enable-libkvaza 
ar --enable-libwebp --enable-decklink --enable-libgme --disable-w32threads --enable-opencl --enable-libzimg --enable-openssl --disable-debug 
    libavutil  55. 10.100/55. 10.100 
    libavcodec  57. 17.100/57. 17.100 
    libavformat 57. 20.100/57. 20.100 
    libavdevice 57. 0.100/57. 0.100 
    libavfilter  6. 21.100/6. 21.100 
    libswscale  4. 0.100/4. 0.100 
    libswresample 2. 0.101/2. 0.101 
[dshow @ 0000000ba36b6480] DirectShow video devices (some may be both video and audio devices) 
[dshow @ 0000000ba36b6480] "Blackmagic WDM Capture" 
[dshow @ 0000000ba36b6480]  Alternative name "@device_pnp_\\?\decklink#avstream#5&2550cef9&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\decklinkcapture1" 
[dshow @ 0000000ba36b6480] "Decklink Video Capture" 
[dshow @ 0000000ba36b6480]  Alternative name "@device_sw_{860BB310-5D01-11D0-BD3B-00A0C911CE86}\{44A8B5C7-13B6-4211-BD40-35B629D9E6DF}" 
[dshow @ 0000000ba36b6480] DirectShow audio devices 
[dshow @ 0000000ba36b6480] "Wej?øcie liniowe (Blackmagic Audio)" 
[dshow @ 0000000ba36b6480]  Alternative name "@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{977E2DB6-B17C-4343-9018-652924C20A8C}" 
[dshow @ 0000000ba36b6480] "Decklink Audio Capture" 
[dshow @ 0000000ba36b6480]  Alternative name "@device_sw_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\{AAA22F7E-5AA0-49D9-8C8D-B52B1AA92EB7}" 
dummy: Immediate exit requested 

Результат выше говорит мне, что FFmpeg можно увидеть карту, и я могу открыть сообщение, я проверил один пост, где он говорит, что вам нужно специфический которая показывает тип входа, в противном случае он никогда не будет работать , и я сделал это, но все равно не повезло.

Запустив приведенную выше командную строку, я вижу только черный экран, но не на самом деле ошибки.

Я запускаю Windows 8.1 64bit.

ffplay -pixel_format uyvy422 -framerate 25 -f dshow -i video="Decklink Video Capture" -format x264 
ffplay version N-77245-g7209c94 Copyright (c) 2003-2015 the FFmpeg developers 
    built with gcc 5.2.0 (Rev4, Built by MSYS2 project) 
    configuration: --enable-avisynth --enable-libbluray --enable-libcaca --enable-libass --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame 
--enable-libschroedinger --enable-libsoxr --enable-libtwolame --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libopus --enable-libtesseract -- 
enable-libdcadec --enable-libbs2b --enable-libmfx --enable-libfreetype --enable-fontconfig --enable-libfribidi --enable-opengl --enable-libvpx --enable-libkvaza 
ar --enable-libwebp --enable-decklink --enable-libgme --disable-w32threads --enable-opencl --enable-libzimg --enable-openssl --disable-debug 
    libavutil  55. 10.100/55. 10.100 
    libavcodec  57. 17.100/57. 17.100 
    libavformat 57. 20.100/57. 20.100 
    libavdevice 57. 0.100/57. 0.100 
    libavfilter  6. 21.100/6. 21.100 
    libswscale  4. 0.100/4. 0.100 
    libswresample 2. 0.101/2. 0.101 
Input #0, dshow, from 'video=Decklink Video Capture': 0B f=0/0 
    Duration: N/A, start: 0.138773, bitrate: N/A 
    Stream #0:0: Video: rawvideo (UYVY/0x59565955), uyvy422, 720x576, 25 tbr, 
10000k tbn, 25 tbc 
    1.51 M-V: -0.000 fd= 0 aq= 0KB vq= 0KB sq= 0B f=0/0 
+0

Я действительно понял, что работает только определенный режим записи. Формат FPS и пикселей должен быть ТОЧНО ОДНОЙ, иначе он никогда не будет работать. Мне пришлось записать еще одну камеру, которая использовала uyvy422 на 59,94 FPS, и добавив нужные настройки, мне удалось записать. У меня были некоторые проблемы с записью необработанного видео, из-за некоторой перегрева, даже если бы я сделал буфер больше, чем мог, поэтому я конвертирую «на лету» в MKV. Я надеюсь, что это помогло кому-то, я смогу опубликовать окончательную строку позже – max246

ответ

0

Необходимо установить драйвер оборудования карты захвата в соответствии с частотой кадров вашего источника. Хотя с более новыми версиями драйверов Desktop Video СЛЕДУЕТ автоматически определять частоту кадров. Я бы не стал им доверять, работая вне проприетарного приложения Media Express от BMD. Обычно запись несжатого видео использует меньшую вычислительную мощность, потому что декодирование не требуется, однако вам потребуется гораздо больше скорости чтения и записи на диске и доступного дискового пространства.

Смежные вопросы