Ugrás a fő tartalomra

Video vágás automatizálás

 Video vágás automatizálás



Ajánlott kódolható vágóeszközök

1. MoviePy (Python könyvtár)

  • Mire jó: Teljes körű videószerkesztés Python kódból (vágás, összefűzés, feliratozás, effektek, hangcsere).

  • Előny: Olvasható, szintaktikailag tiszta kód, gyors feladat-automatizálás.

  • Háttér: Az FFmpeg motorra épül, de megszünteti a komplex parancssori szintaxis nehézségeit.

2. FFmpeg (Parancssori eszköz)

  • Mire jó: Vágás, konvertálás, méretezés és kódolás közvetlenül PowerShell-ből vagy Batch-ből.

  • Előny: Rendkívül gyors, nem igényli az egész videó újratömörítését (lossless vágás stream copy-val).

  • Háttér: Az iparági alapeszköz, amelyet szinte minden videós szoftver háttérmotorként használ.



 Koncepció és architektúra

  • Miért kódolható a videó? A grafikus felületekkel (GUI) szemben a kódalapú videóvágás reprodukálható, skálázható és automatizálható pipeline-okat tesz lehetővé.

  • Eszközkészlet: FFmpeg (CLI layer), MoviePy (Python abstraction layer), Auto-Editor (algoritmikus vágás).


Előkészület 

# csomag telepítés
pip install moviepy



Google colab környezetben

 Google Colab tökéletesen alkalmas erre, mivel egy előre konfigurált Python környezetet biztosít a felhőben, ingyenes GPU/CPU erőforrásokkal.


Minták:


## forrás video állomány kódból történő feltöltése google drive könyvtárból
from google.colab import drive
drive.mount('/content/drive')


## ---------------

## parancssorbol 05-10 mp közötti rész kimentszése
!ffmpeg -ss 00:00:05 -i /content/kukoricaszem.mp4 -to 00:00:10 -c copy /content/kukoricaszem_5.mp4


## ---------------


## csomag betültése
from moviepy.editor import VideoFileClip

# 1. Videó betöltése
clip = VideoFileClip("/content/kukoricaszem.mp4")

# 2. Vágás: 00:05-től 00:15-ig (másodpercben megadva)
vagott_clip = clip.subclip(3, 8)

# 3. Hangerő módosítása 50%-ra
vagott_clip = vagott_clip.volumex(0.5)

# 4. Kimentés új fájlba (H.264 / AAC kódolással)
vagott_clip.write_videofile("/content/kimenet_vagott.mp4", codec="libx264", audio_codec="aac")

# 5. Erőforrások felszabadítása
clip.close()
vagott_clip.close()


## ---------------


## elkészült video file letöltése (laptopra)
from google.colab import files
files.download('kimenet_vagott.mp4')


## ---------------


##  Több klip összefűzése áttűnéssel (MoviePy)


from moviepy.editor import VideoFileClip, concatenate_videoclips clip1 = VideoFileClip("intro.mp4").subclip(0, 5).crossfadeout(1.0) clip2 = VideoFileClip("fomult.mp4").subclip(10, 20).crossfadein(1.0) final_clip = concatenate_videoclips([clip1, clip2], method="compose") final_clip.write_videofile("osszefuzott.mp4", codec="libx264", audio_codec="aac")



## ---------------

##  Dinamikus vízjel ráhelyezése (MoviePy)

from moviepy.editor import VideoFileClip, ImageClip, CompositeVideoClip

video = VideoFileClip("bemenet.mp4")
watermark = (ImageClip("logo.png")
             .set_duration(video.duration)
             .resize(height=50)
             .set_opacity(0.6)
             .set_position(("right", "bottom")))

final = CompositeVideoClip([video, watermark])
final.write_videofile("vizjelezett.mp4", codec="libx264", audio_codec="aac")



## ---------------

## Gyorsítás és hangcsere (MoviePy)


from moviepy.editor import VideoFileClip, AudioFileClip

clip = VideoFileClip("bemenet.mp4").subclip(0, 10)
gyorsitott = clip.speedx(2.0) # 2x-es sebesség

uj_hang = AudioFileClip("zene.mp3").subclip(0, gyorsitott.duration)
final = gyorsitott.set_audio(uj_hang)
final.write_videofile("gyors_zenel.mp4", codec="libx264", audio_codec="aac")




Python kódpélda feltöltésre és azonnali vágásra


A Colab egyetlen cellájába bemásolható és futtatható az alábbi kód,
amely felugró ablakban kéri be a videót a laptopról, elvégzi a vágást,
majd kimenti az eredményt:


import os
from google.colab import files
from moviepy.editor import VideoFileClip

# 1. Videó feltöltése a lokális gépről
print("Kérlek, válaszd ki a feltöltendő MP4 fájlt a gépedről...")
uploaded = files.upload()

# Feltöltött fájlnév azonosítása
input_filename = list(uploaded.keys())[0]
print(f"\nSikeresen feltöltve: {input_filename}")

# 2. Vágási művelet végrehajtása (MoviePy)
# Példa: 00:05 és 00:20 másodperc közötti szakasz kivágása
clip = VideoFileClip(input_filename)
vagott_clip = clip.subclip(5, 20)

# 3. Kimentés a Colab munkakönyvtárába
output_filename = "kimenet_lokalisbol.mp4"
vagott_clip.write_videofile(output_filename, codec="libx264", audio_codec="aac")

# Erőforrások lezárása
clip.close()
vagott_clip.close()

# 4. Elkészült videó automatikus letöltése a laptopra (opcionális)
print("\nFeldolgozás kész. Letöltés indítása...")
files.download(output_filename)














Megjegyzések