【问题标题】:ffmpeg mkv to mp4 converter drops part of the audio, how to configure in python?ffmpeg mkv to mp4转换器会丢失部分音频,如何在python中配置?
【发布时间】:2021-03-14 05:04:51
【问题描述】:

我正在通过 ffmpeg 和 python 将几个 mkv 文件转换为 mp4。但是,当我去播放它们时,背景音频会完美同步,但就好像所有声音都掉了一样。有没有办法将所有音频设置为单声道?

或者如何指定通道数?

以下音频和视频设置在 vlc 中起作用:

video settings:
Codec = H-265
bitrate = 800 kb/s

audio settings:
Codec = MP3
bitrate = 128 kb/s
channels = 2
sample rate = 8000Hz

我的python代码:

import os
import ffmpeg
import glob

start_dir = os.chdir("C:/Users/Me/Downloads/")
files = [file for file in glob.glob("*.mkv")]

def convert_to_mp4(mkv_file):
    name, ext = os.path.splitext(mkv_file)
    out_name = name + ".mp4"
    ffmpeg.input(mkv_file).output(out_name).run()
    print("Finished converting {}".format(mkv_file))

print(os.getcwd())
for path, folder, files in os.walk(os.getcwd()):
    for file in files:
        if file.endswith('.mkv'):
            print("Found file: %s" % file)
            convert_to_mp4(os.path.join(os.getcwd(), file))
        else:
            pass

【问题讨论】:

    标签: ffmpeg mp4 mkv


    【解决方案1】:

    我还使用 FFMPEG 将文件从 .mkv 转换为 .mp4,并且在音频方面遇到了同样的问题。所以,我改用了moviepy库来转换它而不会丢失音频。

    您可以通过在 clip.write_videofile() 的参数中提及 video-codec 和 audio-codec 来简单地使用它,如下所述:

    import moviepy.editor as movpy
    
    clip = movpy.VideoFileClip("video.mkv") #Reading .mkv file
    clip.write_videofile("video.mp4", codec="libx264",audio_codec="aac") #Writing .mp4 file
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-12-25
      • 2018-03-09
      • 2019-11-17
      • 2014-11-04
      • 2016-01-04
      • 2021-02-07
      • 1970-01-01
      相关资源
      最近更新 更多