java如何获取视频文件的编解码器代码示例
作者:复利人生
引入jar包:
<dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv-platform</artifactId> <version>1.5.9</version> </dependency>
测试类
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(); } } }
执行结果
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
总结
到此这篇关于java如何获取视频文件的编解码器的文章就介绍到这了,更多相关java获取视频编解码器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!