FFmpeg-7.1.1

Introduksjon til FFmpeg

FFmpeg er en løsning for å ta opp, konvertere og strømme lyd og video. Det er en veldig rask video- og lydkonverterer, og den kan også hente inn filer fra en direkte lyd-/videokilde. Kommandolinjegrensesnittet er designet for å være intuitivt. (ffmpeg) prøver å finne ut alle parameterne når det er mulig. FFmpeg kan også konvertere fra en hvilken som helst samplingsfrekvens til en hvilken som helst annen, og endre størrelse på video på farten med et polyfasefilter av høy kvalitet. FFmpeg kan bruke en Video4Linux kompatibel videokilde og en hvilken som helst Open Sound System lydkilde.

Ytterligere Nedlastinger

FFmpeg Avhengigheter

Påkrevd

Pkgconf Personalties (for lib32)

Anbefalt

Anbefalt for skrivebord bruk

Anbefalt for systemer med Intel grafikkort

Valgfritt for systemer med NVIDIA grafikkort

CUDA og nv-codec-headers

Valgfri for systemer med Intel grafikkort

Intel-MediaSDK, intel-onevpl, og libvpl

Valgfri

En komplett liste over valgfrie avhengigheter finnes i BLFS FFmpeg siden.

Installasjon av FFmpeg

Først, installer en oppdatering som legger til et API som er nødvendig for at noen pakker skal kunne bygges:

patch -Np1 -i ../ffmpeg-7.1.1-chromium_method-1.patch

Nå fiks et problem forårsaket av den nyeste versjonen av x265-4.1:

sed -e 's/X265_BUILD >= 210/(&) \&\& (X265_BUILD < 213)/' \
    -i libavcodec/libx265.c

Installer FFmpeg ved å kjøre følgende kommandoer:

./configure --prefix=/usr        \
            --enable-gpl         \
            --enable-version3    \
            --enable-nonfree     \
            --disable-static     \
            --enable-shared      \
            --disable-debug      \
            --enable-libaom      \
            --enable-libfdk-aac  \
            --enable-libfreetype \
            --enable-libmp3lame  \
            --enable-libopus     \
            --enable-libvorbis   \
            --enable-libvpx      \
            --enable-libx264     \
            --enable-libx265     \
            --enable-openssl     \
            --docdir=/usr/share/doc/ffmpeg-7.1.1 &&

make &&

gcc tools/qt-faststart.c -o tools/qt-faststart

Nå, som root bruker:

make install &&

install -v -m755    tools/qt-faststart /usr/bin &&
install -v -m755 -d           /usr/share/doc/ffmpeg-7.1.1 &&
install -v -m644    doc/*.txt /usr/share/doc/ffmpeg-7.1.1

lib32 Installasjon av FFmpeg

Installer lib32-FFmpeg ved å kjøre følgende kommandoer:

make distclean &&
./configure --prefix=/usr                             \
            --libdir=/usr/lib32                       \
            --shlibdir=/usr/lib32                     \
            --cc="gcc -m32"                           \
            --pkg-config=i686-pc-linux-gnu-pkg-config \
            --enable-gpl                              \
            --enable-version3                         \
            --enable-nonfree                          \
            --disable-static                          \
            --enable-shared                           \
            --disable-debug                           \
            --enable-libaom                           \
            --enable-libfdk-aac                       \
            --enable-libfreetype                      \
            --enable-libmp3lame                       \
            --enable-libopus                          \
            --enable-libvorbis                        \
            --enable-libvpx                           \
            --enable-libx264                          \
            --enable-libx265                          \
            --enable-openssl &&

make

Nå, som root bruker:

make DESTDIR=$PWD/DESTDIR install     &&
cp -vr DESTDIR/usr/lib32/* /usr/lib32 &&
rm -rf DESTDIR                        &&
ldconfig

Parameterforklaringer

[Notat]

Notat

Kjør ./configure --help for en fullstendig liste over alternativer.

--enable-libfreetype: Aktiverer Freetype støtte.

--enable-gpl: Aktiverer bruk av GPL kode og støtte for etterbehandling, swscale og mange andre funksjoner.

--enable-version3: Aktiverer bruk av (L)GPL versjon 3 kode.

--enable-nonfree: Aktiverer bruk av ikke-fri kode. Merk at de resulterende bibliotekene og binærfilene ikke vil kunne distribueres på nytt.

--disable-static: Denne bryteren forhindrer installasjon av statiske versjoner av bibliotekene.

--enable-shared: Aktiverer bygging av delte biblioteker, ellers bygges og installeres bare statiske biblioteker.

--disable-debug: Deaktiverer bygging av feilsøkingssymboler i programmene og bibliotekene.

--enable-libaom: Aktiverer AV1 lyd og video dekoding via libaom.

--enable-libfdk-aac: Aktiverer AAC lydkoding via libfdk-aac.

--enable-libmp3lame: Aktiverer MP3 lydkoding via libmp3lame.

--enable-libvorbis --enable-libvpx: Aktiverer WebM koding via libvorbis og libvpx.

--enable-libx264: Aktiverer høykvalitets H.264/MPEG-4 AVC koding via libx264.

--enable-libx265: Aktiverer høykvalitets H.265/HEVC koding via libx265.

--enable-openssl: Aktiverer HTTPS protokollen for nettverksstrømmer.

--enable-libdrm: Bruk denne bryteren hvis libdrm-2.4.125 er installert for å bygge «kmsgrab» inndatamodul som er nyttig for skjermopptak eller strømming.

--enable-nvenc --enable-nvdec: Disse alternativene aktiverer maskinvareakselerasjon for NVIDIA GPU-er, og avhenger av de valgfrie avhengighetene for systemer med NVIDIA grafikkkort.

--enable-libmfx: Dette alternativet aktiverer maskinvareakselerasjon for Intel GPU-er fra Broadwell til Tiger Lake, og det avhenger av de valgfrie avhengighetene for systemer med Intel grafikkort.

--enable-libvpl: Dette alternativet aktiverer maskinvareakselerasjon for Intel GPU-er fra Tiger Lake og utover, inkludert de separate grafikkortene. Det avhenger av de valgfrie avhengighetene for systemer med Intel grafikkort.

--enable-gnutls: Bruk dette alternativet i stedet for --enable-openssl, hvis du vil bruke GnuTLS i stedet for OpenSSL for HTTPS protokollen.

--disable-doc: Deaktiverer bygging av HTML dokumentasjon. Dette er bare nødvendig hvis doxygen er installert og du ikke ønsker å bygge HTML dokumentasjonen.

--enable-libpulse: Aktiverer støtte for Pulseaudio for lydutdata.

gcc tools/qt-faststart.c -o tools/qt-faststart: Dette bygger qt-faststart programmet som kan endre QuickTime formaterte filmer (.mov eller .mp4) slik at deklarasjonsinformasjonen er plassert i begynnelsen av filen i stedet for på slutten. Dette gjør at filmfilen kan begynne å spilles av før hele filen er lastet ned.

[Notat]

Notat

Støtte for noen av avhengighetspakkene krever bruk av alternativer som sendes til configure skriptet. Se utdataene fra ./configure --help for fullstendig informasjon om aktivering av avhengighetspakker.

Innhold

Installerte Programmer: ffmpeg, ffplay, ffprobe, og qt-faststart
Installerte Biblioteker: libavcodec, libavdevice, libavfilter, libavformat, libavutil, libpostproc, libswresample, og libswscale
Installerte Mapper: /usr/include/libav{codec,device,filter,format,util}, /usr/include/libpostproc, /usr/include/libsw{resample,scale}, /usr/share/doc/ffmpeg-7.1.1, og /usr/share/ffmpeg

Korte Beskrivelser

ffmpeg

er et kommandolinjeverktøy for å konvertere videofiler, nettverksstrømmer og inndata fra et TV-kort til flere videoformater

ffplay

er en veldig enkel og portabel mediespiller som bruker ffmpeg biblioteker og SDL biblioteket

ffprobe

samler informasjon fra multimediestrømmer og skriver den ut på en menneskelig og maskinlesbar måte

qt-faststart

flytter indeksfilen til forsiden av QuickTime videoer (mov/mp4)

libavcodec

er et bibliotek som inneholder FFmpeg kodekene (både koding og dekoding)

libavdevice

er FFmpeg biblioteket for enhetshåndtering

libavfilter

er et bibliotek med filtre som kan endre video eller lyd mellom dekoderen og koderen (eller utgangen)

libavformat

er et bibliotek som inneholder filformathåndteringen (mux og demux kode for flere formater) som brukes av ffplay samt å tillate generering av lyd eller videostrømmer

libavresample

er et bibliotek som inneholder funksjoner for resampling av lyd og video.

libavutil

er FFmpeg verktøybiblioteket

libpostproc

er FFmpegs etterbehandlingsbibliotek

libswresample

er FFmpeg biblioteket for omskalering av lyd, det inneholder funksjoner for å konvertere lydeksempelformater

libswscale

er FFmpeg biblioteket for bildereskalering