如何在python decord库中设置fps?

2024-04-22 16:46:23 发布

您现在位置:Python中文网/ 问答频道 /正文

包链接:https://github.com/dmlc/decord

我使用decord来提取帧,它做得很好,默认情况下它使用视频fps。 假设我需要以0.2 fps的速度提取帧

我有一个48秒的视频,它的fps是30。 当我提取时,我得到1440帧

但是,我需要指定fps,如0.2 因此,输出应该是10帧

在ffmpeg中,我们可以在提取时指定fps。我也是这样问的

我的代码:

from decord import VideoReader
from matplotlib import pyplot as plt

vr = VideoReader("nature.mp4")
vr._avg_fps = 0.2  ##Not worked
for i in range(len(vr)):
    frame = vr[i].asnumpy()
    plt.imsave(f'{name}_Frame_{i}.jpg',frame)

感谢您的帮助


Tags: fromhttpsimportgithubcom视频链接情况
1条回答
网友
1楼 · 发布于 2024-04-22 16:46:23

也许您可以像这样跳过帧:

from decord import VideoReader
from matplotlib import pyplot as plt

vr = VideoReader("nature.mp4")
avg_fps = 0.2
for i in range(0, 1500, int(30/min(30,avg_fps))):
    frame = vr[i].asnumpy()
    plt.imsave(f'{name}_Frame_{i}.jpg',frame)

相关问题 更多 >