Käytän tätä suodatinta rajaamaan:
-filter_complex "[0:v]crop=w=320:h=240[v0c]
joka toimii kunnolla. Ongelmana on, että joskus en tiedä mikä on panos, jonka aion saada. Se voi olla esimerkiksi 1000x500
tai 500x1000
. Joten kun se tapahtuu, se saa vain pienen alueen videon keskiosasta. Ihanteellinen olisi muuttaa syötteen kokoa vastaamaan pienempää kokoa haluttuun tulokseen ja rajata loput. Ongelmana on, että en tiedä mikä ulottuvuus tulee olemaan.
Kuinka voin rakentaa suodattimen ongelman ratkaisemiseksi?
Kommentit
- Mikä on haluttu tulostuskoko?
- 320×240, kuten kirjoittamassani komennossa
Vastaa
Käytä
[0:v]scale="if(gt(a,4/3),-1,320)":"if(gt(a,4/3),240,-1)",setsar=1,crop=320:240[v0c]
X: n ja y: n asteikkosuodatinlausekkeet tarkistavat tulon kuvasuhteen ja jos suurempi kuin 4 : 3, aseta arvo 2. argumentille ja jos ei, kolmannelle argumentille. -1
tarkoittaa, että alkuperäinen kuvasuhde tulisi säilyttää esim. scale=-1:400
, joka on sovellettu 600x800
-kankaalle, johtaa 300x400
.
320
ja240
?(a,234/787)