JAVA VIDEO AUDIO ENCODER(java 中怎么从视频里面提取音频)

发布时间:2025-12-11 01:48:11 浏览次数:1

spring boot项目pom文件中添加以下依赖

<!--https://mvnrepository.com/artifact/ws.schild/jave-core--><dependency><groupId>ws.schild</groupId><artifactId>jave-core</artifactId><version>3.1.1</version></dependency><!--以下依赖根据系统二选一--><!--win系统平台的依赖--><dependency><groupId>ws.schild</groupId><artifactId>jave-nativebin-win64</artifactId><version>3.1.1</version></dependency><!--linux系统平台的依赖--><dependency><groupId>ws.schild</groupId><artifactId>jave-nativebin-linux64</artifactId><version>3.1.1</version></dependency>

Java单类实现代码,复制到Spring boot项目中

importws.schild.jave.Encoder;importws.schild.jave.EncoderException;importws.schild.jave.MultimediaObject;importws.schild.jave.encode.AudioAttributes;importws.schild.jave.encode.EncodingAttributes;importjava.io.File;importjava.util.Arrays;//java项目www.fhadmin.orgpublicclassVideoToAudio{//要输出的音频格式privatestaticStringoutputFormat="mp3";/***获得转化后的文件名*@paramsourceFilePath:源视频文件路径*@return*/publicstaticStringgetNewFileName(StringsourceFilePath){Filesource=newFile(sourceFilePath);StringfileName=source.getName().substring(0,source.getName().lastIndexOf("."));returnfileName+"."+outputFormat;}/***转化音频格式*@paramsourceFilePath:源视频文件路径*@paramtargetFilePath:目标音乐文件路径*@return*/publicstaticvoidtransform(StringsourceFilePath,StringtargetFilePath){Filesource=newFile(sourceFilePath);Filetarget=newFile(targetFilePath);//设置音频属性AudioAttributesaudio=newAudioAttributes();audio.setCodec(null);//设置转码属性EncodingAttributesattrs=newEncodingAttributes();attrs.setOutputFormat(outputFormat);attrs.setAudioAttributes(audio);try{//音频转换格式类Encoderencoder=newEncoder();MultimediaObjectmediaObject=newMultimediaObject(source);encoder.encode(mediaObject,target,attrs);System.out.println("转换已完成...");}catch(EncoderExceptione){e.printStackTrace();}}/***批量转化音频格式*@paramsourceFolderPath:源视频文件夹路径*@paramtargetFolderPath:目标音乐文件夹路径*@return*/publicstaticvoidbatchTransform(StringsourceFolderPath,StringtargetFolderPath){FilesourceFolder=newFile(sourceFolderPath);if(sourceFolder.list().length!=0){Arrays.asList(sourceFolder.list()).forEach(e->{transform(sourceFolderPath+"\\"+e,targetFolderPath+"\\"+getNewFileName(e));});}}publicstaticvoidmain(String[]args){batchTransform("C:\\Users\\tarzan\\Desktop\\video","C:\\Users\\tarzan\\Desktop\\audio");}}

运行结果截图

关于java 中怎么从视频里面提取音频问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注本站行业资讯频道了解更多相关知识。

JAVA VIDEO AUDIO ENCODER
需要做网站?需要网络推广?欢迎咨询客户经理 13272073477