python 將視頻 通過(guò)視頻幀轉(zhuǎn)換成時(shí)間實(shí)例
我就廢話(huà)不多說(shuō)了,還是直接看代碼吧!
def frames_to_timecode(framerate,frames):
"""
視頻 通過(guò)視頻幀轉(zhuǎn)換成時(shí)間
:param framerate: 視頻幀率
:param frames: 當(dāng)前視頻幀數(shù)
:return:時(shí)間(00:00:01:01)
"""
return '{0:02d}:{1:02d}:{2:02d}:{3:02d}'.format(int(frames / (3600 * framerate)),
int(frames / (60 * framerate) % 60),
int(frames / framerate % 60),
int(frames % framerate))
print(frames_to_timecode(25,123))
00:00:04:23
補(bǔ)充知識(shí):python+opencv截取指定幀的視頻段,同時(shí)轉(zhuǎn)換分辨率
在網(wǎng)上看了好久一直沒(méi)解決問(wèn)題,好多都是復(fù)制粘貼別人的東西,耽誤時(shí)間,小編在多次嘗試和修改后終于成功了,廢話(huà)不多說(shuō),直接上代碼:
import cv2
videoCapture = cv2.VideoCapture('K:/test/00000.mov')
fps = 30 # 保存視頻的幀率
size = (350, 256) # 保存視頻的大小
videoWriter = cv2.VideoWriter('K:/test/0000_test.avi', cv2.VideoWriter_fourcc('X', 'V', 'I', 'D'), fps, size)
i = 0
while True:
success, frame = videoCapture.read()
if success:
i += 1
print('i = ', i)
if (i >= 1000 and i <= 2000):
frame=cv2.resize(frame,(350,256))
videoWriter.write(frame)
if(i>2000):
break
else:
print('end')
break
其中原視頻格式應(yīng)該轉(zhuǎn)換成 .mov(小編只在這種情況獲得成功,其他可以自行測(cè)試),如果需要調(diào)整分辨率的話(huà),必須有:
frame=cv2.resize(frame,(350,256))
這一過(guò)程,否則視頻幀將無(wú)法寫(xiě)入,視頻輸出大小為0。
有不足的地方希望指出,希望能幫到你!
以上這篇python 將視頻 通過(guò)視頻幀轉(zhuǎn)換成時(shí)間實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python新手入門(mén)webpy小應(yīng)用開(kāi)發(fā)
本文主要介紹了Python新手入門(mén)webpy小應(yīng)用開(kāi)發(fā),文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-07-07
Python開(kāi)發(fā)游戲之井字游戲的實(shí)戰(zhàn)步驟
最近正在學(xué)習(xí)Python,所以最近做了一個(gè)關(guān)于Python的實(shí)例,下面這篇文章主要給大家介紹了關(guān)于Python開(kāi)發(fā)游戲之井字游戲的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02
Python學(xué)習(xí)筆記之抓取某只基金歷史凈值數(shù)據(jù)實(shí)戰(zhàn)案例
這篇文章主要介紹了Python學(xué)習(xí)筆記之抓取某只基金歷史凈值數(shù)據(jù)案例,結(jié)合具體實(shí)例形式分析了Python基于selenium庫(kù)的數(shù)據(jù)抓取及mysql交互相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-06-06
Django自帶用戶(hù)認(rèn)證系統(tǒng)使用方法解析
這篇文章主要介紹了Django自帶用戶(hù)認(rèn)證系統(tǒng)使用方法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11
Python自定義函數(shù)計(jì)算給定日期是該年第幾天的方法示例
這篇文章主要介紹了Python自定義函數(shù)計(jì)算給定日期是該年第幾天的方法,結(jié)合具體實(shí)例形式分析了Python日期時(shí)間計(jì)算相關(guān)操作技巧,需要的朋友可以參考下2019-05-05
pycharm 無(wú)法加載文件activate.ps1的原因分析及解決方法
這篇文章主要介紹了pycharm報(bào)錯(cuò)提示:無(wú)法加載文件\venv\Scripts\activate.ps1,因?yàn)樵诖讼到y(tǒng)上禁止運(yùn)行腳本,解決方法終端輸入get-executionpolicy,回車(chē)返回Restricted即可,需要的朋友可以參考下2022-11-11
python實(shí)現(xiàn)線(xiàn)性回歸的示例代碼
線(xiàn)性回歸就是通過(guò)多次取點(diǎn),找出符合函數(shù)的曲線(xiàn),那么就可以完成一維線(xiàn)性回歸,本文通過(guò)實(shí)例代碼給大家介紹python實(shí)現(xiàn)線(xiàn)性回歸的相關(guān)知識(shí),感興趣的朋友一起看看吧2022-02-02
python基于watchdog庫(kù)全自動(dòng)化監(jiān)控目錄文件
這篇文章主要介紹了python基于watchdog庫(kù)全自動(dòng)化監(jiān)控目錄文件,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-03-03

