java视频压缩 开源_java 使用ffmpeg压缩视频

java 使用ffmpeg压缩视频

1.在linux下使用的话,需要导入jave包

//java代码

private boolean ffmpegChange1 (File file,File fileSave){

try{

AudioAttributes audio = new AudioAttributes();

audio.setCodec("libmp3lame");

audio.setBitRate(new Integer(56000));

audio.setChannels(new Integer(1));

audio.setSamplingRate(new Integer(22050));

VideoAttributes video = new VideoAttributes();

// video.setCodec(myConfig.getFileFFmpegPath());

// video.setCodec("libx264");

video.setCodec("mpeg4");

// video.setCodec("h264");

video.setBitRate(new Integer(800000));

video.setFrameRate(new Integer(15));

EncodingAttributes attrs = new EncodingAttributes();

attrs.setFormat("mp4");

attrs.setAudioAttributes(audio);

attrs.setVideoAttributes(video);

<
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以使用Java编程语言来在安卓应用中进行视频压缩。以下是一些可能有用的库和示例代码: 1. Android MediaCodec API - 这是一组Android API,可用于编码和解码视频。您可以使用此API对视频进行压缩。以下是一些有用的示例代码: ``` MediaCodec codec = MediaCodec.createEncoderByType("video/avc"); MediaFormat format = MediaFormat.createVideoFormat("video/avc", width, height); format.setInteger(MediaFormat.KEY_BIT_RATE, bitRate); format.setInteger(MediaFormat.KEY_FRAME_RATE, frameRate); format.setInteger(MediaFormat.KEY_COLOR_FORMAT, colorFormat); format.setInteger(MediaFormat.KEY_I_FRAME_INTERVAL, iFrameInterval); codec.configure(format, null, null, MediaCodec.CONFIGURE_FLAG_ENCODE); codec.start(); ``` 2. FFmpeg - 这是一种流行的开源视频处理库,可用于视频压缩和转码。您可以在安卓应用程序中使用FFmpeg进行视频压缩。以下是一些有用的示例代码: ``` ffmpeg -i input.mp4 -vcodec libx264 -crf 20 output.mp4 ``` 3. AndroidVideoEncoder - 这是一个简单的Java库,可用于在安卓应用程序中进行视频压缩。以下是一些有用的示例代码: ``` AndroidSequenceEncoder encoder = new AndroidSequenceEncoder(outputFile); for (BufferedImage bi : images) { // convert BufferedImage to Bitmap Bitmap bitmap = Bitmap.createBitmap(bi.getWidth(), bi.getHeight(), Bitmap.Config.ARGB_8888); ByteBuffer buffer = ByteBuffer.wrap(bitmap.getNinePatchChunk()); buffer.rewind(); bi.copy().getRaster().getDataElements(0, 0, bi.getWidth(), bi.getHeight(), buffer); // encode Bitmap to video encoder.encodeImage(bitmap); } encoder.finish(); ``` 这些都是可能有用的示例,但是视频压缩是一项复杂的任务,需要深入了解视频编码和解码。如果您不熟悉此主题,建议使用现有的视频压缩库和工具来完成任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值