FFmpeg
FFmpeg — это набор свободных библиотек с открытым исходным кодом, которые позволяют записывать, конвертировать и передавать цифровое аудио и видео в различных форматах. Он включает libavcodec, библиотеку кодирования и декодирования аудио и видео и libavformat, библиотеку мультиплексирования и демультиплексирования в медиаконтейнер. Название происходит от названия экспертной группы MPEG и «FF», означающего «fast forward» [9].
Проект основал Фабрис Беллар (под псевдонимом «Gerard Lantau»), в настоящее время поддерживает Michael Niedermayer. Многие разработчики FFmpeg принимают участие в проекте MPlayer, и FFmpeg располагается на сервере MPlayer.
FFmpeg разработан под ОС на основе GNU/Linux, однако может быть скомпилирован под многие другие операционные системы. Разработчики не выпускают релизов и рекомендуют использовать последнюю версию из Subversion. Распространяется под лицензиями GNU LGPL или GNU GPL.
Компоненты
ffmpeg состоит из следующих компонентов:
- ffmpeg утилита командной строки для конвертирования видео файла из одного формата в другой. С её помощью можно также захватывать видео в реальном времени с TV-карты.
- ffserver — HTTP (RTSP в настоящее время разрабатывается) потоковый сервер для (радио)вещания.
- ffplay простой медиаплеер основанный на SDL и библиотеках FFmpeg.
- libavcodec библиотека, в которой содержатся все аудио/видео кодеки. Большинство кодеков были разработаны «с нуля» для обеспечения наилучшей производительности.
- libavformat библиотека, содержащая мультиплексоры и демультиплексоры для различных аудио- и видеоформатов.
- libavutil вспомогательная библиотека, содержащая стандартные, общие подпрограммы для различных компонентов ffmpeg. Включает в себя: adler32, crc, md5, sha1, lzo декомпрессор, Base64 кодер/энкодер, des шифровальщик/расшифровщик, rc4 шифровальщик/расшифровщик и aes шифровальщик/расшифровщик.
- libpostproc библиотека, содержащая стандартные подпрограммы обработки видео.
- libswscale библиотека предназначенная для масштабирования видео.
- libavfilter является заменой vhook, которая позволяет изменять видеопоток между декодером и энкодером «на лету».
Поддерживаемые кодеки и форматы
Участниками проекта FFmpeg были подвергнуты обратной разработке и/или реализованы следующие:
Кодеки
- ATRAC3[10]
- H.261,[10] H.263[10] и H.264[10]
- Intel Indeo 2 и 3[10]
- QDesign Music Codec 2, используемый в QuickTime до QuickTime 7.
- Sorenson 3 Codec используемый в QuickTime
- Theora (вместе с Vorbis используется в контейнере Ogg)
- Truespeech
- TXD[11]
- VP5[10] и VP6[10]
- Vorbis
- Windows Media Audio
- Некоторые Windows Media Video-кодеки, включая WMV1, WMV2 и WMV3
Форматы
Расширения для работы с FFmpeg
FFMpeg-php
FFMpeg-php — это расширение (модуль) для PHP, который добавляет удобный объектно-ориентированный API для доступа и поиска информации из видео и аудио файлов через FFmpeg.[12]
Полезные команды
- Конвертирование в FLV
ffmpeg -i video.avi -ar 22050 -ab 32 -f flv -s 320x240 video.flv
Сделать скриншот размером 320×240 из 10-ой секунды файла video.avi
ffmpeg -i video.avi -an -ss 00:00:10 -r 1 -vframes 1 -s 320x240 -y -f mjpeg screenshot.jpg
Ссылки
- Домашняя страница FFmpeg
- man-cтраница FFmpeg
- Неофициальные сборки под windows. Также в вики доступны ссылки на сборки других людей.
Примечания
- ↑ http://git.videolan.org/?p=ffmpeg.git;a=commit;h=9aeeeb63f7e1ab7b0b7bb839a5f258667a2d2d78
- ↑ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 FFmpeg Formats Documentation
- ↑ Just Solve the File Format Problem — 2012.
- ↑ https://directory.fsf.org/wiki/Category/Works-with-format/FLAC
- ↑ https://github.com/usnationalarchives/digital-preservation/blob/master/Moving%20Image%20Formats/NARA_PreservationActionPlan_DigitalCinema_20190801.pdf
- ↑ 1 2 https://github.com/usnationalarchives/digital-preservation/blob/master/Digital%20Audio%20Formats/NARA_PreservationActionPlan_DigitalAudio_20190801.pdf
- ↑ https://www.ffmpeg.org/ffmpeg-formats.html
- ↑ FFmpeg License and Legal Considerations
- ↑ FFmpeg naming and logo . Дата обращения: 20 января 2008.
- ↑ 1 2 3 4 5 6 7 Changelog . Дата обращения: 20 января 2008.
- ↑ 1 2 FFmpeg development mailing list (7 мая 2007) . Дата обращения: 20 января 2008.
- ↑ ffmpeg-php.sourceforge.net