Python Moviepy 视频编辑踩坑实录2:音频如何修改为单通道

一、前言:

通过上一篇博文的处理,《Python Moviepy 视频编辑踩坑实录1:谁动了我的音频比特率》我们成功的把音频文件的音频采样率,成功的转化为了目标值:16000,但是接下来遇到了,下面的问题,通道数,我们的目标值是:1,单通道,而处理完之后的结果却是2通道?怎么办?怎么办?

一、遇到问题·

Python Moviepy 视频编辑踩坑实录2:音频如何修改为单通道_第1张图片

二、解决方法

2.1 视频保存接口: 没有直接可用参数

 视频保存接口上上一篇博文《Python Moviepy 视频编辑踩坑实录01:谁动了我的音频比特率》

Python Moviepy 视频编辑踩坑实录2:音频如何修改为单通道_第2张图片

官方文档:写入接口参数详见上文。

2.2 音频保存接口:没有直接可用参数

Python Moviepy 视频编辑踩坑实录2:音频如何修改为单通道_第3张图片

Python Moviepy 视频编辑踩坑实录2:音频如何修改为单通道_第4张图片

从以上官方文档来看,没有找到,可用的,参数设置,实现我们的目标。

三、处理办法:修改videoClip.py第298行

步骤1:视频保存参数设置【只改此处,不起作用】

之前的处理,我们忽略了一个参数:

Python Moviepy 视频编辑踩坑实录2:音频如何修改为单通道_第5张图片

步骤2:重点,重点,重点

Python Moviepy 视频编辑踩坑实录2:音频如何修改为单通道_第6张图片

        if make_audio:
            self.audio.write_audiofile(audiofile, audio_fps,
                                       audio_nbytes, audio_bufsize,
                                       audio_codec, bitrate=audio_bitrate,
                                       write_logfile=write_logfile,
                                       verbose=verbose,
                                       ffmpeg_params=ffmpeg_params,
                                       logger=logger)

        ffmpeg_write_video(self, filename, fps, codec,
                           bitrate=bitrate,
                           preset=preset,
                           write_logfile=write_logfile,
                           audiofile=audiofile,
                           verbose=verbose, threads=threads,
                           ffmpeg_params=ffmpeg_params,
                           logger=logger)

四、总结

python Moviepy属于第三方封装的,基于ffmpeg的包,直接调用,涉及到很多默认参数的设定,会影响,最终目标的实现。慎用,慎用。可能的情况下,推荐使用ffmpeg原始参数和命令

你可能感兴趣的:(Python,音视频)