java比特率转换_java视频转换那些事

​java视频转换的两种方式,基本上都是基于ffmpeg插件,目前网上对java视频转换基本上都是调用插件,拼命令,来实现视频格式的转换,然而这种方式在本地是好用的,但是在weblogic服务器上运行时,就会发生问题,主要原因是window和linux系统不同,所使用ffmpeg插件的格式有所不同.如果在Weblogic服务器上运行,需要去ffmpeg官网下载linux版本的插件.

首先,记录下第一种使用ffmpeg插件方式进行视频格式转换的代码地址:

https://www.cnblogs.com/tohxyblog/p/6640786.html

​    其次,主要记录下使用jave jar包进行视频格式转换的方法,因为调用jar包的方式,不需要考虑不同操作系统的问题,在视频格式转换时,jave官方给的API都是英文的,不是很好理解,需要注意的是视频分为两部分:音频和图像,其中图像部分有视频格式和视频编码,目前微信小视频以及直播都是以H264编码格式在解码视频的,所以如果需要转换为mp4格式的视频文件时,如果在网站上显示黑屏但是有声音,主要原因就是视频编解码格式不匹配.所以下面我在转换方法中运用的是flv格式,主要是因为flv不涉及此方面问题,但是缺点就是,flv生成的视频会大于原视频文件,造成网络传输时效率降低.

private boolean process(String inputPath,String outputPath){

try {

logger.info("---------视频转换开始-------------");

File source = new File(inputPath);

File target = new File(outputPath);

long startTime = System.currentTimeMillis();  //获取开始时间

AudioAttributes audio = new AudioAttributes();

audio.setCodec("libmp3lame");  //设置编码器

audio.setBitRate(new Integer(64000));  //设置比特率

audio.setChannels(new Integer(1));  //设置声音频道

audio.setSamplingRate(new Integer(22050));  //设置节录率

VideoAttributes video = new VideoAttributes();

video.setCodec("flv");  //设置编码器

video.setBitRate(new Integer(600000)); //设置比特率

video.setFrameRate(new Integer(15));  //设置帧率

video.setSize(new VideoSize(640, 480));  //设置分辨率

//video.setTag("libx264");

EncodingAttributes attrs = new EncodingAttributes();

attrs.setFormat("flv");

attrs.setAudioAttributes(audio);

attrs.setVideoAttributes(video);

Encoder encoder = new Encoder();

encoder.encode(source, target, attrs);

long endTime = System.currentTimeMillis();    //获取结束时间

logger.info("-------- -视频转换成功,耗时:"+((endTime-startTime)/1000.00)+"s----------");

return true;

} catch (Exception e) {

logger.info("视频转换异常:"+e.getMessage());

return false;

}

}​

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值