Linux: Az FFmpeg telepítés nélküli használata Debian-alapú rendszereken

Szeretettel köszöntelek a Linux klub közösségi oldalán!

Csatlakozz te is közösségünkhöz és máris hozzáférhetsz és hozzászólhatsz a tartalmakhoz, beszélgethetsz a többiekkel, feltölthetsz, fórumozhatsz, hírt küldhetsz be, stb.

Ezt találod a közösségünkben:

  • Tagok - 319 fő
  • Képek - 129 db
  • Videók - 66 db
  • Blogbejegyzések - 302 db
  • Fórumtémák - 31 db
  • Linkek - 253 db

Üdvözlettel,
M Imre
Linux klub vezetője

Amennyiben már tag vagy a Networkön, lépj be itt:

Szeretettel köszöntelek a Linux klub közösségi oldalán!

Csatlakozz te is közösségünkhöz és máris hozzáférhetsz és hozzászólhatsz a tartalmakhoz, beszélgethetsz a többiekkel, feltölthetsz, fórumozhatsz, hírt küldhetsz be, stb.

Ezt találod a közösségünkben:

  • Tagok - 319 fő
  • Képek - 129 db
  • Videók - 66 db
  • Blogbejegyzések - 302 db
  • Fórumtémák - 31 db
  • Linkek - 253 db

Üdvözlettel,
M Imre
Linux klub vezetője

Amennyiben már tag vagy a Networkön, lépj be itt:

Szeretettel köszöntelek a Linux klub közösségi oldalán!

Csatlakozz te is közösségünkhöz és máris hozzáférhetsz és hozzászólhatsz a tartalmakhoz, beszélgethetsz a többiekkel, feltölthetsz, fórumozhatsz, hírt küldhetsz be, stb.

Ezt találod a közösségünkben:

  • Tagok - 319 fő
  • Képek - 129 db
  • Videók - 66 db
  • Blogbejegyzések - 302 db
  • Fórumtémák - 31 db
  • Linkek - 253 db

Üdvözlettel,
M Imre
Linux klub vezetője

Amennyiben már tag vagy a Networkön, lépj be itt:

Szeretettel köszöntelek a Linux klub közösségi oldalán!

Csatlakozz te is közösségünkhöz és máris hozzáférhetsz és hozzászólhatsz a tartalmakhoz, beszélgethetsz a többiekkel, feltölthetsz, fórumozhatsz, hírt küldhetsz be, stb.

Ezt találod a közösségünkben:

  • Tagok - 319 fő
  • Képek - 129 db
  • Videók - 66 db
  • Blogbejegyzések - 302 db
  • Fórumtémák - 31 db
  • Linkek - 253 db

Üdvözlettel,
M Imre
Linux klub vezetője

Amennyiben már tag vagy a Networkön, lépj be itt:

Kis türelmet...

Bejelentkezés

 

Add meg az e-mail címed, amellyel regisztráltál. Erre a címre megírjuk, hogy hogyan tudsz új jelszót megadni. Ha nem tudod, hogy melyik címedről regisztráltál, írj nekünk: ugyfelszolgalat@network.hu

 

A jelszavadat elküldtük a megadott email címre.

network.hu

Források:

http://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu

http://trac.ffmpeg.org/wiki/CompilationGuide/Generic

http://www.ffmpeg.org/download.html


Kicsit szűkszavúan, a lényegre koncentrálva szeretném bemutatni az FFmpeg használatát, annak telepítése nélkül. Természetesen telepíteni is lehet, ennek a leginkább ajánlott módja a használt rendszered tárolóiban lévő, azaz a külső forrás nélkül is rendelkezésre álló ffmpeg csomagok telepítése. Ebben az esetben a leírásban forgatott alkalmazásokat is telepítened kell, persze, csak akkor, ha azokat használni kívánod (például a LAME csomag).

 

Jelen esetben a programot és a hozzá kapcsolódó alkalmazásokat nem telepíted, hanem egy hordozható változatot hozol létre belőle.


A csomagforgatás meglehetősen erőforrásigényes és bonyolult folyamat, a számítógéped "teljesítményétől" erősen függ az erre ráfordítandó idő. A bonyolultságot enyhíti, hogy az általam részletezett leírásban  a telepítendő függőségek is benne vannak, így azok keresésével nem kell fáradnod. Ha pontosan követed a leírást, olyan telepítési nehézségbe nem ütközhetsz amit nem tudsz megoldani.


A neten sok leírást találsz a parancsokról, vagy használhatod a kézikönyvet is:


man ffmpeg


Parancsok tekintetében egyelőre nem kívánok részletekbe menni, alábbi linkeken (az egyes csomagoknál), valamint az FFmpeg honlapjáról kiindulva bőségesen sok leírást találsz. Előfordulhat, hogy lesz egy második rész, ahol néhány fontos parancssort megemlítek a különböző videó- hang- és képformátumokra kitérve.

Megjegyzés: az ffmpeg-hez hasonló alkalmazás a mencoder.


"Az ffmpeg egy nyílt forráskódú videó konvertáló program, mely sok fájlformátumot támogat. Hátránya, hogy futtatása parancssoros környezetben történik. Írásomban emiatt nem annyira a program történetét illetve funkcióinak részletekbe történő bemutatását szeretném megvalósítani, hanem egyfajta kezdeti útmutatót nyújtok azoknak a felhasználóknak, akik eddig még nem próbáltak ki ezt a programot. Ennek a törekvésemnek egy további prózai oka, hogy én sem ismerem a program minden egyes részletét, így a cikkben főleg olyan helyzetek fordulnak elő, amelyekkel én is találkoztam. Ennek ellenére remélem, hogy akad majd valaki, aki számára hasznos lesz ez a kis "szakácskönyv". Kezdőtől kezdőknek..."

Az idézet forrása, ahol a parancsokról is olvashatsz:

http://logout.hu/cikk/az_ffmpeg_videokonvertalo/bevezeto.html



A telepítés folyamata (a portable FFmpeg létrehozása)


Először is telepítsük a függőségeket (dependencies) a csomagforgatási művelethez. (a második egy hosszú parancs, de egyben értendő)


sudo apt-get update


sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev libgpac-dev  libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libx11-dev libxext-dev libxfixes-dev pkg-config texi2html zlib1g-dev


mkdir ~/ffmpeg_sources

mkdir ~/ffmpeg_build

mkdir ~/bin


Utolsót könyvtárat akkor kell létrehozni, ha a saját könyvtáradban bin könyvtár nem létezik. Természetesen több felhasználós rendszeren a másik felhasználó csak akkor tudja használni az FFmpeg-et, ha azt átmásolod neki is. Mindenki csak a saját könyvtárát látja, a tiedbe ő nem tud belépni.


A szervert használóknak ezeket a csomagokat is érdemes telepíteni (ffplay)


sudo apt-get install libsdl1.2-dev libva-dev libvdpau-dev libx11-dev libxext-dev libxfixes-dev


(a libva-dev csomag Ubuntu Lucid Lynx alatt nem egészen tökéletes, illetve hibásan működhet, ne telepítsd hát, ha ezt a disztribúciót használod)


A folyamathoz annyit tettem hozzá, hogy én egyetlen terminal ablakban dolgoztam folyamatosan és megszakítás nélkül. Amikor az eredeti leírásban azt látod, hogy a prompt a kezdő könyvtár, az itt nem úgy van. Folyamatosan lépkedtem, tehát az egyik alkönyvtárból oda, ahonnan a következő lépés (egy-egy csomag telepítésének leírása) indult. Mindezt ezzel a parancsal, mellyel egy könyvtárral feljebb tudsz lépni a könyvtárszerkezetben:


cd ..


A még hiányzó *-dev csomagok telepítesét pedig egy párhuzamosan megnyitott és nyitva hagyott terminal lapon futtattam, ahol először visszaléptem a kezdő prompt-hoz, azaz a saját könyvtárba ezzel a paranccsal:


cd


Ha már telepítve van a csomag, legfeljebb azt a választ kaptam, hogy már telepítve van, de ez nekem megnyugtató, ezen akkor nem hasal el a csomagforgatás ugye.



Akkor kezdjük ...


Yasm (x86 assembler)


Manapság már elég új a csomag a tárolóidban is szerintem:

(csomagverzió feltétel:  ≥ 1.2.0)


sudo apt-get install yasm


Ha valamilyen okból nem a rendszered csomagját használnád (vagy az régebbi, mint ≥ 1.2.0), lehetőséged van letölteni és használni innen (nálam a rendszercsomag is tökéletes):


cd ~/ffmpeg_sources
wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
tar xzvf yasm-1.2.0.tar.gz
cd yasm-1.2.0
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install
make distclean
export "PATH=$PATH:$HOME/bin"


libx264 (H.264 video encoder)

x264 Encoding Guide


cd ..

wget http://download.videolan.org/pub/x264/snapshots/last_x264.tar.bz2
tar xjvf last_x264.tar.bz2cd x264-snapshot*

./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
make
make install
make distclean


Ha használni kívánod (miért ne, ez a cél, nem? :)), akkor az utolsó forgatásnál, az ffmpeg konfigurálásnál használd ezeket a kapcsolókat (ahogy azt ott látni is fogod - és olvass utána, melyik mire jó). A továbbiakban FFmpeg kapcsolókként hivatkozom ezekre:

--enable-gpl --enable-libx264 --extra-libs=-ldl


libfdk-aac (AAC audio encoder)

AAC Encoding Guide


cd ..
wget -O fdk-aac.zip https://github.com/mstorsjo/fdk-aac/zipball/master
unzip fdk-aac.zip
cd mstorsjo-fdk-aac*
autoreconf -fiv
./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make
make install
make distclean


FFmpeg kapcsolói:

--enable-libfdk_aac (and --enable-nonfree if you also included --enable-gpl)


libmp3lame (MP3 audio encoder)


Manapság már elég új a csomag a tárolóidban is szerintem:

(csomagverzió feltétel:  ≥ 3.98.3)


sudo apt-get install libmp3lame-dev


Csak ha régebbi (!) a *-dev függőség, mint ≥ 3.98.3:

(mint például a Debian Squeeze-ben)


- A yasm helyett telepíted a nasm csomagot egy másik terminal fülön:


sudo apt-get install nasm


- visszalépsz a csomagforgatós fülre:


cd ..
wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
tar xzvf lame-3.99.5.tar.gz
cd lame-3.99.5
./configure --prefix="$HOME/ffmpeg_build" --enable-nasm --disable-shared
make
make install
make distclean


FFmpeg kapcsolója:

--enable-libmp3lame


libopus (Opus audio decoder and encoder)


Manapság már elég új a csomag a tárolóidban is szerintem:

(csomagverzió feltétel:  ≥ 1.1)


sudo apt-get install libopus-dev


Csak ha régebbi (!) a *-dev függőség, mint ≥ 1.1:


cd ..
wget http://downloads.xiph.org/releases/opus/opus-1.1.tar.gz
tar xzvf opus-1.1.tar.gz
cd opus-1.1
./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make
make install
make distclean


FFmpeg kapcsolója:

--enable-libopus


libvpx (VP8/VP9 video encoder and decoder)

vpx (WebM) Encoding Guide


cd ..
wget http://webm.googlecode.com/files/libvpx-v1.3.0.tar.bz2
tar xjvf libvpx-v1.3.0.tar.bz2
cd libvpx-v1.3.0
./configure --prefix="$HOME/ffmpeg_build" --disable-examples
make
make install
make clean


FFmpeg kapcsolója:

--enable-libvpx


... és akkor jöjjön az utolsó lépés :)


ffmpeg


cd ..
wget http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
tar xjvf ffmpeg-snapshot.tar.bz2
cd ffmpeg
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig"
export PKG_CONFIG_PATH


- a következő egyetlen parancs:


./configure --prefix="$HOME/ffmpeg_build" --extra-cflags="-I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib" --bindir="$HOME/bin" --extra-libs="-ldl" --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-x11grab


make
make install
make distclean
hash -r

cd

exit


Csak szervert használók ezt a kapcsolót ne használják: (egyéni döntés)

--enable-x11grab


Kész.


A bin könyvtáradban vannak az imént elkészített és futtatható fájlok.

 


Használat

(a példa egy meglehetősen egyszerű konvertálás lesz)


cd bin

./ffmpeg -i ~/input.mp4 ~/videos/output.mkv


vagy egyszerűbben ugyanez


cd ~/bin && ./ffmpeg -i ~/input.mp4 ~/videos/output.mkv


Ha a bin könyvtárban található futtatható fájlokat név szerint szeretnéd csak futtatni a terminal-ban és nem kívánsz ehhez belépni minden alkalommal a bin könyvtárba, akkor add a "PATH"-hoz a bin könyvtárat a már létező ~/.profile fájlban például így:

(ami egyezik alábbival, azt hagyd úgy)


# include sbin in PATH
if [ -d "/sbin" ] ; then
    PATH="/sbin:$PATH"
fi
if [ -d "/usr/sbin" ] ; then
    PATH="/usr/sbin:$PATH"
fi
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi


Előbbit egyetlen terminal paranccsal is megoldhatod:

(a man ffmpeg használatára is megoldás)


echo "MANPATH_MAP $HOME/bin $HOME/ffmpeg_build/share/man" >> ~/.manpath . ~/.profile


A ~/.profile fájl helyett a ~/.bashrc fájlt is használhatod, azonban arra figyelj, hogy ez felülírja a rendszer (bash) általános működését.

Bővebben e témakörben például itt is olvashatsz:

https://help.ubuntu.com/community/EnvironmentVariables#Persistent_environment_variables

 

Utána egészen egyszerűen használhatod az FFmpeg-et:


ffmpeg -i ~/input.mp4 ~/videos/output.mkv

 


Telepítés más rendszereken, illetve más módszerekkel

(angol, de elég érthető szerintem)


Linux


Download static builds for Linux here:


FFmpeg packages are also offered for some distributions:

  • Deb Multimedia – Debian packages for Oldstable, Stable, Testing, Unstable (amd64, armel, armhf, i386, ia64, kfreebsd-amd64, kfreebsd-i386, mips, mipsel, powerpc, sparc)
  • Jon Severinsson's FFmpeg PPA – Ubuntu packages for Precise, Oneiric, Natty, Maverick, and Lucid (amd64, i386). Note that this package only provides FFmpeg 0.10 for compatibility reasons.
  • RPM Fusion – Redhat and Fedora packages for EL, Fedora Rawhide (i386, x86_64)


Windows


Windows Builds are available at Zeranoe FFmpeg Builds.


OS X


Static builds for OS X can be downloaded here:

Under OS X, FFmpeg can also be installed through Homebrew, MacPorts, or Fink.


___


Telepítésre esetleg Jon Severinsson PPA-ját ajánlom figyelmedbe, igaz, nem a (leges)legújabb, de nagyon összerakott, hasznos munka. :)

Azonban, ha minden jól működik a rendszereden, PPA-t ne vegyél fel.

A tárolóidból (szoftverforrások/sources.list) elérhető csomagok valamelyest optimalizálva vannak a rendszeredre. Ha a csomagforgatást nem portable/hordozható verzióként használod, hanem  telepíted a rendszeredre, az instabilitást okozhat (a "prefix="-et nem adod meg, vagy a Linux könyvtárszerkezet szerinti útvonalat adod meg - ahogy azt kell -  valamint kielégíted az összes függőséget). A leírásban szereplő csomagforgatás az Autoconf-ot használja, de több módszer van, így ez nem általánosan használható telepítési leírás, máshol mást használsz (install, readme fájlok, letöltési oldal leírása, stb. a segítség).


További lehetőségek csomagok tekintetében itt:

http://www.ffmpeg.org/download.html

Annyi különbség van, hogy létezik stable, snapshot (daily, napi/heti) és old version (régebbi stabil).


 

Sok sikert!

Címkék: alkalmazás ffmpeg formátum konténer konzol leírás linux nyílt forráskód open source parancs parancssor terminal tipp tutorial windows

 

Kommentáld!

Ez egy válasz üzenetére.

mégsem

Hozzászólások

Ez történt a közösségben:

M Imre új eseményt adott az eseménynaptárhoz: 2024. április 27-28-án, 10 és 18 óra között várjuk az érdeklődőket a ReGamEX -RETRO VIDEÓJÁTÉK kiállításra, a 70-es, 80-as és 90-es évek hobbiszámítógépeivel, videó- és kvarcjátékaival 2024.04.27.

M Imre írta 1 napja a(z) Rövid, szines hírek fórumtémában:

Tavaly óta lehet tudni, hogy a hazánkban is kapható TP-Link...

M Imre írta 4 napja a(z) Fényképezés, képek szerkesztése és minden hasonló témakör fórumtémában:

Herzog a streetfotó hercege | 2024.03.27. Fred Herzog, ...

M Imre írta 5 napja a(z) Könyvek és kiadványok fórumtémában:

Zsoldos Péter sci-fi-író és zeneszerző „Az íróval való ...

M Imre írta 6 napja a(z) Rövid, szines hírek fórumtémában:

Boston Dynamics: új Atlas http://autovezetes.network....

M Imre írta 1 hete a(z) Ugráló pingvin képhez:

Ugralo_pingvin_2109842_3978_s

Először filmezték le a császárpingvin-fiókák ...

M Imre írta 1 hete a(z) Viszlát, és kösz a halakat! - Bezárt a BuheraBlog (2014.04.30.) videóhoz:

ClamTK - Már nincs karbantartva A mai naptól kezdve, több...

M Imre írta 1 hete a(z) Fényképezés, képek szerkesztése és minden hasonló témakör fórumtémában:

Fotótörténet – Fan Ho: Közeledő árnyék (1954) -- ...

M Imre írta 1 hete a(z) Vakondok 4 - Végigjátszás videóhoz:

2024. április 27-28-án kerül megrendezésre a következő ...

Szólj hozzá te is!

Impresszum
Network.hu Kft.

E-mail: ugyfelszolgalat@network.hu