kognzhezhi 发表于 2023-7-20 07:42

python合并视频和音频时候出问题了

本帖最后由 kognzhezhi 于 2023-10-15 09:33 编辑

下载的音频和视频,合并完视频播放的时候 有的视频播放一会画面就卡住了,但是声音还是有,这种情况是怎么回事呢?
当时合并了好几个视频,其他的视频可以画面和声音同步,只有几个会出现上面的情况,我也分别检查了合并之前的视频和音频都没有什么问题

下面是合并代码
video_clip=VideoFileClip(f'd:/video_temp/{i}.m4s')
    audio_clip=AudioFileClip(f'd:/audio_temp/{i}.mp3')
    final_clip=video_clip.set_audio(audio_clip)
    final_clip.write_videofile(f'd:/video/{i}.mp4')
    print(f"{i}+'视频合并完成'")

cxb2468 发表于 2023-7-20 07:52

本帖最后由 cxb2468 于 2023-7-20 07:56 编辑

afx.audio_loop( audio_clip, duration=video_clip.duration)
audio_clip_add = CompositeAudioClip([video_audio_clip,audio)
视频时间和音频时间 同步了吗?Moviepy

低调到没话说 发表于 2023-7-20 07:56

当视频画面卡住而声音仍然有的情况,可能是由于视频帧率与音频采样率不匹配引起的。

视频通常有一个固定的帧率,而音频则有一个固定的采样率。如果视频和音频的帧率或采样率不一致,就会导致播放时出现画面卡顿的情况。这可能会发生在合并多个视频时,因为不同的视频可能来自不同的源,它们的帧率和采样率可能会有所不同。

为了解决这个问题,您可以尝试使用MoviePy库中的`set_fps`函数来设置视频的帧率,或使用`set_fps`函数来设置音频的采样率,使它们保持一致。具体做法如下:

```python
from moviepy.editor import *

# 读取视频和音频文件
video_clip = VideoFileClip(f'd:/video_temp/{i}.m4s')
audio_clip = AudioFileClip(f'd:/audio_temp/{i}.mp3')

# 设置视频帧率和音频采样率一致
video_clip = video_clip.set_fps(audio_clip.fps)

# 合并视频和音频
final_clip = video_clip.set_audio(audio_clip)

# 保存最终合成的视频文件
final_clip.write_videofile(f'd:/video/{i}.mp4')

print(f"{i}+'视频合并完成'")
```

通过将视频的帧率设置为音频的采样率,或将音频的采样率设置为视频的帧率,可以确保视频和音频的时长一致,从而避免画面卡顿的问题。

如果问题仍然存在,请确保视频和音频的格式与编码没有问题,并且视频文件本身没有损坏。您还可以尝试使用其他视频播放器来测试是否有相同的问题。有时候视频播放器本身可能会导致画面卡顿的问题。

kognzhezhi 发表于 2023-7-20 07:57

cxb2468 发表于 2023-7-20 07:52
afx.audio_loop( audio_clip, duration=video_clip.duration)   视频时间和音频时间 同步了吗?

没有哎,我试试这个代码

kognzhezhi 发表于 2023-7-20 08:14

低调到没话说 发表于 2023-7-20 07:56
当视频画面卡住而声音仍然有的情况,可能是由于视频帧率与音频采样率不匹配引起的。

视频通常有一个固定 ...

好的谢谢,我试试

kll545012 发表于 2023-7-20 09:21

低调到没话说 发表于 2023-7-20 07:56
当视频画面卡住而声音仍然有的情况,可能是由于视频帧率与音频采样率不匹配引起的。

视频通常有一个固定 ...

这是AI回答的吧~~{:1_918:}

XiaoZouYu 发表于 2023-7-20 09:39

kognzhezhi 发表于 2023-7-20 08:14
好的谢谢,我试试

这,说了个寂寞

kognzhezhi 发表于 2023-7-20 09:53

XiaoZouYu 发表于 2023-7-20 09:39
这,说了个寂寞

他这个说的不对么

chenzhigang 发表于 2023-7-20 09:55

别用python 用ffmpeg 合

初见悲风 发表于 2023-7-20 10:36

九楼的老哥说的是一个好的办法,可以用python下载视频,但是合并视频python总会出问题,建议用ffmpeg,可以在python中用subprocess.run()调用
页: [1] 2
查看完整版本: python合并视频和音频时候出问题了