Повторяйте файлы FLV в папке и конвертируйте их в формат mp4 - PullRequest
0 голосов
/ 31 января 2019

Если у меня есть папка с множеством файлов формата flv, и я хочу перебрать эти файлы flv и преобразовать их в формат mp4 в Python и ffmpeg.Я хотел бы сохранить исходные имена файлов, за исключением замены их расширения «.flv» на «.mp4».

Я попытался выполнить итерацию FLV-файлов и преобразовать один FLV-файл в формат MP4, но я не знаю, как преобразовать все FLV-файлы в Python.Заранее благодарим за помощь.

import glob
import subprocess
import os

# Iterate all flv files in a folder
for file in glob.glob('*.flv'):
    print(file)

# Convert one flv file to mp4 file
inputfile = 'video.flv'
outputfile = 'video.mp4'

subprocess.run(['ffmpeg', '-i', inputfile, outputfile])

Ссылка: Преобразование ts в mp4 с Python

Ответы [ 2 ]

0 голосов
/ 01 февраля 2019

Этот код работает.Спасибо моему коллеге!

import subprocess
import os

src = r'D:\files'
dst = r'D:\files\mp4'

for root, dirs, filenames in os.walk(src, topdown=False):
    #print(filenames)
    for filename in filenames:
        if ".flv" in filename:
            inputfile = os.path.join(root, filename)
            #print(inputfile)
            outputfile = os.path.join(dst, filename.replace(".flv", ".mp4"))
            subprocess.run(['ffmpeg', '-i', inputfile, outputfile])  
0 голосов
/ 31 января 2019

Попробуй это.Вверху

import os

Внутри вашего цикла:

    name, ext = os.path.splitext(file)
    subprocess.run('ffmpeg -i {0}.flv {0}.mp4'.format(name))
...