java如何獲取視頻文件的編解碼器代碼示例
引入jar包:
<dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv-platform</artifactId> <version>1.5.9</version> </dependency>
測(cè)試類(lèi)
package com.jd.brand.approve.controller.approve; import org.bytedeco.ffmpeg.global.avcodec; import org.bytedeco.javacv.FFmpegFrameGrabber; import java.io.File; public class VideoDecoder {//HEVC,AAC public static void main(String[] args) { String videoPath = "/Users/xuhaojie/Desktop/視頻.mp4"; // 視頻文件路徑 try { final FFmpegFrameGrabber fFmpegFrameGrabber = new FFmpegFrameGrabber(videoPath); fFmpegFrameGrabber.start(); final int videoCodec = fFmpegFrameGrabber.getVideoCodec(); final String videoCodecName = fFmpegFrameGrabber.getVideoCodecName(); System.out.println("h264:" + avcodec.AV_CODEC_ID_H264); System.out.println("h265:" + avcodec.AV_CODEC_ID_H265); System.out.println("hevc:" + avcodec.AV_CODEC_ID_HEVC); System.out.println(videoCodec); } catch (Exception e) { e.printStackTrace(); } } }
執(zhí)行結(jié)果
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Users/xuhaojie/Desktop/視頻.mp4':
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: isommp41mp42
creation_time : 2024-01-11T05:42:21.000000Z
Duration: 00:00:15.00, start: 0.000000, bitrate: 5703 kb/s
Stream #0:0[0x1](zho): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 124 kb/s (default)
Metadata:
creation_time : 2024-01-11T05:42:21.000000Z
handler_name : Core Media Audio
vendor_id : [0][0][0][0]
Stream #0:1[0x2](und): Video: hevc (Main 10) (hvc1 / 0x31637668), yuv420p10le(tv, bt709, progressive), 768x1366 [SAR 1:1 DAR 384:683], 5460 kb/s, 25 fps, 25 tbr, 25k tbn (default)
Metadata:
creation_time : 2024-01-11T05:42:21.000000Z
handler_name : Core Media Video
vendor_id : [0][0][0][0]
h264:27
h265:173
hevc:173
173
總結(jié)
到此這篇關(guān)于java如何獲取視頻文件的編解碼器的文章就介紹到這了,更多相關(guān)java獲取視頻編解碼器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用ShardingSphere-Proxy實(shí)現(xiàn)分表分庫(kù)
這篇文章介紹了使用ShardingSphere-Proxy實(shí)現(xiàn)分表分庫(kù)的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-02-02Java的四種常見(jiàn)線(xiàn)程池及Scheduled定時(shí)線(xiàn)程池實(shí)現(xiàn)詳解
這篇文章主要介紹了Java的四種常見(jiàn)線(xiàn)程池及Scheduled定時(shí)線(xiàn)程池實(shí)現(xiàn)詳解,在Java中,我們可以通過(guò)Executors類(lèi)來(lái)創(chuàng)建ScheduledThreadPool,Executors類(lèi)提供了幾個(gè)靜態(tài)方法來(lái)創(chuàng)建不同類(lèi)型的線(xiàn)程池,包括ScheduledThreadPool,需要的朋友可以參考下2023-09-09java實(shí)現(xiàn)微信小程序登錄態(tài)維護(hù)的示例代碼
本篇文章主要介紹了java實(shí)現(xiàn)微信小程序登錄態(tài)維護(hù)的示例代碼,具有一定的參考價(jià)值,有興趣的可以了解一下2017-09-09SpringBoot參數(shù)驗(yàn)證10個(gè)技巧值得收藏
Spring Boot提供了內(nèi)置的驗(yàn)證注解,可以幫助簡(jiǎn)單、快速地對(duì)輸入字段進(jìn)行驗(yàn)證,例如檢查 null 或空字段、強(qiáng)制執(zhí)行長(zhǎng)度限制、使用正則表達(dá)式驗(yàn)證模式以及驗(yàn)證電子郵件地址,那么在Spring Boot應(yīng)用中如何做好參數(shù)校驗(yàn)工作呢,本文提供了10個(gè)小技巧感興趣的朋友一起看看吧2023-08-08Java中tomcat memecached session 共享同步問(wèn)題的解決辦法
這篇文章主要介紹了Java中tomcat memecached session 共享同步問(wèn)題的解決辦法的相關(guān)資料,需要的朋友可以參考下2015-10-10JavaWeb項(xiàng)目Servlet無(wú)法訪(fǎng)問(wèn)問(wèn)題解決
這篇文章主要介紹了JavaWeb項(xiàng)目Servlet無(wú)法訪(fǎng)問(wèn)問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11Java反射之靜態(tài)加載和動(dòng)態(tài)加載的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)?lái)一篇Java反射之靜態(tài)加載和動(dòng)態(tài)加載的簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-10-10