簡體   English   中英

使用skvideo包python獲取視頻的幀頻

[英]Get frame rate of a video using skvideo package python

我正在使用skvideo包閱讀視頻

video = skvideo.io.vread(video_path)

這僅返回幀。 但是我也想讀取幀頻,以便在保存處理后的視頻時,可以以相同的幀頻保存它。

我在StackOverflow上找到了很多答案來獲取幀速率,但是它們都使用open-cv 我不想使用open-cv來讀取幀速率。

您確實可以使用skvideo讀取視頻元數據。

例如:

import skvideo.io
import skvideo.datasets
import json
metadata = skvideo.io.ffprobe(skvideo.datasets.bigbuckbunny())
print(metadata.keys())
print(json.dumps(metadata["video"], indent=4))

那將打印所有視頻元數據。

如果您僅對幀速率感興趣,則可以這樣獲得:

import skvideo.io
import skvideo.datasets

# Example video file
filename = skvideo.datasets.bigbuckbunny()

# Read actual video data and do something with it later on..
videodata = skvideo.io.vread(filename)

# Read video metadata and do something with it..
videometadata = skvideo.io.ffprobe(filename)
frame_rate = videometadata['video']['@avg_frame_rate']

您可以從文檔中找到示例,請參見下面的鏈接:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM