Bir fuar hazırlığı sırasında eldeki videoları birleştirmem gerekti. İnternetten araştırarak ve yapay zeka kullanarak kodları buldum, kendimce düzenledim.
Kullanmak için bir şekilde bilgisayarınızda Python yüklü olması gerektiğini unutmayın.
Aşağıdaki kodu herhangi bir text editörüne (notepad) ekleyip, dosya uzantısı .py olarak kaydedin.
Birleştirmek istediğiniz dosyaları ve kaydettiğiniz kod dosyasını aynı klasör içine koyun. Klasörde sadece kod dosyası ve video dosyaları olsun.
Python içinde kodu çalıştırmak için gerekli kütüphaneleri eklemeniz gerekli. Aşağıdaki kodu kullanarak kütüphaneyi yükleyin.
pip install moviepy
Kod çalıştıktan sonra çıktı dosyasını aynı klasör içinde “output.mp4” olarak bulabilirsiniz.
import os
import inspect
from moviepy import* #.editor import VideoFileClip, concatenate_videoclips
def get_script_directory():
"""Bu kod dosyasının olduğu konumun adresini getirir. str tipinde dosya yolunu verir."""
script_path = inspect.getfile(inspect.currentframe())
return os.path.dirname(os.path.abspath(script_path))
def find_file_paths(folder_path, file_extensions=['mkv', 'mp4']):
# Sadece mkv ve mp4 uzantılı dosyaları alır. Diğerlerini de eklemek istersen file_extensions listesine ekle.
file_paths = []
# Klasördeki tüm dosyaları listeler
all_files = glob.glob(os.path.join(folder_path, '*'))
# Belirli uzantılara sahip dosyaları seçer
file_paths = [file for file in all_files if file.lower().endswith(tuple(file_extensions))]
return file_paths
def main():
filenames = find_file_paths (get_script_directory())
# bir önceki versiyonda şu şekilde liste olarak veriyordum= ["cv2.mkv","cv3.mkv","cv4.mkv","cv5.mkv","cv6.mkv","cv7.mkv","cv8.mkv","cv9.mkv"]
# Benzer bir işlem os.listdir yada benzer bir kodla yapılabilir.
clips = []
for file in filenames:
clips.append(VideoFileClip(file, target_resolution=(1920,1080)))
final_clip = concatenate_videoclips(clips, method="compose")
# method="chain" varsayılan. Eğer tüm videolar aynı boyutlardaysa kullanabilirsin.
final_clip.write_videofile("out.mp4")
if __name__ == '__main__':
main()
Kodu Python’da nasıl çalıştıracağınızı bilmiyorsanız:
- Python bilgisayarınızda yüklü değilse https://www.python.org sitesinden indirip yükleyin.
- moviepy kütüphanesini yukarıdaki kodu komut satırına yazarak yükleyin.
- Yeni bir klasör açıp tüm videoları buraya koyun.
- Yukarıdaki kodları herhangi bir yazım editörüne yoksa “not defteri” uygulamasına yapıştırıp, herhangi bir isimle .py uzantılı olarak videoların olduğu klasöre kaydedin. Örneğin: videobirlestir.py
- Komut satırını açıp sadece videoların ve kodun bulunduğu klasöre gidin.
- “python videobirlestir.py” şeklinde siz kod dosyasının adını ne verdiyseniz yerine onu yazıp, enter tuşuna basın. Kod çalışmayı bitirdiğinde komut satırına geri dönecektir.
- Birleştirilmiş video, videoların ve kodun olduğu klasörde output.mp4 olarak kaydedilecektir.
Yorumlar