FFmpeg: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[отпатрулированная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Ссылки: {{медиаплееры}}
Компоненты: дополнение информации об утилите ffprobe, обновление информации об источнике
Строка 1: Строка 1:
{{Карточка программы
{{Карточка программы
}}
}}
'''FFmpeg''' — набор [[Свободное программное обеспечение|свободных]] библиотек с [[Открытое программное обеспечение|открытым исходным кодом]], которые позволяют записывать, конвертировать и передавать цифровые [[Цифровой звук|аудио]]- и [[видео]]записи в различных форматах. Он включает [[libavcodec]] — библиотеку [[Кодек|кодирования]] и декодирования аудио и видео и libavformat — библиотеку [[Мультиплексирование|мультиплексирования]] и демультиплексирования в [[медиаконтейнер]]. Название происходит от названия экспертной группы MPEG и FF, означающего fast forward<ref>{{cite web|title=FFmpeg naming and logo|url=http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-February/007707.html|accessdate=20 января 2008|deadlink=404|archiveurl=https://web.archive.org/web/20070930015526/http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-February/007707.html|archivedate=2007-09-30|deadurl=yes}}</ref>.
'''FFmpeg''' — набор [[Свободное программное обеспечение|свободных]] библиотек с [[Открытое программное обеспечение|открытым исходным кодом]], которые позволяют записывать, конвертировать и передавать цифровые [[Цифровой звук|аудио]]- и [[видео]]записи в различных форматах. Он включает [[libavcodec]] — библиотеку [[Кодек|кодирования]] и декодирования аудио и видео и libavformat — библиотеку [[Мультиплексирование|мультиплексирования]] и демультиплексирования в [[медиаконтейнер]]. Название происходит от названия экспертной группы MPEG и FF, означающего «fast forward»<ref>{{cite web|url=http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-February/007707.html|title=FFmpeg naming and logo|author=|website=|date=|publisher=|deadlink=yes|accessdate=2019-03-15|archiveurl=https://web.archive.org/web/20070930015526/http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-February/007707.html|archivedate=2007-09-30}}</ref>.


Проект основал [[Беллар, Фабрис|Фабрис Беллар]] (под псевдонимом Жерар Лантау ({{lang-fr|Gerard Lantau}})) и до января 2011 года руководство им осуществлял Михаэль Нидермайер ({{lang-de|Michael Niedermayer}}). Многие разработчики FFmpeg принимали участие в проекте [[MPlayer]], и FFmpeg располагался на сервере MPlayer. 18 января группа разработчиков внезапно отстранила Нидермайера от руководства и, объясняя захват необходимостью борьбы со стагнацией и разногласиями, попыталась взять управление проектом в свои руки. Но в итоге власть все равно осталась в руках Нидермайера, а результатом бурных споров явилось создание отдельной ветви проекта, в которой участвовали недовольные положением вещей разработчики. Позже, из-за продолжающихся разногласий с основной группой, они основали новый проект под названием {{не переведено|есть=:en:Libav|надо=Libav}}.
Проект основал [[Беллар, Фабрис|Фабрис Беллар]] (под псевдонимом Жерар Лантау ({{lang-fr|Gerard Lantau}})) и до января 2011 года руководство им осуществлял Михаэль Нидермайер ({{lang-de|Michael Niedermayer}}). Многие разработчики FFmpeg принимали участие в проекте [[MPlayer]], и FFmpeg располагался на сервере MPlayer. 18 января группа разработчиков внезапно отстранила Нидермайера от руководства и, объясняя захват необходимостью борьбы со стагнацией и разногласиями, попыталась взять управление проектом в свои руки. Но в итоге власть все равно осталась в руках Нидермайера, а результатом бурных споров явилось создание отдельной ветви проекта, в которой участвовали недовольные положением вещей разработчики. Позже, из-за продолжающихся разногласий с основной группой, они основали новый проект под названием {{не переведено|есть=:en:Libav|надо=Libav}}.
Строка 11: Строка 11:


* ''ffmpeg'' — утилита командной строки для конвертирования видеофайла из одного формата в другой. С её помощью можно также захватывать видео в реальном времени с TV-карты.
* ''ffmpeg'' — утилита командной строки для конвертирования видеофайла из одного формата в другой. С её помощью можно также захватывать видео в реальном времени с TV-карты.
*''ffplay'' — простой медиаплеер, основанный на [[Simple DirectMedia Layer|SDL]] и библиотеках FFmpeg.
* ''ffserver'' — [[HTTP]]- ([[RTSP]] в настоящее время разрабатывается) потоковый сервер для видео- или радиовещания.
*''ffprobe'' — консольная утилита, позволяющая собирать и отображать информацию о медиафайлах (как[[MediaInfo]]) и мультимедиа потоках, доступных устройствах, кодеках, форматах, протоколах и др.<ref>{{Cite web|url=http://ffmpeg.org/ffprobe.html|title=ffprobe Documentation|author=|website=FFmpeg|date=|publisher=|lang=en|accessdate=2019-03-15}}</ref>
* ''ffplay'' — простой медиаплеер, основанный на [[Simple DirectMedia Layer|SDL]] и библиотеках FFmpeg.
*''ffserver'' — [[HTTP]]- ([[RTSP]] в настоящее время разрабатывается) потоковый сервер для видео- или радиовещания.
* ''[[libavcodec]]'' — библиотека со всеми аудио/видеокодеками. Большинство кодеков были разработаны «с нуля» для обеспечения наилучшей производительности.
* ''[[libavcodec]]'' — библиотека со всеми аудио/видеокодеками. Большинство кодеков были разработаны «с нуля» для обеспечения наилучшей производительности.
* ''libavformat'' — библиотека с [[Мультиплексор (коммуникации)|мультиплексорами]] и [[демультиплексор]]ами для различных аудио- и видеоформатов.
* ''libavformat'' — библиотека с [[Мультиплексор (коммуникации)|мультиплексорами]] и [[демультиплексор]]ами для различных аудио- и видеоформатов.

Версия от 18:16, 15 марта 2019

FFmpeg
Логотип программы FFmpeg
Скриншот программы FFmpeg
Тип мультимедийный фреймворк
Автор Фабрис Беллар[9]
Разработчик Фабрис Беллар
Написана на Си[10], язык ассемблера[11] и C++[11]
Операционные системы GNU/Linux, macOS, Windows, Android[12] и BSD[вд]
Первый выпуск 20 декабря 2000[1]
Аппаратные платформы X86, ARM, PowerPC, MIPS, DEC Alpha, Blackfin[вд], AVR32 и SPARC
Последняя версия
Репозиторий git.ffmpeg.org/ffmpeg.git
Лицензия LGPLv2.1+[вд][13][14]
Сайт ffmpeg.org (англ.)
Логотип Викисклада Медиафайлы на Викискладе

FFmpeg — набор свободных библиотек с открытым исходным кодом, которые позволяют записывать, конвертировать и передавать цифровые аудио- и видеозаписи в различных форматах. Он включает libavcodec — библиотеку кодирования и декодирования аудио и видео и libavformat — библиотеку мультиплексирования и демультиплексирования в медиаконтейнер. Название происходит от названия экспертной группы MPEG и FF, означающего «fast forward»[15].

Проект основал Фабрис Беллар (под псевдонимом Жерар Лантау (фр. Gerard Lantau)) и до января 2011 года руководство им осуществлял Михаэль Нидермайер (нем. Michael Niedermayer). Многие разработчики FFmpeg принимали участие в проекте MPlayer, и FFmpeg располагался на сервере MPlayer. 18 января группа разработчиков внезапно отстранила Нидермайера от руководства и, объясняя захват необходимостью борьбы со стагнацией и разногласиями, попыталась взять управление проектом в свои руки. Но в итоге власть все равно осталась в руках Нидермайера, а результатом бурных споров явилось создание отдельной ветви проекта, в которой участвовали недовольные положением вещей разработчики. Позже, из-за продолжающихся разногласий с основной группой, они основали новый проект под названием не указано название статьи.

FFmpeg разработан под ОС на основе Linux, однако может быть скомпилирован под многие другие операционные системы. Распространяется под лицензиями GNU LGPL или GNU GPL.

Компоненты

ffmpeg состоит из следующих компонентов:

  • ffmpeg — утилита командной строки для конвертирования видеофайла из одного формата в другой. С её помощью можно также захватывать видео в реальном времени с TV-карты.
  • ffplay — простой медиаплеер, основанный на SDL и библиотеках FFmpeg.
  • ffprobe — консольная утилита, позволяющая собирать и отображать информацию о медиафайлах (какMediaInfo) и мультимедиа потоках, доступных устройствах, кодеках, форматах, протоколах и др.[16]
  • ffserver — HTTP- (RTSP в настоящее время разрабатывается) потоковый сервер для видео- или радиовещания.
  • libavcodec — библиотека со всеми аудио/видеокодеками. Большинство кодеков были разработаны «с нуля» для обеспечения наилучшей производительности.
  • libavformat — библиотека с мультиплексорами и демультиплексорами для различных аудио- и видеоформатов.
  • libavutil — вспомогательная библиотека со стандартными общими подпрограммами для различных компонентов ffmpeg. Включает Adler-32, CRC, MD5, SHA1, LZO-декомпрессор, Base64-кодер/декодер, DES-шифровальщик/расшифровщик, RC4-шифровальщик/расшифровщик и AES-шифровальщик/расшифровщик.
  • libpostproc — библиотека стандартных подпрограмм обработки видео.
  • libswscale — библиотека для масштабирования видео.
  • libavfilter — замена vhook, которая позволяет изменять видеопоток между декодером и кодером «на лету».

Поддерживаемые кодеки и форматы

Участниками проекта FFmpeg были подвергнуты обратной разработке и/или реализованы следующие кодеки и форматы:

Кодеки

Контейнеры

Расширения для работы с FFmpeg

FFMpeg-php — устаревшее расширение (модуль) для PHP, который добавляет удобный объектно-ориентированный API для доступа и поиска информации из видео и аудио файлов через FFmpeg.[19]

Fluent-ffmpeg - Модуль для Node.js.

См. также

Примечания

  1. http://git.videolan.org/?p=ffmpeg.git;a=commit;h=9aeeeb63f7e1ab7b0b7bb839a5f258667a2d2d78
  2. FFmpeg 7.1 "Péter" — 2024.
  3. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 FFmpeg Formats Documentation
  4. Just Solve the File Format Problem — 2012.
  5. https://directory.fsf.org/wiki/Category/Works-with-format/FLAC
  6. https://github.com/usnationalarchives/digital-preservation/blob/master/Moving%20Image%20Formats/NARA_PreservationActionPlan_DigitalCinema_20190801.pdf
  7. 1 2 https://github.com/usnationalarchives/digital-preservation/blob/master/Digital%20Audio%20Formats/NARA_PreservationActionPlan_DigitalAudio_20190801.pdf
  8. https://www.ffmpeg.org/ffmpeg-formats.html
  9. FFmpeg License and Legal Considerations
  10. The ffmpeg Open Source Project on Open Hub: Languages Page — 2006.
  11. 1 2 The ffmpeg Open Source Project on Open Hub: Languages Page
  12. FFmpeg Media Encoder
  13. https://ffmpeg.org/legal.html
  14. The ffmpeg Open Source Project on Open Hub: Licenses Page — 2006.
  15. FFmpeg naming and logo. Дата обращения: 15 марта 2019. Архивировано из оригинала 30 сентября 2007 года.
  16. ffprobe Documentation (англ.). FFmpeg. Дата обращения: 15 марта 2019.
  17. 1 2 3 4 5 6 7 8 Changelog. Дата обращения: 16 августа 2010. Архивировано из оригинала 3 марта 2012 года.
  18. 1 2 FFmpeg development mailing list (7 мая 2007). Дата обращения: 20 января 2008. Архивировано 30 сентября 2007 года.
  19. ffmpeg-php

Ссылки