FFmpeg

FFmpeg on kokoelma vapaita ohjelmistoja, jotka voivat tallentaa, kääntää ja suoralähettää digitaalista ääntä ja videota. Se sisältää libavcodecin, johtavan AV-koodekkikirjaston. FFmpeg:tä kehitetään Linuxissa, mutta se voidaan kääntää monille muille käyttöjärjestelmille, esimerkiksi Windowsille. Projektin aloitti Gerard Lantau (Fabrice Bellardin nimimerkki) ja nyt sitä ylläpitää Michael Niedermayer. Suurin osa FFmpeg:n kehittäjistä on myös mukana MPlayer-projektissa ja FFmpeg:n kotisivut ovat MPlayerin palvelimella.

Projektin rakenne
FFmpeg koostuu monesta komponentista:
 ffmpeg on komentorivityökalu videotiedoston kääntämiseen muodosta toiseen. Se tukee myös reaaliaikaista videon sieppausta ja enkoodaamista TV-kortista.
 ffserver on HTTP-multimediapalvelin (RTSP:tä kehitetään) suoriin lähetyksiin (streaming). Suoran lähetyksen ajansiirto on myös tuettuna.
 ffplay on yksinkertainen mediasoitin, joka perustuu SDL:ään ja FFmpeg-kirjastoihin.
 libavcodec on kirjasto, joka sisältää kaikki FFmpeg:n audio/video-enkooderit ja -dekooderit. Suurin osa on kehitetty tyhjästä parhaan suorituskyvyn ja koodin uudelleenkäytettävyyden vuoksi.
 libavformat on eri säiliömuodoille demultipleksaajat ja multipleksaajat sisältävä kirjasto.
 libavutil on apukirjasto FFmpeg:n eri osien yhteisiä rutiineja varten.
 libpostproc on videon jälkikäsittelyrutiinit sisältävä kirjasto.
 libswscale on kirjasto, joka sisältää videonskaalausrutiinit.

Julkaisut
FFmpeg:tä julkaistaan LGPL:än tai GNU GPL:än alla, riippuen siitä mitä alikirjastoja sisällytetään. Muodollisia julkaisuja ei ole. Sen sijaan, FFmpeg:n kehittäjät suosittelevat käyttämään viimeisimpiä Subversion-tilannevedoksia (snapshot), sillä projekti ylläpitää jatkuvasti vakaata kehitysrunkoa.

Laillinen status

FFmpeg:n kehittäjät ovat takaisinmallintaneet ja uudelleentoteuttaneet mm. seuraavat patentoidut koodekit:
 Sorenson 3-koodekki (käytetään monissa QuickTime-videoissa)
 Advanced Systems Format
 Windows Media Audio
 Windows Media Video
 QDesign Music Codec 2 (QuickTime 7:ää vanhemmissa QuickTime-videoissa käytetty)

FFmpegin tekijöiden mukaan ei ole selkeää sisältääkö se patentoituja algoritmeja muun muassa johtuen standardien käyttämistä sanamuodoista. Lisäksi lait vaihtelevat eri maissa ja monet maat eivät tunnusta patentteja ohjelmistoalgoritmeille.

Ohjelmistopatentit ovat maakohtaisia, joten patentit ovat voimassa vain siellä, missä keksijä on sitä hakenut ja se on myönnetty. Jotkin Euroopan unionin maat, kuten Suomi, myöntävät patentteja myös ohjelmistoille ja koodekeille, vaikka ohjelmistopatentit eivät ole vielä voimassa Euroopassa.

Moni näiden koodekkien valmistajista on julkaissut tuotteensa sellaisten ehtojen alla, jotka kieltävät takaisinmallinnuksen, myös yhteensopivuustarkoituksessa. Nämä käyttöehdot eivät ole lainvoimaisia kaikissa maissa.

Näistä syistä moni jakelu ei sisällä FFmpeg:tä välttyäkseen lakiongelmilta. Suomessa FFmpegin käyttö lienee täysin laillista, koska ohjelmistopatentit eivät ole lainvoimaisia Suomessa.

Katso myös
Luettelo mediasoittimista

Lähteet

Aiheesta muualla
 FFmpeg:n kotisivut
 World Domination 201 - Artikkeli FFmpeg:n ja muiden puuttumisesta Linux-jakeluista tiettyjen maiden lakien vuoksi.

Multimediaohjelmistot