only use audio/video extensions that CF caches by default
parent
d3919b0d0e
commit
3365e933df
|
@ -73,6 +73,10 @@ def process_audio(file, v):
|
||||||
|
|
||||||
name_original = secure_filename(file.filename)
|
name_original = secure_filename(file.filename)
|
||||||
extension = name_original.split('.')[-1].lower()
|
extension = name_original.split('.')[-1].lower()
|
||||||
|
|
||||||
|
if extension not in {'mp3','ogg','flac'}:
|
||||||
|
extension = 'mp3'
|
||||||
|
|
||||||
name = name + '.' + extension
|
name = name + '.' + extension
|
||||||
file.save(name)
|
file.save(name)
|
||||||
|
|
||||||
|
@ -95,7 +99,7 @@ def process_audio(file, v):
|
||||||
return name
|
return name
|
||||||
|
|
||||||
|
|
||||||
def webm_to_mp4(old, new, vid, db):
|
def convert_to_mp4(old, new, vid, db):
|
||||||
tmp = new.replace('.mp4', '-t.mp4')
|
tmp = new.replace('.mp4', '-t.mp4')
|
||||||
subprocess.run(["ffmpeg", "-y", "-loglevel", "warning", "-nostats", "-threads:v", "1", "-i", old, "-map_metadata", "-1", tmp], check=True, stderr=subprocess.STDOUT)
|
subprocess.run(["ffmpeg", "-y", "-loglevel", "warning", "-nostats", "-threads:v", "1", "-i", old, "-map_metadata", "-1", tmp], check=True, stderr=subprocess.STDOUT)
|
||||||
os.replace(tmp, new)
|
os.replace(tmp, new)
|
||||||
|
@ -133,11 +137,11 @@ def process_video(file, v):
|
||||||
extension = name_original.split('.')[-1].lower()
|
extension = name_original.split('.')[-1].lower()
|
||||||
new = old + '.' + extension
|
new = old + '.' + extension
|
||||||
|
|
||||||
if extension == 'webm':
|
if extension not in {'mp4','avi','mkv'}:
|
||||||
new = new.replace('.webm', '.mp4')
|
new = new.replace(f'.{extension}', '.mp4')
|
||||||
copyfile(old, new)
|
copyfile(old, new)
|
||||||
db = Session(bind=g.db.get_bind(), autoflush=False)
|
db = Session(bind=g.db.get_bind(), autoflush=False)
|
||||||
gevent.spawn(webm_to_mp4, old, new, v.id, db)
|
gevent.spawn(convert_to_mp4, old, new, v.id, db)
|
||||||
else:
|
else:
|
||||||
subprocess.run(["ffmpeg", "-y", "-loglevel", "warning", "-nostats", "-i", old, "-map_metadata", "-1", "-c:v", "copy", "-c:a", "copy", new], check=True)
|
subprocess.run(["ffmpeg", "-y", "-loglevel", "warning", "-nostats", "-i", old, "-map_metadata", "-1", "-c:v", "copy", "-c:a", "copy", new], check=True)
|
||||||
remove_media(old)
|
remove_media(old)
|
||||||
|
|
Loading…
Reference in New Issue