EngelsFransSpaans

Ad


OnWorks-favicon

avconv - Online in de cloud

Voer avconv uit in de gratis hostingprovider van OnWorks via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdracht avconv die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


ffmpeg - ffmpeg video-omzetter

KORTE INHOUD


ffmpeg [globale_opties] {[invoerbestandsopties] -i Invoer bestand} ... {[uitvoerbestandsopties]
uitvoer_bestand} ...

PRODUCTBESCHRIJVING


ffmpeg is een zeer snelle video- en audio-omzetter die ook live audio/video kan gebruiken
bron. Het kan ook converteren tussen willekeurige samplefrequenties en het formaat van video on-the-fly wijzigen
met een hoogwaardig meerfasig filter.

ffmpeg leest uit een willekeurig aantal ingevoerde "bestanden" (dit kunnen gewone bestanden, pijpen,
netwerkstreams, grabbing-apparaten, enz.), gespecificeerd door de "-i"-optie, en schrijft naar een
willekeurig aantal uitvoer "bestanden", die worden gespecificeerd door een gewone uitvoerbestandsnaam.
Alles wat op de opdrachtregel wordt gevonden en niet als een optie kan worden geïnterpreteerd, wordt overwogen
een uitvoerbestandsnaam zijn.

Elk invoer- of uitvoerbestand kan in principe een onbeperkt aantal verschillende stromen bevatten
typen (video/audio/ondertiteling/bijlage/gegevens). Het toegestane aantal en/of soorten streams
kan worden beperkt door het containerformaat. Selecteren welke streams van welke ingangen gaan
waarin de uitvoer automatisch of met de optie "-map" wordt gedaan (zie de Stream
selectie hoofdstuk).

Om in opties naar invoerbestanden te verwijzen, moet u hun indexen gebruiken (0-gebaseerd). Bv de eerste
invoerbestand is 0, het tweede is 1, enz. Evenzo wordt naar streams binnen een bestand verwezen met
hun indexen. Bijv. "2:3" verwijst naar de vierde stroom in het derde invoerbestand. Zie ook
het hoofdstuk Streamspecificaties.

Als algemene regel worden opties toegepast op het volgende gespecificeerde bestand. Orde is dus
belangrijk, en u kunt dezelfde optie meerdere keren op de opdrachtregel hebben. Elk
voorkomen wordt vervolgens toegepast op het volgende invoer- of uitvoerbestand. Uitzonderingen op deze regel
zijn de globale opties (bijv. breedsprakigheidsniveau), die eerst moeten worden gespecificeerd.

Combineer invoer- en uitvoerbestanden niet -- specificeer eerst alle invoerbestanden en vervolgens alle uitvoerbestanden.
Meng ook geen opties die bij verschillende bestanden horen. Alle opties zijn ALLEEN van toepassing op de
volgende invoer- of uitvoerbestand en worden tussen bestanden gereset.

· Om de videobitsnelheid van het uitvoerbestand in te stellen op 64 kbit/s:

ffmpeg -i input.avi -b:v 64k -bufsize 64k output.avi

· De framesnelheid van het uitvoerbestand forceren naar 24 fps:

ffmpeg -i invoer.avi -r 24 uitvoer.avi

· Om de framesnelheid van het invoerbestand (alleen geldig voor onbewerkte formaten) te forceren tot 1 fps en
de framesnelheid van het uitvoerbestand naar 24 fps:

ffmpeg -r 1 -i invoer.m2v -r 24 uitvoer.avi

De formaatoptie kan nodig zijn voor onbewerkte invoerbestanden.

GEDETAILLEERD PRODUCTBESCHRIJVING


Het transcoderingsproces in ffmpeg voor elke uitgang kan als volgt worden beschreven
diagram:

_______ ______________
| | | |
| invoer | demuxer | gecodeerde gegevens | decoder
| bestand | ---------> | pakketjes | -----+
|________| |______________| |
v
_________
| |
| gedecodeerd |
| kaders |
|__________|
________ ______________ |
| | | | |
| uitvoer | <-------- | gecodeerde gegevens | <----+
| bestand | muxer | pakketjes | encoder
|________| |______________|

ffmpeg roept de libavformat-bibliotheek aan (met demuxers) om invoerbestanden te lezen en get
pakketten die gecodeerde gegevens van hen bevatten. Als er meerdere invoerbestanden zijn, ffmpeg
probeert ze gesynchroniseerd te houden door de laagste tijdstempel op een actieve invoerstroom te volgen.

Gecodeerde pakketten worden vervolgens doorgegeven aan de decoder (tenzij streamcopy is geselecteerd voor de
stream, zie verder voor een beschrijving). De decoder produceert ongecomprimeerde frames (raw
video/PCM audio/...) die verder kunnen worden verwerkt door te filteren (zie volgende paragraaf). Na
filteren, worden de frames doorgegeven aan de encoder, die ze codeert en gecodeerd uitvoert
pakketten. Uiteindelijk worden die doorgegeven aan de muxer, die de gecodeerde pakketten naar de
uitvoer bestand.

Filtering
Voor het coderen, ffmpeg kan onbewerkte audio- en videoframes verwerken met behulp van filters uit de
libavfilter-bibliotheek. Meerdere gekoppelde filters vormen een filtergrafiek. ffmpeg onderscheidt
tussen twee soorten filtergrafieken: eenvoudig en complex.

Eenvoudig filtergrafieken

Eenvoudige filtergrafieken zijn die met precies één invoer en uitvoer, beide van hetzelfde
type. In het bovenstaande diagram kunnen ze worden weergegeven door simpelweg een extra stap in te voegen
tussen decoderen en coderen:

__________ ______________
| | | |
| gedecodeerd | | gecodeerde gegevens |
| kaders |\ _ | pakketjes |
|__________| \ /||______________|
\ __________ /
eenvoudig _\|| | / encoder
filtergrafiek | gefilterd |/
| kaders |
|__________|

Eenvoudige filtergrafieken worden geconfigureerd met de per-stream -filter optie (met -vf en -af
aliassen voor respectievelijk video en audio). Een eenvoudige filtergrafiek voor video kan zoeken
voorbeeld als volgt:

_______ _____________ _______ ________
​ ​ ​ ​ ​ ​ ​ ​
| invoer | ---> | deïnterliniëren | ---> | schaal | ---> | uitgang |
|________| |____________| |________| |________|

Houd er rekening mee dat sommige filters frame-eigenschappen wijzigen, maar niet de frame-inhoud. Bijvoorbeeld de "fps"
filter in het bovenstaande voorbeeld verandert het aantal frames, maar raakt het frame niet aan
inhoud. Een ander voorbeeld is het filter "setpts", dat alleen tijdstempels instelt en anders
passeert de frames ongewijzigd.

Complex filtergrafieken

Complexe filtergrafieken zijn die welke niet simpelweg kunnen worden omschreven als een lineaire verwerking
ketting toegepast op één stroom. Dit is bijvoorbeeld het geval als de grafiek meer dan heeft
één ingang en/of uitgang, of wanneer het type uitvoerstroom verschilt van de invoer. Ze kunnen zijn
weergegeven met het volgende diagram:

_________
| |
| invoer 0 |\ __________
|__________| \ | |
\ _________ /| uitgang 0 |
\ | | / |__________|
_________ \| complexe | /
| | | |/
| ingang 1 |---->| filteren |\
|__________| | | \ __________
/| grafiek | \ | |
/ | | \| uitgang 1 |
________ / |________| |__________|
| | /
| ingang 2 |/
|__________|

Complexe filtergrafieken worden geconfigureerd met de -filter_complex keuze. Merk op dat dit
optie is globaal, aangezien een complexe filtergrafiek van nature niet ondubbelzinnig kan zijn
gekoppeld aan een enkele stream of bestand.

De -lavfi optie is gelijk aan -filter_complex.

Een triviaal voorbeeld van een complexe filtergrafiek is het "overlay"-filter, dat twee video's heeft
ingangen en één video-uitgang, waarbij de ene video op de andere is gelegd. Het geluid
tegenhanger is het "amix" filter.

Stroom kopiëren
Stream kopiëren is een modus die wordt geselecteerd door de "copy" parameter aan de -codec keuze. Het
merken ffmpeg laat de decoderings- en coderingsstap voor de opgegeven stream weg, dus alleen
demuxen en muxen. Het is handig om het containerformaat te wijzigen of aan te passen
metadata op containerniveau. Het bovenstaande diagram zal in dit geval vereenvoudigen tot dit:

_______ ______________ ________
​ ​ ​ ​ ​ ​
| invoer | demuxer | gecodeerde gegevens | muxer | uitvoer |
| bestand | ---------> | pakketjes | -------> | bestand |
|________| |______________| |________|

Omdat er geen decodering of codering is, is het erg snel en is er geen kwaliteitsverlies.
In sommige gevallen werkt het echter mogelijk niet vanwege vele factoren. Filters toepassen is
uiteraard ook onmogelijk, aangezien filters werken op ongecomprimeerde gegevens.

STREAM SELECTIE


Standaard ffmpeg bevat slechts één stream van elk aanwezig type (video, audio, ondertiteling).
in de invoerbestanden en voegt ze toe aan elk uitvoerbestand. Het kiest de "beste" van elke basis
op de volgende criteria: voor video is dit de stream met de hoogste resolutie, voor
audio, dit is de stream met de meeste kanalen, voor ondertitels is dit de eerste ondertitel
stroom. In het geval dat meerdere streams van hetzelfde type gelijk scoren, wordt de stream met
de laagste index wordt gekozen.

U kunt sommige van die standaardinstellingen uitschakelen door de "-vn/-an/-sn"-opties te gebruiken. Voor volledige handleiding
control, gebruikt u de optie "-map", die de zojuist beschreven standaardinstellingen uitschakelt.

OPTIES


Alle numerieke opties accepteren, tenzij anders gespecificeerd, een tekenreeks die een vertegenwoordigt
nummer als invoer, dat kan worden gevolgd door een van de SI-eenheidsvoorvoegsels, bijvoorbeeld: 'K',
'M' of 'G'.

Als 'i' wordt toegevoegd aan het voorvoegsel van de SI-eenheid, wordt het volledige voorvoegsel geïnterpreteerd als a
eenheidsvoorvoegsel voor binaire veelvouden, die zijn gebaseerd op machten van 1024 in plaats van machten van
1000. Door 'B' toe te voegen aan het voorvoegsel van de SI-eenheid, wordt de waarde vermenigvuldigd met 8. Dit maakt het gebruik van,
bijvoorbeeld: 'KB', 'MiB', 'G' en 'B' als nummerachtervoegsels.

Opties die geen argumenten accepteren, zijn booleaanse opties en stellen de overeenkomstige waarde in
naar waar. Ze kunnen worden ingesteld op false door de naam van de optie te laten voorafgaan door "no". Bijvoorbeeld
het gebruik van "-nofoo" zal de booleaanse optie met de naam "foo" instellen op false.

Stroom bestekschrijvers
Sommige opties worden per stream toegepast, bijvoorbeeld bitrate of codec. Streamspecificaties zijn gewend
specificeer precies tot welke stream(s) een bepaalde optie behoort.

Een stroomspecificatie is een tekenreeks die over het algemeen aan de optienaam wordt toegevoegd en daarvan wordt gescheiden
door een dubbele punt. Bijv. "-codec:a:1 ac3" bevat de "a:1" streamspecificatie, die overeenkomt met de
tweede audiostream. Daarom zou het de ac3-codec selecteren voor de tweede audiostream.

Een streamspecificatie kan overeenkomen met meerdere streams, zodat de optie op alle wordt toegepast
hen. De streamspecificatie in "-b:a 128k" komt bijvoorbeeld overeen met alle audiostreams.

Een lege streamspecificatie komt overeen met alle streams. Bijvoorbeeld "-codec kopiëren" of "-codec:
kopiëren" zou alle streams kopiëren zonder opnieuw te coderen.

Mogelijke vormen van streamspecificaties zijn:

stroom_index
Komt overeen met de stream met deze index. Bijv. "-threads:1 4" stelt het aantal threads in
de tweede stroom naar 4.

stream_type[:stroom_index]
stream_type is een van de volgende: 'v' of 'V' voor video, 'a' voor audio, 's' voor
ondertitel, 'd' voor gegevens en 't' voor bijlagen. 'v' komt overeen met alle videostreams, 'V'
komt alleen overeen met videostreams die geen bijgevoegde afbeeldingen, videothumbnails of omslag zijn
kunst. Als stroom_index wordt gegeven, komt het overeen met het streamnummer stroom_index deze
type. Anders komt het overeen met alle streams van dit type.

p:programma_id[:stroom_index]
If stroom_index wordt gegeven, dan komt het overeen met de stream met nummer stroom_index in de
programma met de id programma_id. Anders komt het overeen met alle streams in het programma.

#stream_id or i:stream_id
Match de stream op stream-ID (bijv. PID in MPEG-TS-container).

m:sleutel[:waarde]
Komt overeen met streams met de metadata-tag sleutel met de opgegeven waarde. Als waarde is niet
gegeven, komt overeen met streams die de gegeven tag bevatten met een willekeurige waarde.

u Komt overeen met streams met bruikbare configuratie, de codec moet gedefinieerd en essentieel zijn
informatie zoals videodimensie of audiosamplefrequentie moet aanwezig zijn.

Merk op dat in ffmpeg, werkt matchen op metadata alleen goed voor invoerbestanden.

Algemeen opties
Deze opties worden gedeeld door de ff*-tools.

-L Licentie tonen.

-H, -?, -helpen, --help [arg]
Hulp laten zien. Er kan een optionele parameter worden opgegeven om hulp over een specifiek item af te drukken.
Als er geen argument is opgegeven, worden alleen basis (niet-geavanceerde) toolopties weergegeven.

Mogelijke waarden van arg zijn:

lang
Druk geavanceerde toolopties af naast de basistoolopties.

vol
Volledige lijst met opties afdrukken, inclusief gedeelde en privé-opties voor encoders,
decoders, demuxers, muxers, filters, enz.

decoder=decoder_naam
Print gedetailleerde informatie over de genoemde decoder decoder_naam. Gebruik de -decoders
optie om een ​​lijst van alle decoders te krijgen.

encoder=encoder_naam
Print gedetailleerde informatie over de genoemde encoder encoder_naam. Gebruik de -encoders
optie om een ​​lijst van alle encoders te krijgen.

demuxer=demuxer_naam
Print gedetailleerde informatie over de genoemde demuxer demuxer_naam. Gebruik de -formaten
optie om een ​​lijst te krijgen van alle demuxers en muxers.

muxer=muxer_naam
Print gedetailleerde informatie over de genoemde muxer muxer_naam. Gebruik de -formaten
optie om een ​​lijst te krijgen van alle muxers en demuxers.

filteren=filternaam
Print gedetailleerde informatie over de filternaam filternaam. Gebruik de - filters
optie om een ​​lijst met alle filters te krijgen.

-versie
Toon versie.

-formaten
Toon beschikbare formaten (inclusief apparaten).

-devices
Toon beschikbare apparaten.

-codecs
Toon alle codecs die bekend zijn bij libavcodec.

Merk op dat de term 'codec' in deze documentatie wordt gebruikt als een afkorting voor
wat correcter een media-bitstream-indeling wordt genoemd.

-decoders
Toon beschikbare decoders.

-encoders
Toon alle beschikbare encoders.

-bsfs
Toon beschikbare bitstreamfilters.

-protocollen
Toon beschikbare protocollen.

- filters
Toon beschikbare libavfilter-filters.

-pix_fmts
Toon beschikbare pixelformaten.

-voorbeeld_fmts
Toon beschikbare voorbeeldformaten.

-lay-outs
Toon kanaalnamen en standaard kanaallay-outs.

-kleuren
Toon herkende kleurnamen.

-bronnen apparaat[,opt1=val1[,opt2=val2]...]
Toon automatisch gedetecteerde bronnen van het invoerapparaat. Sommige apparaten kunnen systeem-
afhankelijke bronnamen die niet automatisch kunnen worden gedetecteerd. De geretourneerde lijst kan dat niet zijn
verondersteld altijd compleet te zijn.

ffmpeg -bronnenpuls,server=192.168.0.4

-zinkt apparaat[,opt1=val1[,opt2=val2]...]
Toon automatisch gedetecteerde putten van het uitvoerapparaat. Sommige apparaten kunnen systeem-
afhankelijke Sink-namen die niet automatisch kunnen worden gedetecteerd. De geretourneerde lijst kan niet worden aangenomen
om altijd compleet te zijn.

ffmpeg -sinkt puls,server=192.168.0.4

-Log niveau [herhaal+]loglevel | -v [herhaal+]loglevel
Stel het logboekniveau in dat door de bibliotheek wordt gebruikt. Het toevoegen van "herhalen+" geeft aan dat herhaald
log uitvoer mag niet worden gecomprimeerd tot de eerste regel en de "Laatste bericht herhaald n
times" wordt weggelaten. "repeat" kan ook alleen worden gebruikt. Als "repeat" wordt gebruikt
alleen, en zonder vooraf ingesteld logniveau, wordt het standaard logniveau gebruikt. Indien meerdere
loglevel parameters zijn gegeven, het gebruik van 'repeat' verandert het loglevel niet. loglevel
is een tekenreeks of een getal met een van de volgende waarden:

stil, -8
Laat helemaal niets zien; zwijg.

paniek, 0
Toon alleen fatale fouten die ertoe kunnen leiden dat het proces crasht, zoals en assert
mislukking. Dit wordt momenteel nergens voor gebruikt.

dodelijk, 8
Toon alleen fatale fouten. Dit zijn fouten waarna het proces absoluut niet meer kan
daarna doorgaan.

fout, 16
Toon alle fouten, inclusief fouten die hersteld kunnen worden.

waarschuwing, 24
Toon alle waarschuwingen en fouten. Elk bericht met betrekking tot mogelijk onjuiste of
onverwachte gebeurtenissen worden getoond.

informatie, 32
Toon informatieve berichten tijdens de verwerking. Dit is naast waarschuwingen en
fouten. Dit is de standaardwaarde.

breedsprakig, 40
Hetzelfde als "info", behalve meer uitgebreid.

debuggen, 48
Laat alles zien, inclusief foutopsporingsinformatie.

spoor, 56

Standaard logt het programma in stderr, als kleuren wordt ondersteund door de terminal,
kleuren worden gebruikt om fouten en waarschuwingen te markeren. Logkleuring kan worden uitgeschakeld door de
variabele omgeving AV_LOG_FORCE_NOCOLOR or GEEN KLEUR, of kan geforceerd worden ingesteld
variabele omgeving AV_LOG_FORCE_COLOR. Het gebruik van de omgevingsvariabele GEEN KLEUR
is verouderd en wordt verwijderd in een volgende FFmpeg-versie.

-verslag doen van
Dump de volledige opdrachtregel en console-uitvoer naar een bestand met de naam
"programma-JJJJMMDD-UUMMSS.log" in de huidige map. Dit bestand kan nuttig zijn voor
foutmeldingen. Het impliceert ook "-loglevel breedsprakig".

De omgevingsvariabele instellen FFRAPPORT elke waarde heeft hetzelfde effect. Als de
waarde een door ':' gescheiden sleutel=waarde-reeks is, deze opties zijn van invloed op het rapport;
optiewaarden moeten worden geëscaped als ze speciale tekens of de opties bevatten
delimiter ':' (zie de sectie ``Quoting and escape'' in de ffmpeg-utils handleiding).

De volgende opties worden herkend:

filet
stel de bestandsnaam in die voor het rapport moet worden gebruikt; %p wordt uitgebreid naar de naam van het
programma, %t wordt uitgebreid tot een tijdstempel, "%%" wordt uitgebreid tot een gewoon "%"

niveau
stel het log breedsprakigheidsniveau in met behulp van een numerieke waarde (zie "-loglevel").

Om bijvoorbeeld een rapport uit te voeren naar een bestand met de naam ffrapport.log met een logniveau van 32
(alias voor logniveau "info"):

FFREPORT=file=ffreport.log:level=32 ffmpeg -i invoeruitvoer

Fouten bij het ontleden van de omgevingsvariabele zijn niet fataal en verschijnen niet in het
melden.

-verberg_banner
Drukbanner onderdrukken.

Alle FFmpeg-tools tonen normaal gesproken een copyright-melding, build-opties en bibliotheek
versies. Deze optie kan worden gebruikt om het afdrukken van deze informatie te onderdrukken.

-cpu-vlaggen vlaggen (globaal)
Maakt het instellen en wissen van cpu-vlaggen mogelijk. Deze optie is bedoeld om te testen. Gebruik niet
tenzij je weet wat je doet.

ffmpeg -cpuflags -sse+mmx ...
ffmpeg -cpuflags mmx ...
ffmpeg -cpuflags 0 ...

Mogelijke vlaggen voor deze optie zijn:

x86
mmx
mmxt
sse
sse2
sse2langzaam
sse3
sse3langzaam
ssse3
atoom
sse4.1
sse4.2
avx
avx2
xop
fma3
fma4
3dnu
3dnext
bmi1
bmi2
cmov
ARM
armv5te
armv6
armv6t2
vfp
vfpv3
neon-
einde
Arch64
armv8
vfp
neon-
PowerPC
altiefc
specifiek Processoren
pentium2
pentium3
pentium4
k6
k62
Athlon
atlonxp
k8
-opencl_bench
Deze optie wordt gebruikt om alle beschikbare OpenCL-apparaten te benchmarken en de resultaten af ​​te drukken.
Deze optie is alleen beschikbaar als FFmpeg is gecompileerd met "--enable-opencl".

Wanneer FFmpeg is geconfigureerd met "--enable-opencl", zijn de opties voor de globale OpenCL
context worden ingesteld via -opencl_opties. Zie de sectie "OpenCL-opties" in de ffmpeg-
utils-handleiding voor de volledige lijst met ondersteunde opties. Onder andere deze opties
omvatten de mogelijkheid om een ​​specifiek platform en apparaat te selecteren om de OpenCL-code uit te voeren
op. FFmpeg draait standaard op het eerste apparaat van het eerste platform. Terwijl de
opties voor de globale OpenCL-context bieden de gebruiker flexibiliteit bij het selecteren van de
OpenCL-apparaat van hun keuze, de meeste gebruikers zouden waarschijnlijk het snelste willen selecteren
OpenCL-apparaat voor hun systeem.

Deze optie helpt bij het selecteren van de meest efficiënte configuratie door te identificeren
het juiste apparaat voor het systeem van de gebruiker. De ingebouwde benchmark wordt uitgevoerd op alle
OpenCL-apparaten en de prestaties worden voor elk apparaat gemeten. De toestellen in de
resultatenlijst zijn gesorteerd op basis van hun prestaties met het snelste vermelde apparaat
Eerst. De gebruiker kan vervolgens een beroep doen ffmpeg met behulp van het apparaat dat het meest wordt geacht
geschikt via -opencl_opties om de beste prestaties voor de OpenCL te verkrijgen
versnelde codes.

Typisch gebruik om het snelste OpenCL-apparaat te gebruiken, omvat de volgende stappen.

Voer de opdracht uit:

ffmpeg -opencl_bench

Noteer de platform-ID (pidx) en apparaat-ID (didx) van het eerste dwz snelste apparaat
in de lijst. Selecteer het platform en apparaat met behulp van de opdracht:

ffmpeg -opencl_options platform_idx= :device_idx= ...

-opencl_opties opties (globaal)
Stel OpenCL-omgevingsopties in. Deze optie is alleen beschikbaar wanneer FFmpeg is geweest
gecompileerd met "--enable-opencl".

opties moet een lijst zijn van sleutel=waarde optieparen gescheiden door ':'. Zie de ``OpenCL
Opties'' in de ffmpeg-utils-handleiding voor de lijst met ondersteunde opties.

AVOpties
Deze opties worden rechtstreeks geleverd door libavformat, libavdevice en libavcodec
bibliotheken. Om de lijst met beschikbare AVOptions te zien, gebruikt u de -Help keuze. Zij zijn
gescheiden in twee categorieën:

algemeen
Deze opties kunnen worden ingesteld voor elke container, codec of apparaat. Generieke opties zijn
vermeld onder AVFormatContext-opties voor containers/apparaten en onder AVCodecContext
opties voor codecs.

privaat
Deze opties zijn specifiek voor de betreffende container, het apparaat of de codec. Privé opties
worden vermeld onder hun overeenkomstige containers/apparaten/codecs.

Om bijvoorbeeld een ID3v2.3-header te schrijven in plaats van een standaard ID3v2.4 naar een MP3-bestand, gebruikt u
de id3v2_versie privé-optie van de MP3-muxer:

ffmpeg -i input.flac -id3v2_versie 3 uit.mp3

Alle codec AVOptions zijn per-stream en daarom moet er een stream-specificatie aan worden gekoppeld
Hen.

Merk op -geen optie syntaxis kan niet worden gebruikt voor booleaanse AVOptions, use -Keuze 0/-Keuze 1.

Opmerking: de oude ongedocumenteerde manier om per-stream AVOptions te specificeren door v/a/s voor te laten gaan
de optienaam is nu achterhaald en zal binnenkort worden verwijderd.

Hoofd opties
-f fmt (invoer uitvoer)
Forceer invoer- of uitvoerbestandsindeling. Het formaat wordt normaal gesproken automatisch gedetecteerd voor invoer
bestanden en geraden uit de bestandsextensie voor uitvoerbestanden, dus deze optie is dat niet
in de meeste gevallen nodig.

-i bestandsnaam (invoer)
bestandsnaam invoeren

-y (globaal)
Overschrijf uitvoerbestanden zonder te vragen.

-n (globaal)
Overschrijf uitvoerbestanden niet en sluit onmiddellijk af als er al een opgegeven uitvoerbestand is
bestaat.

-C[:stream_specificatie] codec (input/output, per stroom)
-codec[:stream_specificatie] codec (input/output, per stroom)
Selecteer een encoder (indien gebruikt vóór een uitvoerbestand) of een decoder (indien gebruikt vóór een
invoerbestand) voor een of meer streams. codec is de naam van een decoder/encoder of een
speciale waarde "copy" (alleen uitvoer) om aan te geven dat de stream niet opnieuw
gecodeerd.

Bij voorbeeld

ffmpeg -i INPUT -map 0 -c:v libx264 -c:a kopie UITVOER

codeert alle videostreams met libx264 en kopieert alle audiostreams.

Voor elke stream wordt de laatste overeenkomende "c"-optie toegepast, dus

ffmpeg -i INPUT -map 0 -c kopiëren -c:v:1 libx264 -c:a:137 libvorbis UITVOER

kopieert alle streams behalve de tweede video, die wordt gecodeerd met libx264,
en de 138e audio, die zal worden gecodeerd met libvorbis.

-t duur (invoer uitvoer)
Bij gebruik als invoeroptie (vóór "-i"), beperk de duur gegevens gelezen van de
Invoer bestand.

Bij gebruik als uitvoeroptie (vóór een uitvoerbestandsnaam), stop met het schrijven van de uitvoer
nadat de duur is bereikt duur.

duur moet een tijdsduurspecificatie zijn, zie de Tijd duur sectie in de
ffmpeg-utils(1) handboek.

-to en -t sluiten elkaar uit en -t heeft voorrang.

-naar positie (uitgang)
Stop met het schrijven van de uitvoer naar positie. positie moet een specificatie van de tijdsduur zijn,
zien de Tijd duur sectie in de ffmpeg-utils(1) handboek.

-to en -t sluiten elkaar uit en -t heeft voorrang.

-fs limiet_grootte (uitgang)
Stel de maximale bestandsgrootte in, uitgedrukt in bytes.

-SS positie (invoer uitvoer)
Bij gebruik als invoeroptie (vóór "-i"), wordt in dit invoerbestand gezocht naar positie​ Notitie
dat het in de meeste formaten niet mogelijk is om precies te zoeken, dus ffmpeg zal zoeken naar de
dichtstbijzijnde zoekpunt ervoor positie. Bij het transcoderen en -nauwkeurig_zoeken is ingeschakeld
(standaard), dit extra segment tussen het zoekpunt en positie zal worden gedecodeerd
en weggegooid. Bij het kopiëren van streams of wanneer -noaccurate_seek wordt gebruikt, zal het zijn
bewaard gebleven.

Bij gebruik als uitvoeroptie (vóór een uitvoerbestandsnaam), wordt de invoer gedecodeerd maar genegeerd
totdat de tijdstempels bereiken positie.

positie moet een tijdsduurspecificatie zijn, zie de Tijd duur sectie in de
ffmpeg-utils(1) handboek.

-sseof positie (invoer uitvoer)
Zoals de optie "-ss", maar relatief ten opzichte van het "einde van bestand". Dat zijn negatieve waarden
eerder in het bestand staat 0 bij EOF.

-zijn offset compenseren (invoer)
Stel de offset van de invoertijd in.

compenseren moet een tijdsduurspecificatie zijn, zie de Tijd duur sectie in de
ffmpeg-utils(1) handboek.

De offset wordt toegevoegd aan de tijdstempels van de invoerbestanden. Een positieve offset specificeren
betekent dat de overeenkomstige streams worden vertraagd met de tijdsduur die is opgegeven in
compenseren.

-tijdstempel gegevens (uitgang)
Stel het opnametijdstempel in de container in.

gegevens moet een datumspecificatie zijn, zie de Datum sectie in de ffmpeg-utils(1) handboek.

-metadata[:metadata_specificatie] sleutel=waarde (output, per metadata)
Stel een sleutel/waarde-paar metadata in.

een optionele metadata_specificatie kan worden gegeven om metadata op streams of hoofdstukken in te stellen.
Zie "-map_metadata" documentatie voor details.

Deze optie overschrijft metadata ingesteld met "-map_metadata". Verwijderen is ook mogelijk
metadata door een lege waarde te gebruiken.

Bijvoorbeeld voor het instellen van de titel in het uitvoerbestand:

ffmpeg -i in.avi -metadata title="mijn titel" uit.flv

De taal van de eerste audiostream instellen:

ffmpeg -i INPUT -metadata:s:a:0 taal=eng UITVOER

-doelwit type dan: (uitgang)
Specificeer het doelbestandstype ("vcd", "svcd", "dvd", "dv", "dv50"). type dan: kan voorafgegaan worden
met "pal-", "ntsc-" of "film-" om de overeenkomstige standaard te gebruiken. Alle formaten
opties (bitrate, codecs, buffergroottes) worden dan automatisch ingesteld. Je kunt gewoon typen:

ffmpeg -i mijnbestand.avi -doel vcd /tmp/vcd.mpg

Desalniettemin kunt u extra opties specificeren zolang u weet dat dit niet het geval is
conflicteert met de norm, zoals in:

ffmpeg -i mijnbestand.avi -target vcd -bf 2 /tmp/vcd.mpg

-dframes aantal (uitgang)
Stel het aantal gegevensframes in dat moet worden uitgevoerd. Dit is een alias voor "-frames:d".

-frames[:stream_specificatie] frametelling (uitvoer, per stroom)
Stop daarna met schrijven naar de stream frametelling kaders.

-Q[:stream_specificatie] q (uitvoer, per stroom)
-qschaal[:stream_specificatie] q (uitvoer, per stroom)
Gebruik een vaste kwaliteitsschaal (VBR). De betekenis van q/qschaal is codec-afhankelijk. Als qschaal
wordt gebruikt zonder een stream_specificatie dan is het alleen van toepassing op de videostream, dit is
om compatibiliteit met eerder gedrag te behouden en dezelfde codec te specificeren
specifieke waarde voor 2 verschillende codecs, namelijk audio en video, is over het algemeen niet wat is
bedoeld wanneer er geen stream_specifier wordt gebruikt.

-filter[:stream_specificatie] filtergrafiek (uitvoer, per stroom)
Maak de filtergrafiek gespecificeerd door filtergrafiek en gebruik het om de stream te filteren.

filtergrafiek is een beschrijving van de filtergrafiek die op de stream moet worden toegepast en moet hebben
een enkele ingang en een enkele uitgang van hetzelfde type stream. In de filtergrafiek,
de ingang is gekoppeld aan het label "in", en de uitvoer aan het label "uit". Zie de
ffmpeg-filters handleiding voor meer informatie over de filtergraph syntaxis.

Zie de -filter_complex optie als u filtergrafieken met meerdere invoer wilt maken
en/of uitgangen.

-filter_script[:stream_specificatie] bestandsnaam (uitvoer, per stroom)
Deze optie is vergelijkbaar met: -filter, het enige verschil is dat het argument de
naam van het bestand waaruit een filtergrafiekbeschrijving moet worden gelezen.

-pre[:stream_specificatie] vooraf ingestelde_naam (uitvoer, per stroom)
Geef de voorinstelling op voor overeenkomende stream(s).

-statistieken (globaal)
Druk coderingsvoortgang/statistieken af. Het staat standaard aan, om het voor jou expliciet uit te schakelen
moet "-nostats" specificeren.

-voortgang url (globaal)
Stuur programmavriendelijke voortgangsinformatie naar url.

Voortgangsinformatie wordt ongeveer elke seconde geschreven en aan het einde van de
coderingsproces. Het is gemaakt van "sleutel=waarde" lijnen. sleutel bestaat alleen uit alfanumeriek
karakters. De laatste toets van een reeks voortgangsinformatie is altijd "voortgang".

-standaard
Schakel interactie in op standaardinvoer. Standaard ingeschakeld, tenzij standaardinvoer wordt gebruikt als
een invoer. Om interactie expliciet uit te schakelen, moet u "-nostdin" specificeren.

Het uitschakelen van interactie op standaardinvoer is bijvoorbeeld handig als ffmpeg in de
achtergrond procesgroep. Ongeveer hetzelfde resultaat kan worden bereikt met "ffmpeg ...
/dev/null" maar het vereist een shell.

-debug_ts (globaal)
Tijdstempelinformatie afdrukken. Het staat standaard uit. Deze optie is vooral handig voor
test- en foutopsporingsdoeleinden, en het uitvoerformaat kan veranderen van de ene versie naar
een andere, dus het mag niet worden gebruikt door draagbare scripts.

Zie ook de optie "-fdebug ts".

-bijvoegen bestandsnaam (uitgang)
Voeg een bijlage toe aan het uitvoerbestand. Dit wordt ondersteund door enkele formaten zoals Matroska
voor bijvoorbeeld lettertypen die worden gebruikt bij het weergeven van ondertitels. Bijlagen worden geïmplementeerd als een specifiek
type stream, dus deze optie voegt een nieuwe stream toe aan het bestand. Het is dan mogelijk
om per-stream-opties op deze stream op de gebruikelijke manier te gebruiken. Bijlagestreams gemaakt
met deze optie worden gemaakt na alle andere streams (dwz die gemaakt met
"-map" of automatische toewijzingen).

Merk op dat je voor Matroska ook de mimetype metadata tag moet instellen:

ffmpeg -i INPUT -attach DejaVuSans.ttf -metadata:s:2 mimetype=applicatie/x-truetype-font out.mkv

(ervan uitgaande dat de bijlagestroom de derde is in het uitvoerbestand).

-dump_bijlage[:stream_specificatie] bestandsnaam (invoer, per stroom)
Pak de overeenkomende bijlagestroom uit in een bestand met de naam bestandsnaam. Indien bestandsnaam is
leeg is, wordt de waarde van de metadatatag "filename" gebruikt.

Bijvoorbeeld om de eerste bijlage uit te pakken naar een bestand met de naam 'out.ttf':

ffmpeg -dump_attachment:t:0 uit.ttf -i INPUT

Om alle bijlagen uit bestanden te extraheren die worden bepaald door de "filename"-tag:

ffmpeg -dump_attachment:t "" -i INPUT

Technische opmerking -- bijlagen worden geïmplementeerd als codec-extradata, dus deze optie kan
daadwerkelijk worden gebruikt om extra gegevens uit elke stream te extraheren, niet alleen bijlagen.

- geen autorotatie
Schakel automatisch roterende video uit op basis van bestandsmetadata.

Video Opties
-vframes aantal (uitgang)
Stel het aantal videoframes in dat moet worden uitgevoerd. Dit is een alias voor "-frames:v".

-R[:stream_specificatie] fps (input/output, per stroom)
Framesnelheid instellen (Hz-waarde, breuk of afkorting).

Negeer als invoeroptie eventuele tijdstempels die in het bestand zijn opgeslagen en genereer in plaats daarvan
tijdstempels uitgaande van een constante framesnelheid fps. Dit is niet hetzelfde als de -frame rate
optie gebruikt voor sommige invoerformaten zoals image2 of v4l2 (het was vroeger hetzelfde in
oudere versies van FFmpeg). Bij twijfel gebruiken -frame rate in plaats van de invoeroptie -r.

Als uitvoeroptie kunt u invoerframes dupliceren of verwijderen om een ​​constant uitvoerframe te bereiken
tarief fps.

-S[:stream_specificatie] grootte (input/output, per stroom)
Framemaat instellen.

Als invoeroptie is dit een snelkoppeling voor de videoformaat privéoptie, erkend
door sommige demuxers waarvan de framegrootte ofwel niet in het bestand is opgeslagen of wel
configureerbaar - bijv. onbewerkte video of videograbbers.

Als uitvoeroptie voegt dit het videofilter "schaal" toe aan het einde van de
bijbehorende filtergrafiek. Gebruik het filter "schaal" rechtstreeks om het in te voegen bij de
begin of ergens anders.

Het formaat is bxh (standaard - hetzelfde als bron).

-aspect[:stream_specificatie] verschijning (uitvoer, per stroom)
Stel de beeldverhouding van de videoweergave in die wordt gespecificeerd door verschijning.

verschijning kan een getallenreeks met drijvende komma zijn, of een reeks van de vorm num:dag, Waar
num en dag zijn de teller en noemer van de beeldverhouding. Bijvoorbeeld "4:3",
"16:9", "1.3333" en "1.7777" zijn geldige argumentwaarden.

Indien gebruikt in combinatie met -vcodec kopiëren, heeft dit invloed op de beeldverhouding die is opgeslagen op
containerniveau, maar niet de beeldverhouding die is opgeslagen in gecodeerde frames, als die bestaat.

-vn (uitgang)
Schakel video-opname uit.

-vcodec codec (uitgang)
Stel de videocodec in. Dit is een alias voor "-codec:v".

-doorgang[:stream_specificatie] n (uitvoer, per stroom)
Selecteer het pasnummer (1 of 2). Het wordt gebruikt om videocodering in twee stappen uit te voeren. De
statistieken van de video worden in de eerste doorgang opgenomen in een logbestand (zie ook de
optie -passlogfile), en in de tweede doorgang wordt dat logbestand gebruikt om het
video met de exact gevraagde bitsnelheid. Bij pas 1 mag je audio gewoon deactiveren en
stel output in op null, voorbeelden voor Windows en Unix:

ffmpeg -i foo.mov -c:v libxvid -pass 1 -an -f rawvideo -y NUL
ffmpeg -i foo.mov -c:v libxvid -pass 1 -an -f rawvideo -y /dev/null

-passlogbestand[:stream_specificatie] voorvoegsel (uitvoer, per stroom)
Stel het voorvoegsel van de logbestandsnaam in twee stappen in op voorvoegsel, is het standaardvoorvoegsel voor de bestandsnaam
``ffmpeg2pass''. De volledige bestandsnaam zal zijn PREFIX-N.log, waarbij N een getal is
specifiek voor de uitvoerstroom

-vf filtergrafiek (uitgang)
Maak de filtergrafiek gespecificeerd door filtergrafiek en gebruik het om de stream te filteren.

Dit is een alias voor "-filter:v", zie de -filter optie.

Geavanceerd Video opties
-pix_fmt[:stream_specificatie] formaat (input/output, per stroom)
Pixelformaat instellen. Gebruik "-pix_fmts" om alle ondersteunde pixelformaten weer te geven. Als de
geselecteerde pixelformaat kan niet worden geselecteerd, ffmpeg zal een waarschuwing afdrukken en het selecteren
beste pixelformaat ondersteund door de encoder. Als pix_fmt wordt voorafgegaan door een "+", ffmpeg
wordt afgesloten met een foutmelding als het gevraagde pixelformaat niet kan worden geselecteerd, en
automatische conversies binnen filtergrafieken zijn uitgeschakeld. Als pix_fmt is een enkele "+",
ffmpeg selecteert hetzelfde pixelformaat als de invoer (of grafische uitvoer) en automatisch
conversies zijn uitgeschakeld.

-sws_vlaggen vlaggen (invoer uitvoer)
Stel SwScaler-vlaggen in.

-vdt n
Drempel weggooien.

-rc_overschrijven[:stream_specificatie] override (uitvoer, per stroom)
Snelheidscontrole overschrijven voor specifieke intervallen, opgemaakt als "int,int,int" lijst
gescheiden met schuine strepen. De twee eerste waarden zijn de begin- en eindframenummers, laatste
de ene is quantizer om te gebruiken als deze positief is, of de kwaliteitsfactor als deze negatief is.

-ilme
Forceer interlacing-ondersteuning in encoder (alleen MPEG-2 en MPEG-4). Gebruik deze optie als
uw invoerbestand is geïnterlinieerd en u wilt het geïnterlinieerde formaat tot een minimum beperken
verliezen. Het alternatief is om de invoerstroom te de-interlacen met -deïnterliniëring, Maar
deïnterliniëring introduceert verliezen.

-psnr
Bereken PSNR van gecomprimeerde frames.

-vstats
Dump videocoderingsstatistieken naar vstats_HHMMSS.log.

-vstats_bestand filet
Dump videocoderingsstatistieken naar filet.

-bovenkant[:stream_specificatie] n (uitvoer, per stroom)
top=1/bottom=0/auto=-1 veld eerst

-gelijkstroom nauwkeurigheid
Intra_dc_precisie.

-vtag viercc/tag (uitgang)
Forceer videotag/fourcc. Dit is een alias voor "-tag:v".

-qphist (globaal)
Toon QP-histogram

-vbsf bitstream_filter
Verouderd zie -bsf

-force_key_frames[:stream_specificatie] niet de tijd of[,niet de tijd of (uitvoer, per stroom)
-force_key_frames[:stream_specificatie] uitdr:uitdrukken (uitvoer, per stroom)
Forceer keyframes op de opgegeven tijdstempels, meer bepaald op de eerste frames erna
elke opgegeven tijd.

Als het argument wordt voorafgegaan door "expr:", wordt de tekenreeks uitdrukken wordt geïnterpreteerd als een
uitdrukking en wordt geëvalueerd voor elk frame. Een keyframe wordt geforceerd in het geval dat de
evaluatie is niet nul.

Als een van de tijden is ""hoofdstukken"[delta]", wordt het uitgebreid in de tijd van de
begin van alle hoofdstukken in het bestand, verschoven met delta, uitgedrukt als een tijd in
seconden. Deze optie kan handig zijn om ervoor te zorgen dat er een zoekpunt aanwezig is bij a
hoofdstukmarkering of een andere aangewezen plaats in het uitvoerbestand.

Om bijvoorbeeld een keyframe in te voegen op 5 minuten, plus keyframes 0.1 seconde voor de
begin van elk hoofdstuk:

-force_key_frames 0:05:00,hoofdstukken-0.1

De uitdrukking in uitdrukken kan de volgende constanten bevatten:

n het nummer van het huidige verwerkte frame, beginnend bij 0

n_gedwongen
het aantal geforceerde frames

vorige_gedwongen_n
het nummer van het vorige geforceerde frame, het is "NAN" als er geen keyframe is geforceerd
nog

vorige_gedwongen_t
de tijd van het vorige geforceerde frame, is het "NAN" wanneer er nog geen keyframe is geforceerd

t de tijd van het huidige verwerkte frame

Om bijvoorbeeld elke 5 seconden een keyframe te forceren, kunt u het volgende specificeren:

-force_key_frames expr:gte(t,n_forced*5)

Om een ​​keyframe te forceren 5 seconden na de tijd van de laatste geforceerde frame, beginnend vanaf
tweede 13:

-force_key_frames expr:if(isnan(vorige_forced_t),gte(t,13),gte(t,prev_forced_t+5))

Merk op dat het forceren van te veel keyframes zeer schadelijk is voor de lookahead-algoritmen van
bepaalde encoders: het gebruik van vaste GOP-opties of iets dergelijks zou efficiënter zijn.

-copyinkf[:stream_specificatie] (uitvoer, per stroom)
Kopieer bij het kopiëren van streams ook niet-sleutelframes die aan het begin zijn gevonden.

-hwaccel[:stream_specificatie] hwaccel (invoer, per stroom)
Gebruik hardwareversnelling om de overeenkomende stream(s) te decoderen. De toegestane waarden van
hwaccel zijn:

geen
Gebruik geen hardwareversnelling (standaard).

auto
Selecteer automatisch de hardwareversnellingsmethode.

VDA Gebruik Apple VDA-hardwareversnelling.

vvdpau
Gebruik VDPAU (Video Decode and Presentation API for Unix) hardwareversnelling.

dxva2
Gebruik DXVA2 (DirectX Video Acceleration) hardwareversnelling.

Deze optie heeft geen effect als de geselecteerde hwaccel niet beschikbaar is of niet wordt ondersteund door
de gekozen decoder.

Merk op dat de meeste versnellingsmethoden bedoeld zijn voor afspelen en niet sneller zullen zijn
dan softwaredecodering op moderne CPU's. Aanvullend, ffmpeg zal meestal moeten kopiëren
de gedecodeerde frames van het GPU-geheugen naar het systeemgeheugen, wat resulteert in meer
prestatie verlies. Deze optie is dus vooral handig om te testen.

-hwaccel_apparaat[:stream_specificatie] hwaccel_apparaat (invoer, per stroom)
Selecteer een apparaat om te gebruiken voor hardwareversnelling.

Deze optie heeft alleen zin als de -hwaccel optie is ook gespecificeerd. Het is precies
betekenis hangt af van de specifieke gekozen hardwareversnellingsmethode.

vvdpau
Voor VDPAU specificeert deze optie het te gebruiken X11-display/scherm. Als deze optie is
niet gespecificeerd, de waarde van de DISPLAY omgevingsvariabele wordt gebruikt

dxva2
Voor DXVA2 moet deze optie het nummer van de te gebruiken beeldschermadapter bevatten.
Als deze optie niet is opgegeven, wordt de standaardadapter gebruikt.

-hwaccels
Maak een lijst van alle methoden voor hardwareversnelling die worden ondersteund in deze versie van ffmpeg.

Audio Opties
-aframes aantal (uitgang)
Stel het aantal audioframes in dat moet worden uitgevoerd. Dit is een alias voor "-frames:a".

-ar[:stream_specificatie] frequentie (input/output, per stroom)
Stel de audiobemonsteringsfrequentie in. Voor uitvoerstromen is deze standaard ingesteld op de
frequentie van de overeenkomstige invoerstroom. Voor invoerstromen maakt deze optie alleen
gevoel voor apparaten voor het grijpen van audio en onbewerkte demuxers en wordt toegewezen aan de overeenkomstige
demuxer-opties.

-aq q (uitgang)
Stel de audiokwaliteit in (codec-specifiek, VBR). Dit is een alias voor -q:a.

-ac[:stream_specificatie] kanalen (input/output, per stroom)
Stel het aantal audiokanalen in. Voor uitvoerstromen is deze standaard ingesteld op de
aantal ingevoerde audiokanalen. Voor invoerstromen is deze optie alleen zinvol voor
apparaten voor het grijpen van audio en onbewerkte demuxers en wordt toegewezen aan de overeenkomstige demuxer
opties.

-een (uitgang)
Schakel audio-opname uit.

-codec codec (invoer uitvoer)
Stel de audiocodec in. Dit is een alias voor "-codec:a".

-voorbeeld_fmt[:stream_specificatie] voorbeeld_fmt (uitvoer, per stroom)
Stel het formaat van het audiofragment in. Gebruik "-sample_fmts" om een ​​lijst met ondersteunde voorbeelden te krijgen
formaten.

-af filtergrafiek (uitgang)
Maak de filtergrafiek gespecificeerd door filtergrafiek en gebruik het om de stream te filteren.

Dit is een alias voor "-filter:a", zie de -filter optie.

Geavanceerd Audio opties
-een label viercc/tag (uitgang)
Forceer audiotag/fourcc. Dit is een alias voor "-tag:a".

-absf bitstream_filter
Verouderd, zie -bsf

-raad_layout_max kanalen (invoer, per stroom)
Als een indeling van een ingangskanaal niet bekend is, probeer dan alleen te raden of deze overeenkomt met at
meeste van het opgegeven aantal kanalen. Bijvoorbeeld 2 vertelt aan ffmpeg herkennen 1
kanaal als mono en 2 kanalen als stereo maar niet 6 kanalen als 5.1. De standaardwaarde is naar
probeer altijd te raden. Gebruik 0 om alle raden uit te schakelen.

Subtitel opties
-codec codec (invoer uitvoer)
Stel de ondertitelcodec in. Dit is een alias voor "-codec:s".

-sn (uitgang)
Ondertiteling uitschakelen.

-sbf bitstream_filter
Verouderd, zie -bsf

Geavanceerd Subtitel opties
-fix_sub_duur
Herstel de duur van ondertitels. Wacht voor elke ondertitel op het volgende pakket daarin
stream en pas de duur van de eerste aan om overlapping te voorkomen. Dit is nodig met
sommige codecs voor ondertitels, vooral DVB-ondertitels, omdat de duur in het origineel is
pakket is slechts een ruwe schatting en het einde wordt feitelijk gemarkeerd door een lege ondertitel
kader. Als u deze optie niet gebruikt wanneer dat nodig is, kan dit leiden tot overdreven duur
of muxing-fouten als gevolg van niet-monotone tijdstempels.

Merk op dat deze optie de uitvoer van alle gegevens vertraagt ​​tot het volgende ondertitelpakket
wordt gedecodeerd: het kan het geheugenverbruik en de latentie aanzienlijk verhogen.

-Canvas grootte grootte
Stel de grootte in van het canvas dat wordt gebruikt om ondertitels weer te geven.

Geavanceerd opties
-kaart [-]invoer_bestand_id[:stream_specificatie][,sync_bestand_id[:stream_specificatie]] | [linklabel]
(uitgang)
Wijs een of meer invoerstromen aan als bron voor het uitvoerbestand. Elke invoerstroom
wordt geïdentificeerd door de index van het invoerbestand invoer_bestand_id en de invoerstroomindex
input_stream_id binnen het invoerbestand. Beide indices beginnen bij 0. Indien opgegeven,
sync_bestand_id:stream_specificatie stelt in welke invoerstroom wordt gebruikt als presentatiesynchronisatie
referentie.

De eerste "-map"-optie op de opdrachtregel specificeert de bron voor uitvoerstroom 0,
de tweede "-map" optie specificeert de bron voor uitvoerstroom 1, etc.

Een "-" teken voor de stream-ID creëert een "negatieve" mapping. Het
schakelt overeenkomende streams van reeds gemaakte mappings uit.

Een alternatief [linklabel] formulier zal uitvoer van complexe filtergrafieken in kaart brengen (zie de
-filter_complex optie) naar het uitvoerbestand. linklabel moet overeenkomen met een gedefinieerde
uitvoerkoppelingslabel in de grafiek.

Bijvoorbeeld om ALLE streams van het eerste invoerbestand naar uitvoer toe te wijzen

ffmpeg -i INPUT -map 0 uitvoer

Als u bijvoorbeeld twee audiostreams in het eerste invoerbestand heeft, zijn deze streams
geïdentificeerd door "0:0" en "0:1". U kunt "-map" gebruiken om te selecteren in welke streams u wilt plaatsen
een uitvoerbestand. Bijvoorbeeld:

ffmpeg -i INPUT -kaart 0:1 uit.wav

zal de invoerstroom in kaart brengen INVOER geïdentificeerd door "0:1" naar de (enkele) uitvoerstroom
in uit.wav.

Bijvoorbeeld om de stream met index 2 uit het invoerbestand te selecteren een.mov (gespecificeerd door de
identifier "0:2"), en stream met index 6 van input b.mov (gespecificeerd door de
identifier "1:6") en kopieer ze naar het uitvoerbestand uit.bewegen:

ffmpeg -i a.mov -i b.mov -c kopiëren -map 0:2 -map 1:6 out.mov

Alle video en de derde audiostream uit een invoerbestand selecteren:

ffmpeg -i INPUT -map 0:v -map 0:a:2 UITVOER

Gebruik negatieve toewijzingen om alle streams behalve de tweede audio in kaart te brengen

ffmpeg -i INPUT -map 0 -map -0:a:1 UITVOER

De Engelse audiostream kiezen:

ffmpeg -i INPUT -map 0:m:taal:eng UITVOER

Merk op dat het gebruik van deze optie de standaardtoewijzingen voor dit uitvoerbestand uitschakelt.

-negeer_onbekend
Negeer invoerstromen met een onbekend type in plaats van te mislukken als het kopiëren van dergelijke stromen is
geprobeerd.

-kopie_onbekend
Sta toe dat invoerstromen met een onbekend type worden gekopieerd in plaats van te mislukken als dit wordt gekopieerd
streams wordt geprobeerd.

-kaart_kanaal
[invoer_bestand_id.stream_specificatie.Kanaal Nr|-1][:uitvoer_bestand_id.stream_specificatie]
Wijs een audiokanaal toe van een bepaalde invoer naar een uitvoer. Als
uitvoer_bestand_id.stream_specificatie niet is ingesteld, wordt het audiokanaal op iedereen toegewezen
de audiostreams.

Gebruik "-1" in plaats van invoer_bestand_id.stream_specificatie.Kanaal Nr zal een gedempt in kaart brengen
kanaal.

Bijvoorbeeld veronderstellen INVOER is een stereo-audiobestand, kunt u de twee audio wisselen
kanalen met het volgende commando:

ffmpeg -i INPUT -map_channel 0.0.1 -map_channel 0.0.0 UITVOER

Als u het eerste kanaal wilt dempen en het tweede wilt behouden:

ffmpeg -i INPUT -map_channel -1 -map_channel 0.0.1 UITVOER

De volgorde van de optie "-map_channel" specificeert de volgorde van de kanalen in het
uitgangsstroom. De lay-out van het uitvoerkanaal wordt geraden uit het aantal toegewezen kanalen
(mono als één "-map_channel", stereo als twee, enz.). Het gebruik van "-ac" in combinatie van
"-map_channel" zorgt ervoor dat de kanaalversterkingsniveaus worden bijgewerkt als invoer- en uitvoerkanaal
layouts komen niet overeen (bijvoorbeeld twee "-map_channel" opties en "-ac 6").

U kunt ook elk kanaal van een ingang extraheren naar specifieke uitgangen; het volgende
opdracht extraheert twee kanalen van de INVOER audiostream (bestand 0, stream 0) naar de
degenen OUTPUT_CH0 en OUTPUT_CH1 uitgangen:

ffmpeg -i INPUT -kaart_kanaal 0.0.0 OUTPUT_CH0 -kaart_kanaal 0.0.1 OUTPUT_CH1

Het volgende voorbeeld splitst de kanalen van een stereo-ingang in twee aparte streams,
die in hetzelfde uitvoerbestand worden geplaatst:

ffmpeg -i stereo.wav -map 0:0 -map 0:0 -map_channel 0.0.0:0.0 -map_channel 0.0.1:0.1 -y out.ogg

Houd er rekening mee dat momenteel elke uitvoerstroom alleen kanalen van één enkele invoer kan bevatten
stroom; u kunt bijvoorbeeld "-map_channel" niet gebruiken om meerdere ingangsaudiokanalen te kiezen
opgenomen in verschillende streams (van dezelfde of verschillende bestanden) en voeg ze samen in
een enkele uitvoerstroom. Het is daarom momenteel niet mogelijk om bijvoorbeeld te draaien
twee afzonderlijke monostreams in één stereostream. Het splitsen van een stereo
streamen in twee enkelkanaals monostreams is mogelijk.

Als u deze functie nodig hebt, is een mogelijke oplossing het gebruik van de samenvoegen filter. Voor
als u bijvoorbeeld een mediabestand (hier invoer.mkv) met 2 mono audio streams in
één enkele audiostream met stereokanaal (en de videostream behouden), kunt u de
volgende opdracht:

ffmpeg -i input.mkv -filter_complex "[0:1] [0:2] samenvoegen" -c:a pcm_s16le -c:v copy output.mkv

-map_metagegevens[:metadata_spec_out] in bestand[:metadata_spec_in] (output, per metadata)
Stel metadata-informatie in van het volgende uitvoerbestand van in bestand. Merk op dat dit bestand is
indexen (nul-gebaseerd), niet bestandsnamen. Optioneel metadata_spec_in/uit parameters
geef aan welke metadata gekopieerd moeten worden. Een metadataspecificatie kan de volgende vormen hebben:

g globale metadata, dwz metadata die van toepassing zijn op het hele bestand

s[:stream_spec]
metadata per stream. stream_spec is een stroomspecificatie zoals beschreven in de Stroom
bestekschrijvers hoofdstuk. In een specificatie van invoermetagegevens is de eerste overeenkomende stroom
gekopieerd van. In een uitvoermetadataspecificatie worden alle overeenkomende streams gekopieerd naar.

c:hoofdstuk_index
metadata per hoofdstuk. hoofdstuk_index is de op nul gebaseerde hoofdstukindex.

p:programma_index
metadata per programma. programma_index is de op nul gebaseerde programma-index.

Als de metagegevensspecificatie wordt weggelaten, is deze standaard globaal.

Standaard worden globale metadata gekopieerd van het eerste invoerbestand, per stream en per
metagegevens van hoofdstukken worden samen met streams/hoofdstukken gekopieerd. Deze standaardtoewijzingen zijn
uitgeschakeld door een toewijzing van het relevante type te maken. Een negatieve bestandsindex kan zijn
gebruikt om een ​​dummy mapping te maken die automatisch kopiëren gewoon uitschakelt.

Bijvoorbeeld om metadata van de eerste stream van het invoerbestand naar global te kopiëren
metadata van het uitvoerbestand:

ffmpeg -i in.ogg -map_metadata 0:s:0 uit.mp3

Om het omgekeerde te doen, dwz globale metadata kopiëren naar alle audiostreams:

ffmpeg -i in.mkv -map_metadata:s:a 0:g uit.mkv

Merk op dat eenvoudige 0 ook zou werken in dit voorbeeld, aangezien globale metadata dat wel zijn
standaard aangenomen.

-kaart_hoofdstukken invoer_bestand_index (uitgang)
Kopieer hoofdstukken uit invoerbestand met index invoer_bestand_index naar het volgende uitvoerbestand. Als
er geen hoofdstuktoewijzing is opgegeven, dan worden hoofdstukken gekopieerd uit het eerste invoerbestand
met minimaal één hoofdstuk. Gebruik een negatieve bestandsindex om het kopiëren van hoofdstukken uit te schakelen.

benchmark (globaal)
Toon benchmarking-informatie aan het einde van een codering. Toont gebruikte CPU-tijd en
maximaal geheugenverbruik. Het maximale geheugenverbruik wordt niet overal ondersteund
systemen, wordt het meestal weergegeven als 0 als het niet wordt ondersteund.

-benchmark_alles (globaal)
Toon benchmarking-informatie tijdens de codering. Toont CPU-tijd die in verschillende stappen wordt gebruikt
(audio/video coderen/decoderen).

-tijdslimiet duur (globaal)
Afsluiten nadat ffmpeg is uitgevoerd duur seconden.

-dumpen (globaal)
Dump elk invoerpakket naar stderr.

-hexadecimaal (globaal)
Bij het dumpen van pakketten, dumpt u ook de payload.

-opnieuw (invoer)
Lees invoer met native framesnelheid. Hoofdzakelijk gebruikt om een ​​grijpapparaat te simuleren. of live-invoer
stream (bijvoorbeeld bij het lezen van een bestand). Mag niet worden gebruikt met echte grijpapparaten of
live invoerstromen (waar dit pakketverlies kan veroorzaken). Standaard ffmpeg probeert om
lees de input(s) zo snel mogelijk. Deze optie vertraagt ​​het lezen van de
input(s) naar de oorspronkelijke framesnelheid van de input(s). Het is handig voor real-time output
(bijv. livestreaming).

-lus_invoer
Lus over de invoerstroom. Momenteel werkt het alleen voor beeldstreams. Deze optie is
gebruikt voor automatische FFserver-testen. Deze optie is verouderd, gebruik -loop 1.

-lus_uitvoer aantal keren
Herhaaldelijk herhalen van uitvoer voor indelingen die herhalen ondersteunen, zoals geanimeerde GIF (0 will
lus de uitvoer oneindig). Deze optie is verouderd, gebruik -loop.

-vsync parameter
Methode voor videosynchronisatie. Om compatibiliteitsredenen kunnen oude waarden als getallen worden opgegeven.
Nieuw toegevoegde waarden moeten altijd als tekenreeksen worden opgegeven.

0, passthrough
Elk frame wordt met zijn tijdstempel doorgegeven van de demuxer naar de muxer.

1, cfr
Frames worden gedupliceerd en verwijderd om precies de gevraagde constante te bereiken
frame rate.

2, VFR
Frames worden doorgegeven met hun tijdstempel of laten vallen om 2 te voorkomen
frames dezelfde tijdstempel hebben.

laten vallen
Als passthrough maar vernietigt alle tijdstempels, waardoor de muxer vers genereert
tijdstempels op basis van framesnelheid.

-1, auto
Kiest tussen 1 en 2, afhankelijk van de mogelijkheden van de muxer. Dit is de standaardinstelling
methode.

Merk op dat de tijdstempels hierna verder kunnen worden gewijzigd door de muxer. Voor
bijvoorbeeld in het geval dat de formaatoptie vermijden_negative_ts is ingeschakeld.

Met -map kunt u selecteren uit welke stream de tijdstempels genomen moeten worden. Jij kan
laat video of audio ongewijzigd en synchroniseer de resterende stream(s) met het
onveranderde een.

-frame_drop_drempel parameter
Frame drop-drempel, die specificeert hoeveel achter videoframes vóór hen kunnen zijn
zijn gevallen. In framesnelheidseenheden, dus 1.0 is één frame. De standaardwaarde is -1.1. Een
mogelijke usecase is om framedrops te vermijden in het geval van luidruchtige tijdstempels of om te verhogen
frame drop-precisie in het geval van exacte tijdstempels.

-asynchroon monsters_per_seconde
Methode voor audiosynchronisatie. "Rekt/knijpt" de audiostream om overeen te komen met de tijdstempels, de
parameter is het maximale aantal samples per seconde waarmee de audio wordt gewijzigd. -asynchroon 1
is een speciaal geval waarbij alleen het begin van de audiostream zonder correctie wordt gecorrigeerd
latere correctie.

Merk op dat de tijdstempels hierna verder kunnen worden gewijzigd door de muxer. Voor
bijvoorbeeld in het geval dat de formaatoptie vermijden_negative_ts is ingeschakeld.

Deze optie is afgeschaft. Gebruik in plaats daarvan het audiofilter "aresample".

-kopieën
Verwerk invoertijdstempels niet, maar behoud hun waarden zonder te proberen ze op te schonen
hen. Verwijder met name de initiële waarde voor de starttijdoffset niet.

Merk op dat, afhankelijk van de vsync optie of op specifieke muxer-verwerking (bijv
de formaatoptie vermijden_negative_ts is ingeschakeld) komen de uitvoertijdstempels mogelijk niet overeen
met de ingevoerde tijdstempels, zelfs als deze optie is geselecteerd.

-start_bij_nul
Bij gebruik bij kopijen, verschuif invoertijdstempels zodat ze bij nul beginnen.

Dit betekent dat het gebruik van bijvoorbeeld "-ss 50" ervoor zorgt dat uitvoertijdstempels beginnen bij 50 seconden,
ongeacht op welk tijdstip het invoerbestand is gestart.

-copytb mode
Geef op hoe de tijdbasis van de encoder moet worden ingesteld bij het kopiëren van streams. mode is een geheel getal
numerieke waarde en kan een van de volgende waarden aannemen:

1 Gebruik de demuxer-tijdbasis.

De tijdbasis wordt van de overeenkomstige ingang naar de uitgangsencoder gekopieerd
demuxer. Dit is soms nodig om niet-monotoon toenemen te voorkomen
tijdstempels bij het kopiëren van videostreams met variabele framesnelheid.

0 Gebruik de tijdbasis van de decoder.

De tijdbasis wordt van de overeenkomstige ingang naar de uitgangsencoder gekopieerd
decoder.

-1 Probeer de keuze automatisch te maken om een ​​gezonde output te genereren.

De standaardwaarde is -1.

-kortste (uitgang)
Voltooi het coderen wanneer de kortste invoerstroom eindigt.

-dts_delta_drempel
Tijdstempel discontinuïteit delta drempel.

-muxvertraging seconden (invoer)
Stel de maximale demux-decoderingsvertraging in.

-muxvoorladen seconden (invoer)
Stel de initiële demux-decoderingsvertraging in.

-streamid uitvoerstroomindex:nieuwe-waarde (uitgang)
Wijs een nieuwe stream-id-waarde toe aan een uitvoerstream. Deze optie moet worden opgegeven
vóór de naam van het uitvoerbestand waarop het van toepassing is. Voor de situatie waar meerdere
uitvoerbestanden bestaan, kan een streamid opnieuw worden toegewezen aan een andere waarde.

Om bijvoorbeeld stream 0 PID in te stellen op 33 en stream 1 PID op 36 voor een uitgang
mpegts-bestand:

ffmpeg -i infile -streamid 0:33 -streamid 1:36 uit.ts

-bsf[:stream_specificatie] bitstream_filters (uitvoer, per stroom)
Stel bitstreamfilters in voor overeenkomende streams. bitstream_filters is een door komma's gescheiden
lijst met bitstreamfilters. Gebruik de optie "-bsfs" om de lijst met bitstreams te krijgen
filters.

ffmpeg -i h264.mp4 -c:v kopiëren -bsf:v h264_mp4toannexb -an out.h264

ffmpeg -i bestand.mov -an -vn -bsf:s mov2textsub -c:s kopie -f rawvideo sub.txt

-label[:stream_specificatie] codec_tag (input/output, per stroom)
Forceer een tag/fourcc voor overeenkomende streams.

-tijdcode hh:mm:ssSeptemberff
Geef de tijdcode op voor schrijven. September is ':' voor non-drop tijdcode en ';' (of voor
laten vallen.

ffmpeg -i invoer.mpg -tijdcode 01:02:03.04 -r 30000/1001 -s ntsc uitvoer.mpg

-filter_complex filtergrafiek (globaal)
Definieer een complexe filtergrafiek, dwz een met een willekeurig aantal ingangen en/of uitgangen.
Voor eenvoudige grafieken - die met één ingang en één uitgang van hetzelfde type - zie de
-filter opties. filtergrafiek is een beschrijving van de filtergrafiek, zoals beschreven in de
``Filtergraph syntax'' sectie van de ffmpeg-filters handleiding.

Invoerlinklabels moeten verwijzen naar invoerstromen met behulp van de
"[file_index:stream_specifier]" syntaxis (dwz hetzelfde als -kaart toepassingen). Als
stream_specificatie overeenkomt met meerdere streams, wordt de eerste gebruikt. Een ongelabeld
invoer wordt verbonden met de eerste ongebruikte invoerstroom van het overeenkomende type.

Uitvoerlinklabels worden aangeduid met -kaart. Niet-gelabelde uitvoer wordt toegevoegd aan de eerste
uitvoer bestand.

Merk op dat het met deze optie mogelijk is om alleen lavfi-bronnen te gebruiken zonder normal
invoerbestanden.

Bijvoorbeeld om een ​​afbeelding over een video heen te leggen

ffmpeg -i video.mkv -i image.png -filter_complex '[0:v][1:v]overlay[out]' -map
'[uit]' uit.mkv

Hier verwijst "[0:v]" naar de eerste videostream in het eerste invoerbestand, die is gekoppeld
naar de eerste (hoofd)ingang van het overlayfilter. Zo ook de eerste videostream binnen
de tweede ingang is gekoppeld aan de tweede (overlay) ingang van overlay.

Ervan uitgaande dat er slechts één videostream in elk invoerbestand is, kunnen we invoerlabels weglaten,
dus het bovenstaande is gelijk aan

ffmpeg -i video.mkv -i image.png -filter_complex 'overlay[out]' -map
'[uit]' uit.mkv

Verder kunnen we het uitvoerlabel en de enkele uitvoer uit de filtergrafiek weglaten
wordt automatisch aan het uitvoerbestand toegevoegd, dus we kunnen gewoon schrijven

ffmpeg -i video.mkv -i image.png -filter_complex 'overlay' uit.mkv

Om 5 seconden pure rode video te genereren met behulp van de lavfi "kleur" -bron:

ffmpeg -filter_complex 'kleur=c=rood' -t 5 uit.mkv

-lavfi filtergrafiek (globaal)
Definieer een complexe filtergrafiek, dwz een met een willekeurig aantal ingangen en/of uitgangen.
Gelijkwaardig aan -filter_complex.

-filter_complex_script bestandsnaam (globaal)
Deze optie is vergelijkbaar met: -filter_complex, het enige verschil is dat het argument is
de naam van het bestand waaruit een complexe filtergrafiekbeschrijving moet worden gelezen.

-nauwkeurig_zoeken (invoer)
Deze optie schakelt nauwkeurig zoeken in invoerbestanden in of uit met de -SS optie.
Het is standaard ingeschakeld, dus het zoeken is nauwkeurig bij het transcoderen. Gebruik
-noaccurate_seek om het uit te schakelen, wat bijvoorbeeld handig kan zijn bij het kopiëren van bepaalde streams en
de anderen transcoderen.

-zoek_tijdstempel (invoer)
Deze optie schakelt het zoeken op tijdstempel in invoerbestanden met de -SS
keuze. Het is standaard uitgeschakeld. Indien ingeschakeld, wordt het argument voor de -SS Optie is
beschouwd als een werkelijke tijdstempel en wordt niet gecompenseerd door de starttijd van het bestand. Dit
is alleen van belang voor bestanden die niet beginnen met tijdstempel 0, zoals transportstromen.

-thread_queue_size grootte (invoer)
Deze optie stelt het maximale aantal pakketten in de wachtrij in bij het lezen van het bestand of
apparaat. Bij livestreams met lage latentie / hoge snelheid kunnen pakketten worden weggegooid als ze
niet tijdig worden gelezen; door deze waarde te verhogen, kan dit worden voorkomen.

-override_ffserver (globaal)
Overschrijft de invoerspecificaties van ffserver. Met deze optie kunt u elke map in kaart brengen
invoerstroom naar ffserver en controle over vele aspecten van de codering van ffmpeg. Zonder
deze optie ffmpeg zal doorgeven aan ffserver wat wordt gevraagd door ffserver.

De optie is bedoeld voor gevallen waarin functies nodig zijn die niet gespecificeerd kunnen worden
ffserver maar kan zijn ffmpeg.

-sdp_bestand filet (globaal)
Print sdp-informatie voor een uitvoerstroom naar filet. Dit maakt het mogelijk om sdp te dumpen
informatie wanneer ten minste één uitvoer geen rtp-stream is. (Vereist ten minste één van
de uitvoerformaten zijn rtp).

-weggooien (invoer)
Maakt het mogelijk om specifieke streams of frames van streams weg te gooien bij de demuxer. Niet alles
demuxers ondersteunen dit.

geen
Gooi geen frame weg.

verzuim
Standaard, waarbij geen frames worden verwijderd.

Noref
Gooi alle niet-referentieframes weg.

bidir
Gooi alle bidirectionele frames weg.

geen sleutel
Verwijder alle frames behalve keyframes.

allen Gooi alle frames weg.

-xfout (globaal)
Stop en sluit af bij een fout

Als speciale uitzondering kunt u een bitmap-ondertitelingsstroom als invoer gebruiken: dat zal het zijn
geconverteerd naar een video met dezelfde grootte als de grootste video in het bestand, of 720x576 indien
er is geen video aanwezig. Merk op dat dit een experimentele en tijdelijke oplossing is. Het zal zijn
verwijderd zodra libavfilter de juiste ondersteuning voor ondertitels heeft.

Om bijvoorbeeld ondertitels hard te coderen bovenop een DVB-T-opname die is opgeslagen in MPEG-TS-indeling,
de ondertiteling met 1 seconde vertragen:

ffmpeg -i input.ts -filter_complex \
'[#0x2ef] setpts=PTS+1/TB [sub] ; [#0x2d0] [sub] overlay' \
-sn -map '#0x2dc' uitvoer.mkv

(0x2d0, 0x2dc en 0x2ef zijn de MPEG-TS PID's van respectievelijk de video-, audio- en
ondertitels streams; 0:0, 0:3 en 0:7 zouden ook gewerkt hebben)

Voorkeursinstelling bestanden
Een vooraf ingesteld bestand bevat een reeks van optie=waarde paren, één voor elke regel, met vermelding van a
volgorde van opties die lastig te specificeren zijn op de opdrachtregel. Lijnen beginnen
met het hekje ("#") worden genegeerd en worden gebruikt om commentaar te geven. Controleer de
presets directory in de FFmpeg-broncodeboom voor voorbeelden.

Er zijn twee soorten presetbestanden: ffpreset- en avpreset-bestanden.

ffvoorinstelling bestanden

ffpreset-bestanden worden gespecificeerd met de opties "vpre", "apre", "spre" en "fpre". De
"fpre" optie neemt de bestandsnaam van de preset in plaats van een presetnaam als invoer en kan
worden gebruikt voor elke soort codec. Voor de opties "vpre", "apre" en "spre" zijn de opties
die zijn opgegeven in een vooraf ingesteld bestand, worden toegepast op de momenteel geselecteerde codec van hetzelfde type als
de vooraf ingestelde optie.

Het argument dat wordt doorgegeven aan de presetopties "vpre", "apre" en "spre" identificeert de preset
bestand te gebruiken volgens de volgende regels:

Eerst zoekt ffmpeg naar een bestand met de naam arg.ffpreset in de mappen $FFMPEG_DATADIR (als
ingesteld), en $HOME/.ffmpeg, en in de datadir gedefinieerd tijdens de configuratie (meestal
PREFIX/delen/ffmpeg) of in een ffvoorinstellingen map langs het uitvoerbare bestand op win32, in dat
volgorde. Als het argument bijvoorbeeld "libvpx-1080p" is, zal het naar het bestand zoeken
libvpx-1080p.ffpreset.

Als een dergelijk bestand niet wordt gevonden, zoekt ffmpeg naar een bestand met de naam codec_naam-arg.ffvoorinstelling
in de bovengenoemde mappen, waar codec_naam is de naam van de codec waarnaar de
vooraf ingestelde bestandsopties worden toegepast. Als u bijvoorbeeld de videocodec selecteert met
"-vcodec libvpx" en gebruik "-vpre 1080p", dan zal het naar het bestand zoeken
libvpx-1080p.ffpreset.

avvoorinstelling bestanden

avpreset-bestanden worden opgegeven met de optie "pre". Ze werken vergelijkbaar met ffpreset-bestanden,
maar ze staan ​​alleen encoder-specifieke opties toe. Daarom een optie=waarde paar specificeren
een encoder kan niet worden gebruikt.

Als de optie "pre" is opgegeven, zoekt ffmpeg naar bestanden met het achtervoegsel .avpreset
in de mappen $AVCONV_DATADIR (indien ingesteld), en $HOME/.avconv, en in de datadir gedefinieerd
tijdens de configuratie (meestal PREFIX/delen/ffmpeg), in die volgorde.

Eerst zoekt ffmpeg naar een bestand met de naam codec_naam-arg.avpreset in het bovengenoemde
mappen, waar codec_naam is de naam van de codec waarnaar de vooraf ingestelde bestandsopties
zal toegepast worden. Als u bijvoorbeeld de videocodec selecteert met "-vcodec libvpx" en gebruikt
"-pre 1080p", dan zal het naar het bestand zoeken libvpx-1080p.avpreset.

Als een dergelijk bestand niet wordt gevonden, zoekt ffmpeg naar een bestand met de naam arg.avvoorinstelling in de
dezelfde mappen.

Voorbeelden


Video en Audio grijpen
Als u het invoerformaat en het apparaat opgeeft, kan ffmpeg rechtstreeks video en audio pakken.

ffmpeg -f oss -i /dev/dsp -f video4linux2 -i /dev/video0 /tmp/out.mpg

Of met een ALSA-audiobron (mono-ingang, kaart-ID 1) in plaats van OSS:

ffmpeg -f alsa -ac 1 -i hw:1 -f video4linux2 -i /dev/video0 /tmp/out.mpg

Merk op dat u de juiste videobron en het juiste kanaal moet activeren voordat u ffmpeg start
met elke tv-kijker zoalshttp://linux.bytesex.org/xawtv/> door Gerd Knorr. Je hebt ook
om de audio-opnameniveaus correct in te stellen met een standaard mixer.

X11 grijpen
Grijp het X11-display met ffmpeg via

ffmpeg -f x11grab -video_size cif -framerate 25 -i :0.0 /tmp/out.mpg

0.0 is het display.screen-nummer van uw X11-server, hetzelfde als de DISPLAY-omgevingsvariabele.

ffmpeg -f x11grab -video_size cif -framerate 25 -i :0.0+10,20 /tmp/out.mpg

0.0 is het display.screen-nummer van uw X11-server, hetzelfde als de DISPLAY-omgevingsvariabele.
10 is de x-offset en 20 de y-offset voor het grijpen.

Video en Audio filet formaat Conversie
Elk ondersteund bestandsformaat en protocol kan dienen als invoer voor ffmpeg:

Voorbeelden:

· U kunt YUV-bestanden als invoer gebruiken:

ffmpeg -i /tmp/test%dY /tmp/out.mpg

Het zal de bestanden gebruiken:

/tmp/test0.Y, /tmp/test0.U, /tmp/test0.V,
/tmp/test1.Y, /tmp/test1.U, /tmp/test1.V, enz...

De Y-bestanden gebruiken tweemaal de resolutie van de U- en V-bestanden. Het zijn onbewerkte bestanden, zonder
koptekst. Ze kunnen worden gegenereerd door alle fatsoenlijke videodecoders. U dient de maat op te geven
van de afbeelding met de -s optie als ffmpeg het niet kan raden.

· U kunt invoeren vanuit een onbewerkt YUV420P-bestand:

ffmpeg -i /tmp/test.yuv /tmp/out.avi

test.yuv is een bestand met onbewerkte vlakke YUV-gegevens. Elk frame is samengesteld uit de Y
vlak gevolgd door de U- en V-vlakken met halve verticale en horizontale resolutie.

· U kunt uitvoeren naar een onbewerkt YUV420P-bestand:

ffmpeg -i mijndivx.avi hugefile.yuv

· U kunt verschillende invoerbestanden en uitvoerbestanden instellen:

ffmpeg -i /tmp/a.wav -s 640x480 -i /tmp/a.yuv /tmp/a.mpg

Converteert het audiobestand a.wav en het onbewerkte YUV-videobestand a.yuv naar MPEG-bestand a.mpg.

· U kunt ook tegelijkertijd audio- en videoconversies uitvoeren:

ffmpeg -i /tmp/a.wav -ar 22050 /tmp/a.mp2

Converteert a.wav naar MPEG-audio met een samplefrequentie van 22050 Hz.

· U kunt tegelijkertijd naar verschillende formaten coderen en een toewijzing van invoer definiëren
streamen naar outputstreams:

ffmpeg -i /tmp/a.wav -map 0:a -b:a 64k /tmp/a.mp2 -map 0:a -b:a 128k /tmp/b.mp2

Converteert a.wav naar a.mp2 met 64 kbits en naar b.mp2 met 128 kbits. '-map bestand:index'
specificeert welke invoerstroom wordt gebruikt voor elke uitvoerstroom, in de volgorde van de
definitie van outputstromen.

· U kunt gedecodeerde VOB's transcoderen:

ffmpeg -i snatch_1.vob -f avi -c:v mpeg4 -b:v 800k -g 300 -bf 2 -c:a libmp3lame -b:a 128k snatch.avi

Dit is een typisch voorbeeld van het rippen van dvd's; de invoer is een VOB-bestand, de uitvoer een AVI-bestand
met MPEG-4-video en MP3-audio. Merk op dat we in deze opdracht B-frames gebruiken, zodat de
MPEG-4-stream is DivX5-compatibel en de GOP-grootte is 300, wat één intraframe betekent
elke 10 seconden voor invoervideo van 29.97 fps. Verder is de audiostream
MP3-gecodeerd, dus u moet LAME-ondersteuning inschakelen door "--enable-libmp3lame" door te geven aan
configureren. De mapping is vooral handig voor dvd-transcodering om het gewenste te krijgen
audio taal.

OPMERKING: Gebruik "ffmpeg -formats" om de ondersteunde invoerformaten te zien.

· U kunt afbeeldingen uit een video extraheren of een video maken van veel afbeeldingen:

Voor het extraheren van afbeeldingen uit een video:

ffmpeg -i foo.avi -r 1 -s BxH -f afbeelding2 foo-%03d.jpeg

Hiermee wordt één videoframe per seconde uit de video gehaald en uitgevoerd
bestanden met de naam foo-001.jpeg, foo-002.jpeg, etc. De schaal van afbeeldingen wordt aangepast aan de nieuwe
WxH waarden.

Als u slechts een beperkt aantal frames wilt extraheren, kunt u de bovenstaande opdracht gebruiken
in combinatie met de optie -vframes of -t, of in combinatie met -ss om te starten
extraheren vanaf een bepaald tijdstip.

Voor het maken van een video van veel afbeeldingen:

ffmpeg -f afbeelding2 -framerate 12 -i foo-%03d.jpeg -s WxH foo.avi

De syntaxis "foo-%03d.jpeg" specificeert het gebruik van een decimaal getal bestaande uit drie cijfers
opgevuld met nullen om het volgnummer uit te drukken. Het is dezelfde syntaxis die wordt ondersteund door
de C printf-functie, maar alleen formaten die een normaal geheel getal accepteren, zijn geschikt.

Bij het importeren van een reeks afbeeldingen ondersteunt -i ook het uitbreiden van een shell-achtige jokerteken
patronen (globbing) intern, door de image2-specifieke "-pattern_type glob" te selecteren
optie.

Bijvoorbeeld voor het maken van een video van bestandsnamen die overeenkomen met het glob-patroon
"foo-*.jpeg":

ffmpeg -f image2 -pattern_type glob -framerate 12 -i 'foo-*.jpeg' -s WxH foo.avi

· U kunt veel streams van hetzelfde type in de uitvoer plaatsen:

ffmpeg -i test1.avi -i test2.avi -map 1:1 -map 1:0 -map 0:1 -map 0:0 -c kopiëren -y test12.nut

Het resulterende uitvoerbestand test12.noot bevat de eerste vier streams van de
invoerbestanden in omgekeerde volgorde.

· CBR-video-uitvoer forceren:

ffmpeg -i mijnbestand.avi -b 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k out.m2v

· De vier opties lmin, lmax, mblmin en mblmax gebruiken 'lambda'-eenheden, maar u kunt de
QP2LAMBDA constante om gemakkelijk te converteren van 'q' eenheden:

ffmpeg -i src.ext -lmax 21*QP2LAMBDA dst.ext

Gebruik avconv online met behulp van onworks.net-services


Gratis servers en werkstations

Windows- en Linux-apps downloaden

  • 1
    libusb
    libusb
    Bibliotheek om gebruikersruimte in te schakelen
    applicatieprogramma's om mee te communiceren
    USB-apparaten. Publiek: ontwikkelaars, einde
    Gebruikers/Desktop. Programmeertaal: C.
    Categorieën...
    Libusb downloaden
  • 2
    SLOK
    SLOK
    SWIG is een tool voor softwareontwikkeling
    dat programma's verbindt die zijn geschreven in C en
    C ++ met een verscheidenheid aan high-level
    programmeertalen. SWIG wordt gebruikt met
    verschillend...
    SWIG downloaden
  • 3
    WooCommerce Nextjs React-thema
    WooCommerce Nextjs React-thema
    Reageer WooCommerce-thema, gebouwd met
    Volgende JS, Webpack, Babel, Node en
    Express, met behulp van GraphQL en Apollo
    Cliënt. WooCommerce Store in React(
    bevat: Producten...
    Download het WooCommerce Nextjs React-thema
  • 4
    archlabs_repo
    archlabs_repo
    Pakketrepo voor ArchLabs Dit is een
    toepassing die ook kan worden opgehaald
    oppompen van
    https://sourceforge.net/projects/archlabs-repo/.
    Het is gehost in OnWorks in...
    Archlabs_repo downloaden
  • 5
    Zephyr-project
    Zephyr-project
    Het Zephyr Project is een nieuwe generatie
    real-time besturingssysteem (RTOS) dat
    ondersteunt meerdere hardware
    architecturen. Het is gebaseerd op een
    kernel met kleine voetafdruk ...
    Zephyr-project downloaden
  • 6
    SConen
    SConen
    SCons is een softwareconstructietool
    dat is een superieur alternatief voor de
    klassieke "Make" build-tool die
    we kennen en houden allemaal van. SCons is
    implementeerde een...
    SCons downloaden
  • Meer "

Linux-commando's

Ad