gpt4 book ai didi

python - 同时运行两个视频编写器会产生失真的输出文件

转载 作者:行者123 更新时间:2023-12-02 17:27:15 25 4
gpt4 key购买 nike

我正在尝试使用OpenCV从单个RTP流生成2个视频文件。 2个文件的长度都应为30秒,第二个文件的前10秒应包含第一个文件的后10秒。

第一个文件的前20秒流畅地写入,没有任何失真,但是在与第一个视频写入器并行执行第二个视频写入器之后,最后10秒钟开始失真和卡顿。

第一个视频编写器将写入第一个视频文件,然后当它达到20秒标记时,第二个视频编写器将开始与第一个视频文件同时运行,以写入第二个视频文件。

if frameCounter1 > (20 * frame_rate):

has_frame, frame = vcap.read()

if not has_frame:
logging.error('Can\'t get frame (disconnected from camera stream)')
sys.exit()

vidWriter1.write(frame)
frameCounter1 = frameCounter1 + 1

vidWriter2.write(frame)
frameCounter2 = frameCounter2 + 1

最佳答案

一种可能是将整个50秒保存在RAM中,并在最后写入两个流。

或者第二种可能是将第一个视频实时写入磁盘,然后将最后的30s保留在RAM中,然后再将它们写入第二个视频。

第三种可能是运行3个线程,一个线程仅连续循环获取视频,而另外两个线程则从第一个线程接收帧并分别写入一个视频文件。它们应该是两倍,或者最好是两倍以上。

关于python - 同时运行两个视频编写器会产生失真的输出文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58434359/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com