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

Java如何獲取視頻文件的視頻時長

 更新時間:2025年02月11日 11:40:48   作者:Monly21  
文章介紹了如何使用Java獲取視頻文件的視頻時長,包括導入maven依賴和代碼案例,同時,也討論了在運行過程中遇到的SLF4J加載問題,并給出了解決方案

Java獲取視頻文件的視頻時長

1、導入maven依賴

<dependency>
    <groupId>org.mp4parser</groupId>
    <artifactId>isoparser</artifactId>
    <version>1.9.41</version>
</dependency>

2、代碼案例

import com.alibaba.fastjson2.JSON;
import org.mp4parser.IsoFile;

import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.text.ParseException;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;
import java.time.temporal.TemporalAdjusters;
import java.util.*;

public class Test {
    public static void main(String[] args) throws ParseException {
        long spsj = readDuration(Paths.get("C:\\Users\\Administrator\\Desktop\\ceshi.mp4"));
        System.out.println(spsj);
    }

    public static long readDuration(Path mp4Path) {
        if (Files.notExists(mp4Path) || !Files.isReadable(mp4Path)) {
            System.out.println("文件路徑不存在或不可讀 " + mp4Path);
            return 0;
        }
        try {
            IsoFile isoFile = new IsoFile(mp4Path.toFile());
            long duration = isoFile.getMovieBox().getMovieHeaderBox().getDuration();
            long timescale = isoFile.getMovieBox().getMovieHeaderBox().getTimescale();
            return duration / timescale;
        } catch (IOException e) {
            e.printStackTrace();
            return 0;
        }
    }
}

3、SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”

如果在運行過程中報錯:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".

問題分析:

org.slf4j.impl.StaticLoggerBinder通常存在于slf4j-nop.jar和slf4j-simple.jar中,雖然項目maven中已引入了simple包,但依然存在報錯。

說明simple包未真正被加載。

為了讓包更好的加載,在依賴中添加type為jar后,問題得到解決。

<!-- 依賴軟件版本 -->
<properties>
    <slf4j.version>1.7.30</slf4j.version>
</properties>


<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
<dependency>
   <groupId>org.slf4j</groupId>
   <artifactId>slf4j-api</artifactId>
   <version>${slf4j.version}</version>
</dependency>
<!--         https://mvnrepository.com/artifact/org.slf4j/slf4j-simple-->
<dependency>
   <groupId>org.slf4j</groupId>
   <artifactId>slf4j-simple</artifactId>
   <version>${slf4j.version}</version>
   <!-- 注意,若無type為jar則報錯-->
   <type>jar</type>
</dependency>

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Spring的事務控制實現(xiàn)方法

    Spring的事務控制實現(xiàn)方法

    這篇文章主要為大家詳細介紹了Spring的事務控制實現(xiàn)方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • SpringBoot接口路徑重復,啟動服務器失敗的解決

    SpringBoot接口路徑重復,啟動服務器失敗的解決

    這篇文章主要介紹了SpringBoot接口路徑重復,啟動服務器失敗的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java spring boot 實現(xiàn)支付寶支付功能的示例代碼

    Java spring boot 實現(xiàn)支付寶支付功能的示例代碼

    這篇文章主要介紹了Java spring boot 實現(xiàn)支付寶支付功能,本文通過實例代碼圖文相結(jié)合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • Java版本兼容性之JDK 21的SDK在JDK 1.8的使用解讀

    Java版本兼容性之JDK 21的SDK在JDK 1.8的使用解讀

    文章介紹了Java的字節(jié)碼版本機制以及如何處理UnsupportedClassVersionError錯誤,文章首先解釋了JVM如何通過檢查.class文件的字節(jié)碼版本號來確定是否可以運行該文件,然后給出了三個解決方案:統(tǒng)一環(huán)境、交叉編譯和多版本JAR
    2025-11-11
  • Java8函數(shù)式接口UnaryOperator用法示例

    Java8函數(shù)式接口UnaryOperator用法示例

    這篇文章主要介紹了Java8函數(shù)式接口UnaryOperator用法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • java語言描述Redis分布式鎖的正確實現(xiàn)方式

    java語言描述Redis分布式鎖的正確實現(xiàn)方式

    這篇文章主要介紹了java語言描述Redis分布式鎖的正確實現(xiàn)方式,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • springboot整合minio實現(xiàn)文件上傳與下載且支持鏈接永久訪問

    springboot整合minio實現(xiàn)文件上傳與下載且支持鏈接永久訪問

    本文主要介紹了springboot整合minio實現(xiàn)文件上傳與下載且支持鏈接永久訪問,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • springboot+vue部署按照及運行方法

    springboot+vue部署按照及運行方法

    在本篇文章里小編給大家整理了關于springboot+vue部署按照及運行方法和實例內(nèi)容,需要的朋友們學習參考下。
    2020-01-01
  • Spring框架中的JdbcTemplate

    Spring框架中的JdbcTemplate

    這篇文章主要介紹了Spring框架中的JdbcTemplate相關知識,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2025-05-05
  • Java中的Thread.join()詳解

    Java中的Thread.join()詳解

    這篇文章主要介紹了Thread.join()詳解?,join是Thread類的一個方法,啟動線程后直接調(diào)用,本文通過實例代碼介紹了join方法的作用及用法詳解,需要的朋友可以參考下
    2023-09-09

最新評論

嘉善县| 金堂县| 普安县| 洪江市| 抚顺县| 阳泉市| 禹城市| 武威市| 郑州市| 博爱县| 松溪县| 岳阳市| 吴堡县| 延安市| 昆明市| 方山县| 育儿| 惠水县| 商水县| 瑞安市| 澄江县| 通许县| 都匀市| 班玛县| 云南省| 青浦区| 四平市| 贵定县| 三都| 章丘市| 黄骅市| 忻城县| 济宁市| 通州区| 石屏县| 哈尔滨市| 白玉县| 文安县| 万州区| 浙江省| 晋州市|