from jyquickhelper import add_notebook_menu
add_notebook_menu()
from code_beatrix.art.video import *
download_youtube_video('Htaj3o3JD8I', '.', res=None)
'Harry Potter Theme Song.mp4'
La librairie librosa permet de retraiter le son comme de séparer les voix du fond sonore.
son = video_extract_audio('Harry Potter Theme Song.mp4')
son30 = audio_extract_audio(son, '00:00:00', '00:00:30')
son30.ipython_display()
100%|███████████████████████████████████████████████████████████████████████████████| 662/662 [00:01<00:00, 580.64it/s]
import os
[_ for _ in os.listdir(r'.') if 'mp4' in _ and ('Harry' in _ or "WIN_20180113_16" in _)]
['Harry Potter Theme Song.mp4', 'WIN_20180113_16_40_32_Pro.mp4', 'WIN_20180113_16_40_40_Pro.mp4', 'WIN_20180113_16_42_41_Pro.mp4', 'WIN_20180113_16_43_33_Pro.mp4', 'WIN_20180113_16_43_42_Pro.mp4', 'WIN_20180113_16_44_31_Pro.mp4', 'WIN_20180113_16_45_39_Pro.mp4', 'WIN_20180113_16_46_26_Pro.mp4', 'WIN_20180113_16_47_17_Pro.mp4', 'WIN_20180113_16_47_28_Pro.mp4', 'WIN_20180113_16_47_39_Pro.mp4', 'WIN_20180113_16_58_37_Pro.mp4']
J'ai perdu la vidéo qui me servait d'exemple, donc j'en prends une autre hasard mais le principe reste le même.
from pyensae.datasource import download_data
vidfile = download_data("gonzague_van_bervesseles_traitement_donnees.mp4")
vid = video_extract_video(vidfile, '00:00:06', '00:00:22')
vid2 = video_modification(vid, speed=2.)
video_mur = video_concatenate([vid2, vid])
son3 = audio_concatenate([son30, son30])
video_truquee = video_replace_audio(video_mur, son3)
video_save(video_truquee, 'rapide_crash2_truquee2.mp4', verbose=True)
[MoviePy] >>>> Building video rapide_crash2_truquee2.mp4 [MoviePy] Writing audio in rapide_crash2_truquee2TEMP_MPY_wvf_snd.mp3
100%|███████████████████████████████████████████████████████████████████████████████| 192/192 [00:00<00:00, 691.81it/s]
[MoviePy] Done. [MoviePy] Writing video rapide_crash2_truquee2.mp4
100%|████████████████████████████████████████████████████████████████████████████████| 289/289 [00:33<00:00, 8.57it/s]
[MoviePy] Done. [MoviePy] >>>> Video ready: rapide_crash2_truquee2.mp4