最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaCV獲取視頻文件時(shí)長的方法

 更新時(shí)間:2019年07月24日 13:02:32   作者:iteye_11946  
這篇文章主要為大家詳細(xì)介紹了JavaCV獲取視頻文件時(shí)長的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了JavaCV獲取視頻文件時(shí)長的具體代碼,供大家參考,具體內(nèi)容如下

1、做項(xiàng)目時(shí),需要讀取視頻文件的時(shí)長,網(wǎng)上有很多通過自己寫的JNI接口來實(shí)現(xiàn),但由于項(xiàng)目使用了JavaCV和OpenCV,其中有一些處理視頻的接口,所以還是想打算盡可能使用JavaCV和OpenCV來實(shí)現(xiàn),經(jīng)過查閱了相關(guān)的一些資料,實(shí)現(xiàn)了使用JavaCV獲取視頻文件時(shí)長的功能。

2、基本實(shí)現(xiàn)思路:獲取視頻的總幀數(shù)和每秒幀數(shù)(FPS),然后通過公式:視頻總幀數(shù)/每秒幀數(shù)(FPS)=時(shí)長(單位秒)

3、實(shí)現(xiàn)代碼如下:

package com.duoduo.javacv.samples;

import static com.googlecode.javacv.cpp.opencv_highgui.CV_CAP_PROP_FPS;
import static com.googlecode.javacv.cpp.opencv_highgui.CV_CAP_PROP_FRAME_COUNT;
import static com.googlecode.javacv.cpp.opencv_highgui.cvCreateFileCapture;
import static com.googlecode.javacv.cpp.opencv_highgui.cvGetCaptureProperty;
import static com.googlecode.javacv.cpp.opencv_highgui.cvReleaseCapture;

import java.io.File;

import com.googlecode.javacv.cpp.opencv_highgui.CvCapture;

/**
 * 獲取視頻時(shí)長
 * 
 * @author chengesheng
 * @date 2013-5-22 下午11:15:25
 * @note VideoFileLength
 */
public final class VideoFileLength {

 public static void main(String[] argus) {
 float len = getVideoFileLength("D:/J2EE/kdvp/webrtc/webapp/images/bike.avi");
 System.out.println("Video length: " + len + " s");
 }

 public static float getVideoFileLength(String fileName) {
 File file = new File(fileName);
 if (!file.exists()) {
  return 0;
 }

 float len = 0;
 CvCapture capture = cvCreateFileCapture(fileName);
 try {
  // 獲取視頻總幀數(shù)
  long frameCount =(long) cvGetCaptureProperty(capture, CV_CAP_PROP_FRAME_COUNT);
  // 獲取視頻每秒幀數(shù)
  long fps =(long) cvGetCaptureProperty(capture, CV_CAP_PROP_FPS);

  len = (float) frameCount / fps;
 } catch (Exception e) {
  e.printStackTrace();
 } finally {
  cvReleaseCapture(capture);
 }
 return len;
 }
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • eclipse實(shí)現(xiàn)Schnorr數(shù)字簽名

    eclipse實(shí)現(xiàn)Schnorr數(shù)字簽名

    這篇文章主要為大家詳細(xì)介紹了eclipse實(shí)現(xiàn)Schnorr數(shù)字簽名,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • Spring Boot集成ShedLock分布式定時(shí)任務(wù)的實(shí)現(xiàn)示例

    Spring Boot集成ShedLock分布式定時(shí)任務(wù)的實(shí)現(xiàn)示例

    ShedLock確保您計(jì)劃的任務(wù)最多同時(shí)執(zhí)行一次。如果一個(gè)任務(wù)正在一個(gè)節(jié)點(diǎn)上執(zhí)行,則它會(huì)獲得一個(gè)鎖,該鎖將阻止從另一個(gè)節(jié)點(diǎn)(或線程)執(zhí)行同一任務(wù)。
    2021-05-05
  • springboot學(xué)習(xí)之Thymeleaf模板引擎及原理介紹

    springboot學(xué)習(xí)之Thymeleaf模板引擎及原理介紹

    本文主要介紹一下SpringBoot給我們推薦的Thymeleaf模板引擎,這模板引擎呢,是一個(gè)高級語言的模板引擎,他的這個(gè)語法更簡單而且功能更強(qiáng)大,對springboot?Thymeleaf模板引擎相關(guān)知識感興趣的朋友一起看看吧
    2022-02-02
  • SpringBoot+Vue項(xiàng)目部署實(shí)現(xiàn)傳統(tǒng)方式

    SpringBoot+Vue項(xiàng)目部署實(shí)現(xiàn)傳統(tǒng)方式

    我們在進(jìn)行前后端分離開發(fā)的時(shí)候,一般是將前端項(xiàng)目部署到nginx服務(wù)器上,與后端項(xiàng)目分開部署,這篇文章主要給大家介紹了關(guān)于SpringBoot+Vue項(xiàng)目部署實(shí)現(xiàn)傳統(tǒng)方式的相關(guān)資料,需要的朋友可以參考下
    2024-01-01
  • Eclipse遠(yuǎn)程debug的步驟與注意事項(xiàng)

    Eclipse遠(yuǎn)程debug的步驟與注意事項(xiàng)

    今天小編就為大家分享一篇關(guān)于Eclipse遠(yuǎn)程debug的步驟與注意事項(xiàng),小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • Java實(shí)現(xiàn)獲取前、后N天日期的函數(shù)分享

    Java實(shí)現(xiàn)獲取前、后N天日期的函數(shù)分享

    本文給大家分享的是使用java實(shí)現(xiàn)的獲取當(dāng)前日期前后N天的函數(shù),非常的簡單實(shí)用,有需要的小伙伴可以參考下。
    2015-03-03
  • 微服務(wù)SpringBoot整合Jasypt加密工具的場景分析

    微服務(wù)SpringBoot整合Jasypt加密工具的場景分析

    Jasypt是Java加密工具包,能支持對密碼的哈希加密,對文本和二進(jìn)制數(shù)據(jù)的對稱加解密,還能集成SpringBoot項(xiàng)目對配置文件中的密鑰進(jìn)行加密存儲(chǔ),這篇文章主要介紹了微服務(wù)SpringBoot整合Jasypt加密工具,需要的朋友可以參考下
    2022-10-10
  • springboot工程jar包部署到云服務(wù)器的方法

    springboot工程jar包部署到云服務(wù)器的方法

    這篇文章主要介紹了springboot工程jar包部署到云服務(wù)器的方法,本文通過實(shí)例介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2018-05-05
  • SpringBoot底層注解超詳細(xì)介紹

    SpringBoot底層注解超詳細(xì)介紹

    這篇文章主要介紹了SpringBoot底層注解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-09-09
  • mybatis?@InsertProvider報(bào)錯(cuò)問題及解決

    mybatis?@InsertProvider報(bào)錯(cuò)問題及解決

    這篇文章主要介紹了mybatis?@InsertProvider報(bào)錯(cuò)的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07

最新評論

庆阳市| 平阴县| 调兵山市| 基隆市| 万载县| 奎屯市| 建德市| 扶余县| 泉州市| 凤台县| 营口市| 潼南县| 龙井市| 额济纳旗| 盐亭县| 新巴尔虎左旗| 扶余县| 分宜县| 安宁市| 新竹县| 湖州市| 麟游县| 达拉特旗| 班戈县| 桐乡市| 西华县| 嘉禾县| 屏南县| 绥芬河市| 阿克陶县| 莱阳市| 屏东市| 政和县| 迁西县| 红河县| 元谋县| 紫云| 济阳县| 高邑县| 上思县| 长垣县|