Korisnički alati

Site alati


ffmpeg

Razlike

Slijede razlike između dviju inačica stranice

Poveznica na ovu usporedbu

Starije izmjene na obje strane Starija izmjena
Novija izmjena
Starija izmjena
ffmpeg [2018/12/05 11:04]
jpetrovic
ffmpeg [2023/06/19 18:11] (trenutno)
Redak 21: Redak 21:
 </​code>​ </​code>​
  
-U izlazu su unutar navodnika navedeni AV izvori koje je moguće snimati ("​EasyCamera",​ "​screen-capture-recorder",​ "​Microphone (Conexant SmartAudio HD)", "​virtual-audio-capturer"​). Izvori se zadaju na sljedeći način:+U izlazu su unutar navodnika navedeni AV izvori koje je moguće snimati ("​EasyCamera",​ "​screen-capture-recorder",​ "​Microphone (Conexant SmartAudio HD)", "​virtual-audio-capturer"​). Izvori se za snimanje ​zadaju na sljedeći način:
  
   * ffmpeg -f dshow -i video="​EasyCamera":​audio="​Microphone (Conexant SmartAudio HD)" integrirana_kamera_i_mikrofon.mp4   * ffmpeg -f dshow -i video="​EasyCamera":​audio="​Microphone (Conexant SmartAudio HD)" integrirana_kamera_i_mikrofon.mp4
       * (u //​video=// ​ i //audio= //moguće je zadati bilo koje unose dobivene iz naredbe za listanje dostupnih izvora)       * (u //​video=// ​ i //audio= //moguće je zadati bilo koje unose dobivene iz naredbe za listanje dostupnih izvora)
       * //​integrirana_kamera_i_mikrofon.mp4// ​ je ime izlazne datoteke       * //​integrirana_kamera_i_mikrofon.mp4// ​ je ime izlazne datoteke
-Za snimanje ​radne površine (desktopa) koristiti gdigrab filtar:+      * snimanje ​se prekida pritiskom tipke q dok je komandna linija odabrana kao aktivni prozor
  
 +**Za snimanje radne površine (desktopa) **koristiti gdigrab filtar:
   * ffmpeg -f gdigrab -framerate 25 -offset_x 0 -offset_y 0 -i desktop desktop_bez_zvuka.mp4   * ffmpeg -f gdigrab -framerate 25 -offset_x 0 -offset_y 0 -i desktop desktop_bez_zvuka.mp4
       * //-offset_x //i //-offset_y //koristite ako morate ograničiti prostor snimanja, npr. zbog korištenja više zaslona -offset_x postavite na vrijednost 1280 (nakon prvog zaslona)       * //-offset_x //i //-offset_y //koristite ako morate ograničiti prostor snimanja, npr. zbog korištenja više zaslona -offset_x postavite na vrijednost 1280 (nakon prvog zaslona)
 ili instalirati [[http://​sourceforge.net/​projects/​screencapturer/​|Screen capture recorder]] (koji omogućava i korištenje izlaznog audia računala kao audio input). Naredba koja uz instalirani Screen capture recorder snima desktop i **izlazni (a ne ulazni iz mikrofona)** ​ zvuk računala: ili instalirati [[http://​sourceforge.net/​projects/​screencapturer/​|Screen capture recorder]] (koji omogućava i korištenje izlaznog audia računala kao audio input). Naredba koja uz instalirani Screen capture recorder snima desktop i **izlazni (a ne ulazni iz mikrofona)** ​ zvuk računala:
   * ffmpeg -f dshow -i video="​screen-capture-recorder":​audio="​virtual-audio-capturer"​ desktop_i_audio.mp4   * ffmpeg -f dshow -i video="​screen-capture-recorder":​audio="​virtual-audio-capturer"​ desktop_i_audio.mp4
 +
 +**Za snimanje radne površine (desktopa) ****i zvuka iz zvučnika ili zvuka iz mikrofona **koristiti gdigrab filtar u kombinaciji s Screen capture recorderom za hvatanje zvuka:
 +  * ffmpeg -f gdigrab -framerate 25 -offset_x 0 -offset_y 0 -i desktop -f dshow -i audio="​virtual-audio-capturer"​ -c:v libx264 -c:a aac -crf 20 desktop_i_zvucnici.mp4
 +      * Snima cijelu radnu površinu i zvuk koji izlazi kroz zvučnike računala
 +  * ffmpeg -f gdigrab -framerate 25 -offset_x 0 -offset_y 0 -i desktop -f dshow -i audio="​Microphone (Conexant SmartAudio HD)" -c:v libx264 -c:a aac -crf 20 desktop_i_mikrofon.mp4
 +      * Snima cijelu radnu površinu i zvuk koji ulazi kroz zadani mikrofon (podesiti ime mikrofona!)
 +  * ffmpeg.exe -f dshow -i audio="​virtual-audio-capturer"​ -vn -c:a aac samo_audio_zvučnici.m4a
 +      * Snima samo audio izvor (u ovom slučaju zvuk iz zvučnika)
  
 **Za izradu prezentacije/​projekta gdje izvodite prezentaciju i snimate svoj glas **najbolje je kombinirati //gdigrab //filter i //Screen capture recorder//: **Za izradu prezentacije/​projekta gdje izvodite prezentaciju i snimate svoj glas **najbolje je kombinirati //gdigrab //filter i //Screen capture recorder//:
-  * ffmpeg -f dshow -i audio="​Microphone (Conexant SmartAudio HD)" -f gdigrab -framerate 25 -offset_x 0 -offset_y 0 desktop_s_mikrofonom.mp4 +  * ffmpeg -f dshow -i audio="​Microphone (Conexant SmartAudio HD)" -f gdigrab -framerate 25 -offset_x 0 -offset_y 0 -i desktop ​desktop_s_mikrofonom.mp4 
-      * u godnjoj naredbi definirajte vlastiti mkrofon uređaj koji ste dobili u izlazu naredbe za popis dostupnih uređaja+      * u godnjoj naredbi ​umjesto upisanog (Microphone (Conexant SmartAudio HD)) definirajte vlastiti mkrofon uređaj koji ste dobili u izlazu naredbe za popis dostupnih uređaja
  
 **odnosno istu naredbu uz dodatke parametre:​** **odnosno istu naredbu uz dodatke parametre:​**
   * ffmpeg -rtbufsize 50000k -f dshow -i audio="​Microphone (Conexant SmartAudio HD)" -f gdigrab -framerate 25 -offset_x 0 -offset_y 0 -i desktop -c:v libx264 -crf 20 -vf scale=1280:​720 -r 25 -c:a aac -pix_fmt yuv420p -profile:v baseline -level 3.0 projekt.mp4   * ffmpeg -rtbufsize 50000k -f dshow -i audio="​Microphone (Conexant SmartAudio HD)" -f gdigrab -framerate 25 -offset_x 0 -offset_y 0 -i desktop -c:v libx264 -crf 20 -vf scale=1280:​720 -r 25 -c:a aac -pix_fmt yuv420p -profile:v baseline -level 3.0 projekt.mp4
       * vidi značenja parametara niže       * vidi značenja parametara niže
 +
 +**Za izradu prezentacije u kojoj želite vlastitu snimku (npr. s kamere laptopa) dodati na snimku radne površine**:​
 +  * ffmpeg -f gdigrab -framerate 25 -offset_x 0 -offset_y 0 -video_size 1920×1080 -i desktop -f dshow -i video="​EasyCamera":​audio="​Microphone (Conexant SmartAudio HD)" -filter_complex "​nullsrc=size=1280×720 [base]; [0:v] setpts=PTS-STARTPTS,​ scale=1280×720 [upperleft];​ [1:v] setpts=PTS-STARTPTS,​ scale=320×240 [upperright];​ [base][upperleft] overlay=shortest=1 [tmp1]; [tmp1][upperright] overlay=shortest=1:​x=940:​y=20 " -c:v libx264 -y output.mkv
 +      * Pretpostavke ove naredbe su da snimate cijelu radnu površinu dimenzija 1920×1080 (-video_size) koja počinje na koordinati (0,​0)=(-offset_x,​ -offset_y) s 25 sličica u sekundi (-framerate),​ da su imena uređaja za video i zvuk konfigurirana u //-i video="​EasyCamera":​audio="​Microphone (Conexant SmartAudio HD)"//,​ da želite izlaznu snimku veličine 1280×720 (nullsrc=size=) i da snimku sebe želite skalirati na veličinu 320×240 (//​scale=320×240 [upperright]//​) i pozicionirati počevši od koordinate (940,20) (//​overlay=shortest=1:​x=940:​y=20//​) .
  
 **Dodatne napomene i pojašnjenja:​** **Dodatne napomene i pojašnjenja:​**
   * Parametri definirani prije -i zastavice odnose se na izvor definiran tom -i zastavicom   * Parametri definirani prije -i zastavice odnose se na izvor definiran tom -i zastavicom
 +  * Snimanje se prekida pritiskom tipke q dok je komandna linija odabrana kao aktivni prozor
   * Parametri definirani nakon poslijednjeg izvora (-i device_name) definiraju svojstva izlaza   * Parametri definirani nakon poslijednjeg izvora (-i device_name) definiraju svojstva izlaza
-      * npr. naredbom //ffmpeg -f gdigrab -framerate 25 -video_size 1920×1080 -i desktop -framerate 20 -c:v libx264 -vf scale=1280×720 desktop.mp// ​ definira se da video ulaz šalje 25 FPS u 1920×1080 rezoluciji, a snimka će sadržavati 20 FPS enkodirano u x264 kodek u 1280×720 rezoluciji.+      * npr. naredbom //ffmpeg -f gdigrab -framerate 25 -video_size 1920×1080 -i desktop -framerate 20 -c:v libx264 -vf scale=1280×720 desktop.mp// ​ definira se da video ulaz šalje 25 FPS u 1920×1080 rezoluciji, a snimka će sadržavati 20 FPS enkodirano u h264 kodek u 1280×720 rezoluciji.
  
 **<font 16px/​inherit;;​inherit;;​inherit>​2. Podešavanje parametara snimanja:</​font>​** **<font 16px/​inherit;;​inherit;;​inherit>​2. Podešavanje parametara snimanja:</​font>​**
Redak 50: Redak 64:
   * **-c:a aac**  = audio kodek. Preporučeno aac jer je raširen i ima efikasnu kompresiju.   * **-c:a aac**  = audio kodek. Preporučeno aac jer je raširen i ima efikasnu kompresiju.
   * **-r 25**  = framerate. Više je bolje, 25 je ok za većinu snimki, a desktop može i manje.   * **-r 25**  = framerate. Više je bolje, 25 je ok za većinu snimki, a desktop može i manje.
-  * **-crf ​19**  = kvaliteta videa za h264 kodiranje (zadaje se umjesto bitratea). Manje je bolje, ​19 je dovoljno za većinu snimki. +  * **-crf ​22 **  = kvaliteta videa za h264 kodiranje (zadaje se umjesto bitratea). Manje je bolje za kvalitetu slike22 je dovoljno za većinu snimki. 
-  * **-vf scale=1280×720** ​ = rezolucija izlaznog videa. Više je bolje ako snimani izvor to podržava. 1280:720 (720p ili HD ready) je dovoljno za većinu snimki.+  * **-vf scale=1280×720** ​ = rezolucija izlaznog videa. Više je bolje za kvalitetu slike ako snimani izvor to podržava. 1280:720 (720p ili HD ready) je dovoljno za većinu snimki.
   * **-rtbufsize 1G**  = buffer. Više je bolje, pogotovo ako je računalo nedovoljno jako za real-time enkoding videa.   * **-rtbufsize 1G**  = buffer. Više je bolje, pogotovo ako je računalo nedovoljno jako za real-time enkoding videa.
-  * **-pix_fmt yuv420p **  = YUV planar color space with 4:2:0 chroma subsampling. Za kompatibilnost s manje naprednim video playerima (QuickTime, Windows Media Player, …) +  * **-pix_fmt yuv420p **  = YUV planar color space with 4:2:0 chroma subsampling. Za kompatibilnost s manje naprednim video playerima (QuickTime, Windows Media Player, …). Obavezno koristiti! 
-  * **-profile:​v baseline -level 3.0**  = h264 enkoding profil niske kompleksnosti. Za kompatibilnost sa manje naprednim i procesorski slabijim uređajima.+  * **-profile:​v baseline -level 3.0**  = h264 enkoding profil ​relativno ​niske kompleksnosti. Za kompatibilnost sa manje naprednim i procesorski slabijim uređajima.
   * [[https://​trac.ffmpeg.org/​wiki/​Encode/​H.264|Detalji postavki za h264 enkodiranje]].   * [[https://​trac.ffmpeg.org/​wiki/​Encode/​H.264|Detalji postavki za h264 enkodiranje]].
  
Redak 74: Redak 88:
 **<font 16px/​inherit;;​inherit;;​inherit>​4. Konkatenacija (nadovezivanje) videa</​font>​** **<font 16px/​inherit;;​inherit;;​inherit>​4. Konkatenacija (nadovezivanje) videa</​font>​**
  
-Sve datoteke moraju koristiti isti video i isti audio kodek. Napraviti u mylist.txt datoteci popis datoteka s apsolutnim putanjama+Sve datoteke moraju koristiti isti video i isti audio kodek. Napraviti u //mylist.txt ​//datoteci popis datoteka s apsolutnim putanjama.
- +
-  * # Popis fajlova za konkatenaciju:​ +
-  * file '​C:/​video_files/​pocetak.mp4'​ +
-  * file '​C:/​video_files/​sredina.mp4'​ +
-  * file '​C:/​video_files/​kraj.mp4'+
  
-datotteku s popisom pohraniti u isti folder gjde je i ffmpeg.exe i pozvati naredbu:+Sadržaj //mylist.txt://<​file>​ 
 +# Popis fajlova za konkatenaciju:​ 
 +file '​C:/​video_files/​pocetak.mp4'​ 
 +file '​C:/​video_files/​sredina.mp4'​ 
 +file '​C:/​video_files/​kraj.mp4'​ 
 +</​file>​
  
 +Datoteku s popisom pohraniti u isti direktorij gdje je i //​ffmpeg.exe //i pozvati naredbu:
   * ffmpeg -f concat -safe 0 -i mylist.txt -c copy izlaz   * ffmpeg -f concat -safe 0 -i mylist.txt -c copy izlaz
  
 [[https://​trac.ffmpeg.org/​wiki/​Concatenate|Još mogućnosti]]. [[https://​trac.ffmpeg.org/​wiki/​Concatenate|Još mogućnosti]].
  
-**<font 16px/​inherit;;​inherit;;​inherit>​5. ​Embeddanje .srt titlova u video (da se mogu po želji uključiti):</​font>​** +**<font 16px/​inherit;;​inherit;;​inherit>​5. ​Uključivanje ​titlova u mp4 container ​(//soft subtitles//):</​font>​** 
-  * ffmpeg -i snimka.mp4 -i titlovi.srt -c copy -c:s mov_text snimka_s_titlovima.mp4+  * ffmpeg -i snimka_bez_titlova.mp4 -i titlovi.vtt -c:v copy -c:a copy -c:s mov_text snimka_s_titlovima.mp4 
 +      * u rezultantnoj snimci provjerite dostupnost titlova tako da ju otvorite u VLC player medijskom izvođaču i uključite titlove opcijom Subtitle/​Sub track/… 
 +  * Naredba bi trebala raditi i za druge formate titlova (//.srt//). Ako to nije slučaj, prebacite titlove u drugi format putem besplatnih web alata poput [[https://​subtitletools.com/​convert-to-vtt-online|https://​subtitletools.com/​convert-to-vtt-online]] i ponovno pokušajte iskoristiti naredbu iznad.
  
  
ffmpeg.1544004283.txt.gz · Zadnja izmjena: 2023/06/19 18:10 (vanjsko uređivanje)