PYTHON-音视频合并方法

我们使用 ffmeg或者是moviepy.editor对得到的音视频进行合并处理。

目录

前言

代码内容

1.合并音视频方法1

2.合并音视频方法2

总结


前言

我们这里是利用python来进行音视频合并的。


代码内容

主函数就在里面了,因为视频它是音频和视频分开的所以需要合并之后才有声音。本来视频合并使用的是movieoy的,但是速度过慢,因此还是使用了ffmpeg(需要优先下载)。本来打算用pyqt弄出gui界面的,但是太忙了就停了。这里我们需要下载这个软件,通过它可以合并视频的音频文件和视频文件。

http://ffmpeg.org/download.html

1.合并音视频方法1

第一种的加载速度会比较慢。 

def merge():
     all = get_url(url)
     title = all[2]
     video_get()
     audio_get()
     audio = ffmpeg.input(f'{title}.mp3')
     video = ffmpeg.input(f'{title}.mp4')
     print("合并视音频")
     out = ffmpeg.output(video, audio, f'下载目录/{title}.mp4')
     out.run()
     os.remove(f'{title}.mp3')
     os.remove(f'{title}.mp4')
     print("完成")

2.合并音视频方法2

这是通过moviepy.editor这个包进行合并。

def merge():
     all = get_url(url)
     title = all[2]
     video_get()
     audio_get()
     video = VideoFileClip(f'{title}.mp4')
     audio = AudioFileClip(f'{title}.mp3')
     video_merge = video.set_audio(audio)
     video_merge.write_videofile(f"下载目录/{title}.mp4")
     os.remove(f'{title}.mp4')
     os.remove(f'{title}.mp3')

但是方法1的效率比方法2的高。 


总结

通过这个方法可以很轻松的得到视频的视频文件和音频文件,但是如何去合成视频和音频则有很多更好的选择。我们这里只简单用了俩种方法。

  • 4
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
要使用Python合并音视频,您可以使用FFmpeg库。首先,您需要下载和安装FFmpeg软件。您可以从其官方网站下载。 接下来,您可以使用以下步骤来合并音频和视频: 1. 使用Python的subprocess模块调用FFmpeg命令行工具。 2. 使用FFmpeg命令行工具将视频和音频分别转换为相应的流。 3. 使用FFmpeg命令行工具将音频流和视频流合并在一起。 4. 将合并后的音视频流写入新的文件。 下面是一个示例代码段,展示了如何使用Python和FFmpeg来合并音视频: ```python import subprocess def merge_audio_video(video_file, audio_file, output_file): # 使用FFmpeg将视频文件转换为视频流 subprocess.run(['ffmpeg', '-i', video_file, '-c', 'copy', '-an', 'temp_video.mp4']) # 使用FFmpeg将音频文件转换为音频流 subprocess.run(['ffmpeg', '-i', audio_file, '-c', 'copy', '-vn', 'temp_audio.mp3']) # 使用FFmpeg合并视频流和音频流 subprocess.run(['ffmpeg', '-i', 'temp_video.mp4', '-i', 'temp_audio.mp3', '-c', 'copy', output_file]) # 删除临时文件 subprocess.run(['rm', 'temp_video.mp4', 'temp_audio.mp3']) # 调用示例 merge_audio_video('video.mp4', 'audio.mp3', 'output.mp4') ``` 请注意,上述示例代码只是一个参考,您可能需要根据您的具体需求进行适当的修改。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [PYTHON-音视频合并方法](https://blog.csdn.net/m0_49015921/article/details/125847349)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [python-从视频中提取音频+将音频和视频合并](https://blog.csdn.net/lidashent/article/details/126762307)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值