目錄
簡述
Maven依賴
獲取結果單位毫秒
獲取結果單位秒
總結
簡述
獲取mp4視頻的時長,沒啥好說明的,
Maven依賴
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.mp4parser</groupId>
<artifactId>isoparser</artifactId>
<version>1.9.41</version>
</dependency>
獲取結果單位毫秒
上代碼
import lombok.extern.slf4j.Slf4j;
import org.mp4parser.IsoFile;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
/** @Author huyi @Date 2021/10/20 11:09 @Description: MP4工具類 */
@Slf4j
public class Mp4Utils {
public static long readDuration(Path mp4Path) {
if (Files.notExists(mp4Path) || !Files.isReadable(mp4Path)) {
log.warn("檔案路徑不存在或不可讀 {}", mp4Path);
return 0;
}
try {
IsoFile isoFile = new IsoFile(mp4Path.toFile());
long duration = isoFile.getMovieBox().getMovieHeaderBox().getDuration();
// long timescale = isoFile.getMovieBox().getMovieHeaderBox().getTimescale();
return duration;
} catch (IOException e) {
log.error("讀取MP4檔案時長出錯", e);
return 0;
}
}
public static void main(String[] args) {
System.out.println(readDuration(Paths.get("C:\\Users\\huyi\\Desktop\\測驗.mp4")));
}
}
執行結果:

驗證結果:

獲取結果單位秒
上代碼
import lombok.extern.slf4j.Slf4j;
import org.mp4parser.IsoFile;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
/** @Author huyi @Date 2021/10/20 11:09 @Description: MP4工具類 */
@Slf4j
public class Mp4Utils {
public static long readDuration(Path mp4Path) {
if (Files.notExists(mp4Path) || !Files.isReadable(mp4Path)) {
log.warn("檔案路徑不存在或不可讀 {}", 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) {
log.error("讀取MP4檔案時長出錯", e);
return 0;
}
}
public static void main(String[] args) {
System.out.println(readDuration(Paths.get("C:\\Users\\huyi\\Desktop\\測驗.mp4")));
}
}
執行結果:

總結
沒啥好總結的,今天南京好冷,
如果本文對你有幫助,請點個贊支持一下吧,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/328234.html
標籤:其他
上一篇:Python 計算機視覺(五)—— OpenCV 進行影像幾何變換
下一篇:前端性能優化分析
