Я скомпилировал ffmpeg с libx264, используя параметры конфигурации, заданные в 1 .
В результате в ffmpeg доступны следующие кодеки:
$ ffmpeg -codecs | grep "264\|flv"
ffmpeg version 0.10 Copyright (c) 2000-2012 the FFmpeg developers
built on Feb 10 2012 13:54:15 with gcc 4.6.1
configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab
libavutil 51. 34.101 / 51. 34.101
libavcodec 53. 60.100 / 53. 60.100
libavformat 53. 31.100 / 53. 31.100
libavdevice 53. 4.100 / 53. 4.100
libavfilter 2. 60.100 / 2. 60.100
libswscale 2. 1.100 / 2. 1.100
libswresample 0. 6.100 / 0. 6.100
libpostproc 52. 0.100 / 52. 0.100
DEVSD flv Flash Video (FLV) / Sorenson Spark / Sorenson H.263
D V D h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
D V D h264_vdpau H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (VDPAU acceleration)
EV libx264 libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
EV libx264rgb libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 RGB
После этого я скомпилировал opencv. Вот частичный результат cmake:
-- Video I/O:
-- DC1394 1.x: NO
-- DC1394 2.x: NO
-- FFMPEG: YES
-- codec: YES
-- format: YES
-- util: YES
-- swscale: YES
-- gentoo-style: YES
-- GStreamer: YES
-- UniCap: NO
-- PvAPI: NO
-- V4L/V4L2: /1
-- Xine: NO
Теперь, используя VideoWriter от opencv, я попытался кодировать в flv следующие коды FOURCC:
FLV1, X264
В то время как FLV1 приводит к тому, что видеофайл не воспроизводится на флеш-плеере, но воспроизводится на vlc; X264 не дает никаких результатов.
Вот вывод консоли для X264, в результате чего файл 0 байт.
Вывод # 0, flv, в 'd.flv':
Поток # 0.0: видео: [0] [0] [0] [0] / 0x0000 , yuv420p, 320x240, q = 2-31, 4915 кбит / с, 90 тыс. Тбит, 24 тбк
Вы видите что-то неладное или неправильное?
спасибо,