tetszőleges mértékű blur videóra helyezése

 ( mzperix | 2019. október 9., szerda - 18:35 )

Olyat szeretnék ami nemes egyszerűséggel annyit tud tenni,
miszerint egy vékony elhomályosított "blur" réteget helyez az egész videóra.

Lehetőleg ezt egy egyszerű terminál paranccsal meg tudjam csinálni,
példaként mint a hang levétele a videóról.

ffmpeg -i XYZ.mp4 -c copy -an XYZ222.mp4

mindenképp fontos hogy a homályosított réteg beállítható legyen, azaz meg tudjam neki adni hogy pl. hogy 10% átlátszóság vagy épp 90%

Ötletek, szerintetek van erre valami parancssoros megoldás vagy mindenképp valami videószerkesztőhöz vagyok kötve?
Ha videószerkesztő akkor melyik kezeli ezt legegyszerűbben?

Köszönöm

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

legalább négyféle blur filter van az ffmpeg-ben... (boxblur, smartblur, unsharp, sab)

ffmpeg -vf ...

Köszönöm, minden nap tanul valamit az ember. :)

szerintem a

ffmpeg -i blurtest.mp4 -vf "boxblur=3:1" blurtest2.mp4

lesz a befutó

... továbbá a mencoder is mindenféle szűrők gazdag tárházát kínálja:

http://www.mplayerhq.hu/DOCS/man/hu/mplayer.1.html#VIDE%C3%93%20SZ%C5%B0R%C5%90K

-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.

Jelenleg ezt kezdtem el használni,

habár sajnos a folyamat rettentően lassú
de tény hogy a feladatot elvégzi,
a videót némítja és homályosítja is.

ffmpeg -i testIN.mp4 -an -vf "boxblur=4:1" testOUT.mp4

ugye a blurozashoz dekodolnia kell a video streamet, minden kepkockan megcsinalni a blurt, majd visszakodolni mp4-be. lehet nem irtad de a kodolasi parametereket erdemes megadni (pl. bitrate, esetleg bluros videokhoz van valami masik speci paramter is, amit erdemes hasznalni).
Ha gyorsasag kell akkor szerezz be egy nvidiat. nem kell a legujabb, nalunk egy 1080Ti, kb 10-15x speed gyorsulast ir, es kb 20%-on van a kartya (nem tudjuk jobban kihajtani)

--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!

az ffmpeg kódolási sebességét nem folyásolja be, hogy milyen videókártya van a gépben. (legalább is nem emlékszek rá, hogy lenne olyan paramétere, ami a GPU-ra küldene valamit)

-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.

heh? ffmpeg -codecs|egrep "cuvid|nvenc", nalam vagy 8 codec van amit gpuval lehet kodolni

--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!

+1
minden nap tanul valami újat az ember...

-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.

befolyásol nem elváló igekötős ige

Ellenpélda: beiktat, pl. felszólító módban Iktasd (ezt a papírt) be!

Ezzel szemben helyesen: Ne befolyásold a döntést!
Nem pedig: Ne folyásold be a döntést!
--

En mar feladtam. A legtobb ember itt a HUP-on meg a -ba -ben kozti kulonbseget sem kepes megugrani...

ps: tudom a k anyamat mert ekezet nelkul irok :D

Lehet hülyeség amit kérdezek, de ha az akkor nyugodtan javítsatok ki.

Amennyiben a szokásos
1280x720/30 fps helyett
1280x720/24 fps -ben rögzítek majd arra engedem rá a
ffmpeg -i testIN.mp4 -an -vf "boxblur=4:1" testOUT.mp4

akkor ezzel érhetek el konvertálási sebességnövekedést?

igen, kb. 24/30 idő alatt csinálja meg. (kb 20%)

ja, és 25 fps-sel jobban jársz, mert ha valaha vágni akarsz vágóprogrammal, akkor az a 25 fps-t szereti a legjobban.

-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.

> ja, és 25 fps-sel jobban jársz, mert ha valaha vágni akarsz vágóprogrammal,
> akkor az a 25 fps-t szereti a legjobban.

Maradjunk annyiban, hogy azon régiókban, ahol az elektromos hálózat 50Hz-es és a PAL norma a domináns, ott a 25/50Hz a célszerűbb, ahol pedig 60Hz-es és NTSC, ott pedig a 30/60Hz a célszerűbb.

De ennek is főként csak a katódsugárcsöves megjelenítők idején volt jelentősége.

--
"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség

Tudtommal a neonvibrálást ellensúlyozta.
--

ha több ilyen videód van, több videót is elindíthatsz egy időben, így több processzoron is futhat a dolog. pl. egy 4 magos procin elindíthatsz 4 konvertálást, és nem fog sokkal tovább tartani, mintha egyesével csinálod.

Ha mappába teszed, és pl. így indítassz:

ls | while read name; do ffmpeg -i $name ... ... $name"conv.mp4"; done;

akkor így a mappa összes videóját kezdi el több szálon konvertálni. (nem logikus, nem így kéne, de az ffmpeg valamiért így csinálja (az is megoldható, hogy egyesével konvertáljon, de most hirtelen nem jut eszembe))... vagyis ha egy mappába annyi videót teszel, ahány magos a procid, ezzel tudod javítani a hatásfokot.

-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.

ffmpeg mar eszreveszi hogy tobb cpu van, es elkezdi hasznalni oket.

amit meg irtal while az nem parhuzamosit semmit, mert a loop egymas utan fut, nem egyszerre.

--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!

ezzel tisztában vagyok. ... de próbáld ki ezt a ciklust ffmpeg-gel... egyszer napokig gugliztam, hogy hogyan NE párhuzamosítson.
-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.

Biztos, hogy nincs a végén egy & jel a done előtt?

=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?

NINCS!
Az ffmpeg mintha észrevenné, hogy ciklusból futtatom, és elkezdi sok szálon vinni a konvertálást. Pont ezzel szívtam egyszer, mert nagyon sok fájl esetén így telenyomja a memóriát is (behal tőle az egész hóbelevansz).

Vissza is kerestem, hogy hogy sikerült megoldani, hogy ciklusból csak 1 szálon fusson:

ls | while read name; do ffmpeg -i $name ... ... $name"conv.mp4" >/dev/null; done;

persze, a kérdezőnek jó a több szálas dolog is, ha mappánként annyi fájlt tesz, amennyi magos a processzora.

De ha nagyon sok fájlja van, akkor meg érdemesebb annyi mappába szétosztani, ahány magos a procija, és mindegyik mappában egyszerre, 1 szálon elindítani.

-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.

hat nalad valami magic van, mert itt ezt csinalja. elkezdi az elso mp4-et, majd mikor vegzett akkor csinalja a masodikat, stb.
igaz az ffmpeg kozben eszreveszi hogy tobb cpu van, es hasznalni az osszeset.

--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!

Kipróbáltam, valóban rendesen dolgozik, nem nyit több szálat, viszont csak 1 magot használ. (ffmpeg-3.4.6.)
1.0 -1.2.x idején, az az általam felvázolt módon működött.

-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.

nekem használja mind a 4 magot a konvertáláshoz

Ezzel kissé elkésett, Borkai úr..
--
God bless you, Captain Hindsight..

most csak hogy kiderítsem mire is céloztál, kénytelen voltam politikai-bulvárt olvasni. :D

Gondolom magától amúgy soha nem kattinta egy pornós linkre, Szentatyám.. :-)
--
God bless you, Captain Hindsight..

én a "Borkai" névre kerestem a google által ami egy híroldalra vezetett ahol az eset leírása szerepelt.
Persze megértem hogy magadból kiindulva azt feltételezed mindenki XXX tartalomra keres elsőként bármi újat vagy számára érthetetlent hall... :D

No de, ha kérhetném akkor vissza a témához,
ha van érdemi témanyitóhoz fűződő hozzászólás azt szívesen fogadom,
de ne bulvárral töltsük meg a fórumot. Köszönöm

Sajna én ilyesmire valami windows-os szutykot használok, úgy hogy már léptem is..
--
God bless you, Captain Hindsight..

Meg lehetne oldani hogy egy mappa minden fájljára lefuttassa egy paranccsal?
Mármint persze hogy a
HANG_IMPUT.mp3
és a
VIDEO_OUTPUT.mp4
változó legyen miközben a KEP_IMPUT.jpg állandó?


ffmpeg -loop 1 -framerate 2 -i KEP_IMPUT.jpg -i HANG_IMPUT.mp3 -c:v libx264 -preset medium -tune stillimage -crf 18 -c:a copy -shortest -pix_fmt yuv420p VIDEO_OUTPUT.mp4

Példa.:
KEP_IMPUT.jpg + HANG_IMPUT_1.mp3 = VIDEO_OUTPUT_1.mp4
KEP_IMPUT.jpg + HANG_IMPUT_4.mp3 = VIDEO_OUTPUT_4.mp4

INPUT

nem mondom hogy nincs igazad mert teljes mértékben igazad van, csúnyán benéztem sőt minimum lefejezést érdemelnék érte ez tény, szánom bánom

de esetleg

szakmai fórumon akad
szakmai hozzászólásod is

vagy itt kifújt az érdemiség? ;)

Miert kell rogton szemelyeskedni?
Csak kijavitottam az ordas hibat a szovegben...

Amivel nem lenne baj ha szakmai szinten is lett volna bármi, de tényleg bármi értelme a hozzászólásnak. :)

minden másra ott a

helyesiras.mta.hu
meg a
Napi helyesírási szösszenetek facebook oldala
:)

én kérek elnézést... :)

for i in *.mp3; do ffmpeg -i $i -c:v libx264 .... ${i}.mp4; done

ha bonyolultabb fajl atnevezest akarsz, akkor google://bash+Manipulating+Strings

--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!

"${i}.mp4" helyett "${i%3}4" - és nem akarmi.mp3.mp4, hanem akarmi.mp4 lesz a neve a kimeneti fájlnak. De való igaz, biztos benne lesz a gugli találatok között :-)

=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?

sajnos ez nekem most nagyon feladta a leckét, képtelen vagyok megcsinálni, bárhogyan próbálom minden próbálkozás eredménye a

no such file or directory

szóval nem olvassa be mappából

és így:

ls *.mp3 | while read fname; do ffmpeg -i "$fname" ... "$fname".mp4; done;

-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.

ls: No such file or directory

... de ezt abban a mappában adod ki, ahol az mp3-ak vannak?
-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.

így van, máshogy nemigazán lenne értelme, nemigaz?
Ezért nem értem én sem.

mp3/MP3?

Köszönök minden segítséget, végül is ő lett a " Chosen One "

for i in *.mp3; do ffmpeg -loop 1 -framerate 2 -i "pic3.jpg" -i "$i" -shortest -acodec copy "`sed 's/mp3/mp4/g'<<<$i`"; done

Lgalább 2x kaptál tőlük ennél "olcsób" módszert az épelméjű kimeneti fájlnév generáláshoz. (Ez itt fönt borzalmas.) Itt egy harmadik:

"${i/%mp3/mp4}"

Jelentése: az "i" változó aktuális értékének (almamp3.boldog.szulinapot.mp3) legvégén álló mp3 sztringet mp4-re cseréli (eredménye almamp3.boldog.szulinapot.mp4)

=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?

ok

[Feliratkozás]