Spaces:
Sleeping
Sleeping
import copy | |
import subprocess | |
from pytube import YouTube | |
from scipy.signal import resample | |
import numpy as np | |
import pytsmod as tsm | |
from moviepy.audio.AudioClip import AudioArrayClip | |
from moviepy.editor import * | |
from moviepy.video.fx.speedx import speedx | |
from sentence_transformers import SentenceTransformer, util | |
from transformers import pipeline, BertTokenizer, BertForNextSentencePrediction | |
import torch | |
import whisper | |
subprocess.run(['apt-get', '-y', 'install', 'imagemagick']) | |
transcriber = whisper.load_model("medium") | |
sentence_transformer = SentenceTransformer('sentence-transformers/all-MiniLM-L6-v2') | |
tokenizer = BertTokenizer.from_pretrained("bert-base-cased") | |
next_sentence_predict = BertForNextSentencePrediction.from_pretrained("bert-base-cased").eval() | |
summarizer = pipeline("summarization", model="philschmid/bart-large-cnn-samsum") | |
def get_youtube(video_url): | |
# YouTubeの動画をダウンロード | |
print("Start download video") | |
yt = YouTube(video_url) | |
abs_video_path = yt.streams.filter(progressive=True, file_extension='mp4').order_by('resolution').desc().first().download(filename='download.mp4', output_path='movies/') | |
print("Success download video") | |
print(abs_video_path) | |
return abs_video_path | |
def two_chnnel_to_one_channel(sample): | |
# 音声を2チャンネルから1チャンネルに変換 | |
left_channel = sample[:, 0] | |
right_channel = sample[:, 1] | |
mono_sample = (left_channel + right_channel) / 2 | |
return mono_sample | |
def convert_sample_rate(data, original_sr, target_sr): | |
# 音声データのサンプリング周波数を変更 | |
target_length = int(len(data) * target_sr / original_sr) | |
return resample(data, target_length) |