FFmpeg - Multimedia hacking for the masses
FFmpeg - Multimedia hacking for the masses Jai Menon
September 30, 2009
1 / 12
FFmpeg - Multimedia hacking for the masses Outline
Outline 1 Introduction
History Current Status 2 Features
Codec Layer — Libavcodec Container Layer — Libavformat 3 Projects using FFmpeg
Projects using FFmpeg 4 Questions
Questions
2 / 12
FFmpeg - Multimedia hacking for the masses Introduction
Outline 1 Introduction
History Current Status 2 Features
Codec Layer — Libavcodec Container Layer — Libavformat 3 Projects using FFmpeg
Projects using FFmpeg 4 Questions
Questions
3 / 12
FFmpeg - Multimedia hacking for the masses Introduction History
History Started by Fabrice Bellard in 2000.
4 / 12
FFmpeg - Multimedia hacking for the masses Introduction History
History Started by Fabrice Bellard in 2000. Began with the aim of creating fast/efficient open source implementations of popular multimedia formats.
4 / 12
FFmpeg - Multimedia hacking for the masses Introduction History
History Started by Fabrice Bellard in 2000. Began with the aim of creating fast/efficient open source implementations of popular multimedia formats. Licensed under LGPL 2.1 (or later)
4 / 12
FFmpeg - Multimedia hacking for the masses Introduction Current Status
Current Status Primary Maintainer and Guru — Michael Niedermayer.
5 / 12
FFmpeg - Multimedia hacking for the masses Introduction Current Status
Current Status Primary Maintainer and Guru — Michael Niedermayer. Mostly independent of MPlayer, even though most developers work on both projects.
5 / 12
FFmpeg - Multimedia hacking for the masses Features
Outline 1 Introduction
History Current Status 2 Features
Codec Layer — Libavcodec Container Layer — Libavformat 3 Projects using FFmpeg
Projects using FFmpeg 4 Questions
Questions
6 / 12
FFmpeg - Multimedia hacking for the masses Features Codec Layer — Libavcodec
Codec Layer — Libavcodec Supports a multitude of formats
7 / 12
FFmpeg - Multimedia hacking for the masses Features Codec Layer — Libavcodec
Codec Layer — Libavcodec Supports a multitude of formats Mainstream formats - Mpeg 1/2/4 Video, H.264
7 / 12
FFmpeg - Multimedia hacking for the masses Features Codec Layer — Libavcodec
Codec Layer — Libavcodec Supports a multitude of formats Mainstream formats - Mpeg 1/2/4 Video, H.264 Proprietary Formats (through collaborative Reverse Engineering)
7 / 12
FFmpeg - Multimedia hacking for the masses Features Codec Layer — Libavcodec
Codec Layer — Libavcodec Supports a multitude of formats Mainstream formats - Mpeg 1/2/4 Video, H.264 Proprietary Formats (through collaborative Reverse Engineering) RV30/40, WMA, WMV, Apple Lossless, VP3/5/6 and a lot more....
7 / 12
FFmpeg - Multimedia hacking for the masses Features Codec Layer — Libavcodec
Codec Layer — Libavcodec Supports a multitude of formats Mainstream formats - Mpeg 1/2/4 Video, H.264 Proprietary Formats (through collaborative Reverse Engineering) RV30/40, WMA, WMV, Apple Lossless, VP3/5/6 and a lot more....
Misc. codecs like Theora.
7 / 12
FFmpeg - Multimedia hacking for the masses Features Codec Layer — Libavcodec
Codec Layer — Libavcodec Supports a multitude of formats Mainstream formats - Mpeg 1/2/4 Video, H.264 Proprietary Formats (through collaborative Reverse Engineering) RV30/40, WMA, WMV, Apple Lossless, VP3/5/6 and a lot more....
Misc. codecs like Theora. Game Formats
7 / 12
FFmpeg - Multimedia hacking for the masses Features Codec Layer — Libavcodec
Codec Layer — Libavcodec Supports a multitude of formats Mainstream formats - Mpeg 1/2/4 Video, H.264 Proprietary Formats (through collaborative Reverse Engineering) RV30/40, WMA, WMV, Apple Lossless, VP3/5/6 and a lot more....
Misc. codecs like Theora. Game Formats Bink, Smacker and more, again through RE efforts.
7 / 12
FFmpeg - Multimedia hacking for the masses Features Codec Layer — Libavcodec
Codec Layer — Libavcodec Supports a multitude of formats Mainstream formats - Mpeg 1/2/4 Video, H.264 Proprietary Formats (through collaborative Reverse Engineering) RV30/40, WMA, WMV, Apple Lossless, VP3/5/6 and a lot more....
Misc. codecs like Theora. Game Formats Bink, Smacker and more, again through RE efforts.
Highly optimized DSP code for most microarchitectures.
7 / 12
FFmpeg - Multimedia hacking for the masses Features Codec Layer — Libavcodec
Codec Layer — Libavcodec Supports a multitude of formats Mainstream formats - Mpeg 1/2/4 Video, H.264 Proprietary Formats (through collaborative Reverse Engineering) RV30/40, WMA, WMV, Apple Lossless, VP3/5/6 and a lot more....
Misc. codecs like Theora. Game Formats Bink, Smacker and more, again through RE efforts.
Highly optimized DSP code for most microarchitectures. In house codecs — FFV1 and Snow.
7 / 12
FFmpeg - Multimedia hacking for the masses Features Container Layer — Libavformat
Container Layer — Libavformat Aims to support all prominent media containers
8 / 12
FFmpeg - Multimedia hacking for the masses Features Container Layer — Libavformat
Container Layer — Libavformat Aims to support all prominent media containers MPEG PS, TS and variants
8 / 12
FFmpeg - Multimedia hacking for the masses Features Container Layer — Libavformat
Container Layer — Libavformat Aims to support all prominent media containers MPEG PS, TS and variants Matroska
8 / 12
FFmpeg - Multimedia hacking for the masses Features Container Layer — Libavformat
Container Layer — Libavformat Aims to support all prominent media containers MPEG PS, TS and variants Matroska Proprietary Formats like TiVo, RED R3d etc.
8 / 12
FFmpeg - Multimedia hacking for the masses Features Container Layer — Libavformat
Container Layer — Libavformat Aims to support all prominent media containers MPEG PS, TS and variants Matroska Proprietary Formats like TiVo, RED R3d etc. Game Formats
8 / 12
FFmpeg - Multimedia hacking for the masses Features Container Layer — Libavformat
Container Layer — Libavformat Aims to support all prominent media containers MPEG PS, TS and variants Matroska Proprietary Formats like TiVo, RED R3d etc. Game Formats
Also includes a very flexible network streaming and subtitle framework.
8 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg
Outline 1 Introduction
History Current Status 2 Features
Codec Layer — Libavcodec Container Layer — Libavformat 3 Projects using FFmpeg
Projects using FFmpeg 4 Questions
Questions
9 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow
10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code
10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code Became quite popular in the windows world and still is from what we hear ;)
10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code Became quite popular in the windows world and still is from what we hear ;)
Perian
10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code Became quite popular in the windows world and still is from what we hear ;)
Perian Quicktime component which is similar to FFDshow in its intent and allows native playback support for a lot of media not playable out-of-the-box through Qt on MacOS.
10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code Became quite popular in the windows world and still is from what we hear ;)
Perian Quicktime component which is similar to FFDshow in its intent and allows native playback support for a lot of media not playable out-of-the-box through Qt on MacOS.
Most A/V players (both open as well as commercial)
10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code Became quite popular in the windows world and still is from what we hear ;)
Perian Quicktime component which is similar to FFDshow in its intent and allows native playback support for a lot of media not playable out-of-the-box through Qt on MacOS.
Most A/V players (both open as well as commercial) MPlayer :)
10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code Became quite popular in the windows world and still is from what we hear ;)
Perian Quicktime component which is similar to FFDshow in its intent and allows native playback support for a lot of media not playable out-of-the-box through Qt on MacOS.
Most A/V players (both open as well as commercial) MPlayer :) The Videolan project
10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code Became quite popular in the windows world and still is from what we hear ;)
Perian Quicktime component which is similar to FFDshow in its intent and allows native playback support for a lot of media not playable out-of-the-box through Qt on MacOS.
Most A/V players (both open as well as commercial) MPlayer :) The Videolan project MythTV
10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code Became quite popular in the windows world and still is from what we hear ;)
Perian Quicktime component which is similar to FFDshow in its intent and allows native playback support for a lot of media not playable out-of-the-box through Qt on MacOS.
Most A/V players (both open as well as commercial) MPlayer :) The Videolan project MythTV Rockbox
10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code Became quite popular in the windows world and still is from what we hear ;)
Perian Quicktime component which is similar to FFDshow in its intent and allows native playback support for a lot of media not playable out-of-the-box through Qt on MacOS.
Most A/V players (both open as well as commercial) MPlayer :) The Videolan project MythTV Rockbox Xmms2
10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code Became quite popular in the windows world and still is from what we hear ;)
Perian Quicktime component which is similar to FFDshow in its intent and allows native playback support for a lot of media not playable out-of-the-box through Qt on MacOS.
Most A/V players (both open as well as commercial) MPlayer :) The Videolan project MythTV Rockbox Xmms2 insert your favorite player here 10 / 12
FFmpeg - Multimedia hacking for the masses Projects using FFmpeg Projects using FFmpeg
Projects using FFmpeg FFdshow Windows port of (parts) of the FFmpeg code Became quite popular in the windows world and still is from what we hear ;)
Perian Quicktime component which is similar to FFDshow in its intent and allows native playback support for a lot of media not playable out-of-the-box through Qt on MacOS.
Most A/V players (both open as well as commercial) MPlayer :) The Videolan project MythTV Rockbox Xmms2 insert your favorite player here
Youtube 10 / 12
FFmpeg - Multimedia hacking for the masses Questions
Outline 1 Introduction
History Current Status 2 Features
Codec Layer — Libavcodec Container Layer — Libavformat 3 Projects using FFmpeg
Projects using FFmpeg 4 Questions
Questions
11 / 12
FFmpeg - Multimedia hacking for the masses Questions Questions
Questions ?
12 / 12