Opetussessioiden Zoom-tallenteiden muokkaaminen FFmpegillä
Last modified on 24. heinäkuuta 2026 • 3 min read • 493 words
Opiskelijapalautteen perusteella olemme järjestäneet uuden kurssin TRANSMED MSc -ohjelmaan biologisten lääkeaineiden kehityksestä. Se on kurssi, jonka saksaksi kutsutaan nimellä “Schnupperkurs”. En ole koskaan löytänyt tyydyttävää käännöstä tälle sanalle (tutustumiskurssi?). Se tarkoittaa, että haluamme vain herättää opiskelijoiden kiinnostuksen tätä aihetta kohtaan. Jos he pitävät siitä, he voivat osallistua johonkin monista syventävistä kursseista, joita tarjotaan esimerkiksi farmasian tiedekunnassa , jossa englanninkielinen opetus lisääntyy tulevina vuosina huomattavasti suunnitellun kansainvälisen farmasian MSc-ohjelman myötä.
Käytämme Zoom-kokousohjelmistoa kaikissa istunnoissa. Kannustamme opettajia tallentamaan istunnot, koska kukaan ei voi taata toimivaa internet-yhteyttä striimausta varten. Valitettavasti jotkut opettajat eivät voi tallentaa, esimerkiksi jos he esittävät julkaisemattomia tietoja kilpailevasta projektista tai tietoja, joita he aikovat käyttää tulevassa patenttihakemuksessa. Tallennetut istunnot asetetaan saataville sisäisesti. Ennen niiden siirtämistä OneDriveen yritän tehdä minimaalisen jälkikäsittelyn, eli leikata pois “tyhjät kohdat” (esim. tauot). Tiedän, että kaikki 12-vuotiaat TikTokissa osaavat tehdä tämän älypuhelimillaan, mutta dinosauruksena olen tehnyt sen komentorivillä käyttämällä ffmpeg -ohjelmaa.
Eilisestä istunnosta halusin leikata pois tyhjää tilaa alusta ja lopusta sekä 15 minuutin tauon välissä. Lisäksi olimme soittaneet kappaleen, joka laadullisesti ei toiminut hyvin Zoomin kautta. Siksi latasin kappaleen ( Viva La Evidence ) erikseen käyttämällä youtube-dl -ohjelmaa, josta oli tullut hiljattain kuuluisa GitHubille tehdyn IRA-poistopyynnön vuoksi. “Leikkasin” tämän kappaleen sisään parantaakseni äänenlaatua.
Alkuperäinen video: zoom_0.mp4 (videovirta: 2560x1440, H.264, 25 fps; äänivirta: MPEG-4 AAC Mono 32000Hz 126kbps) Youtube-video: Evidence.webm (videovirta: 1920x1080, VP9, 24 fps; äänivirta: MP3 Stereo 48000Hz 128kps)
Tässä ovat vaiheet (voit tehdä tämän kerralla, mutta näin yksittäiset vaiheet ovat ymmärrettävämpiä):
- Leikkaa hyödylliset osat pois (jättäen pois kappaleen ja tauon):
ffmpeg -i zoom_0.mp4 -vcodec copy -acodec copy -ss 00:01:44 -t 01:01:58 part1.aviffmpeg -i zoom_0.mp4 -vcodec copy -acodec copy -ss 1:07:55 -t 00:12:40 part2.aviffmpeg -i zoom_0.mp4 -vcodec copy -acodec copy -ss 1:36:18 part3.avi
- Muuta ladatun Youtube-videon resoluutio vastaamaan Zoom-tallennusta:
ffmpeg -i Evidence.webm -vf scale=2560:1440 Evidence_rescaled.avi - Muuta skaalatun videon kuvataajuutta:
ffmpeg -i Evidence_rescaled.avi -filter:v fps=fps=50 Evidence_rescaled_reframed.avi - Yhdistä kaikki neljä osaa:
ffmpeg -i part1.avi -i Evidence_rescaled_reframed.avi -i part2.avi -i part3.avi -filter_complex "[0✌️0][0🅰️0][1✌️0][1🅰️0][2✌️0][2🅰️0][3✌️0][3🅰️0]concat=n=4:v=1:a=1[outv][outa]" -map "[outv]" -map "[outa]" output_final.avi - Viimeisessä vaiheessa säädin laatua (2-vaiheinen), koska edellisen komennon tulos on >2GB:
ffmpeg -y -i output_final.avi -c:v libx264 -b:v 500k -pass 1 -an -f null /dev/nullffmpeg -i output_final.avi -c:v libx264 -b:v 500k -pass 2 -c:a mp3 -b:a 128k final_output_reduced_filesize.mp4
Muita hyödyllisiä ffmpeg-komentoja:
-
Äänenvoimakkuuden lisääminen kertoimella 4:
ffmpeg -i infile.mp4 -af volume=4 -vcodec copy outfile.mp4 -
Alun ja lopun leikkaaminen säilyttäen kaiken muun (ei uudelleenkoodausta), käyttämällä -to -lippua määrittämään leikkauskohdan lopussa (ei lopullisen videon kestoa):
ffmpeg -i infile.mp4 -c copy -ss 00:05:04 -to 01:12:33 outfile.mp4
Yllä olevat komennot kuitenkin kopioivat tiedot, mutta eivät huolehdi avainkehyksen luomisesta videon alkuun. Siksi muokattu video saattaa alkaa mustalla ruudulla, ja kuva ilmestyy vasta, kun seuraava avainkehys kohdataan. Jos haluat välttää tämän, sinun on poistettava “-vcodec copy -acodec copy” -vaihtoehdot. Siinä tapauksessa ffmpeg koodaa koko videon uudelleen (mikä on huomattavasti hitaampaa kuin kopioiminen). Katso täältä hyvä kirjoitus vaihtoehdoista mustan aloitusruudun välttämiseksi: https://newbedev.com/cutting-the-videos-based-on-start-and-end-time-using-ffmpeg
PÄIVITYS: On tietenkin monia muita työkaluja, jotka lupaavat tehdä työn. Olen käyttänyt kahta ohjelmistoa, jotka totesin erittäin helpoiksi erityisesti videoiden trimmaamiseen:
- Avidemux: https://avidemux.sourceforge.net/
- LosslessCut: https://github.com/mifi/lossless-cut