感谢:http://tj007-bo.iteye.com/blog/435740的博主为我解决了问题
JAVE (Java Audio Video Encoder) 类库是一个 ffmpeg 项目的 Java 语言封装。开发人员可以使用JAVE 在不同的格式间转换视频和音频。例如将 AVI 转成 MPEG 动画,等等 ffmpeg 中可以完成的在 JAVE 都有对应的方法。
Examples
From a generic AVI to a youtube-like FLV movie, with an embedded MP3 audio stream:
- File source = new File("source.avi");
- File target = new File("target.flv");
- 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(160000));
- video.setFrameRate(new Integer(15));
- video.setSize(new VideoSize(400, 300));
- EncodingAttributes attrs = new EncodingAttributes();
- attrs.setFormat("flv");
- attrs.setAudioAttributes(audio);
- attrs.setVideoAttributes(video);
- Encoder encoder = new Encoder();
- encoder.encode(source, target, attrs);
Next lines extracts audio informations from an AVI and store them in a plain WAV file:
- File source = new File("source.avi");
- File target = new File("target.wav");
- AudioAttributes audio = new AudioAttributes();
- audio.setCodec("pcm_s16le");
- EncodingAttributes attrs = new EncodingAttributes();
- attrs.setFormat("wav");
- attrs.setAudioAttributes(audio);
- Encoder encoder = new Encoder();
- encoder.encode(source, target, attrs);
Next example takes an audio WAV file and generates a 128 kbit/s, stereo, 44100 Hz MP3 file:
- File source = new File("source.wav");
- File target = new File("target.mp3");
- AudioAttributes audio = new AudioAttributes();
- audio.setCodec("libmp3lame");
- audio.setBitRate(new Integer(128000));
- audio.setChannels(new Integer(2));
- audio.setSamplingRate(new Integer(44100));
- EncodingAttributes attrs = new EncodingAttributes();
- attrs.setFormat("mp3");
- attrs.setAudioAttributes(audio);
- Encoder encoder = new Encoder();
- encoder.encode(source, target, attrs);
Next one decodes a generic AVI file and creates another one with the same video stream of the source and a re-encoded low quality MP3 audio stream:
- File source = new File("source.avi");
- File target = new File("target.avi");
- 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(VideoAttributes.DIRECT_STREAM_COPY);
- EncodingAttributes attrs = new EncodingAttributes();
- attrs.setFormat("avi");
- attrs.setAudioAttributes(audio);
- attrs.setVideoAttributes(video);
- Encoder encoder = new Encoder();
- encoder.encode(source, target, attrs);
Next one generates an AVI with MPEG 4/DivX video and OGG Vorbis audio:
- File source = new File("source.avi");
- File target = new File("target.avi");
- AudioAttributes audio = new AudioAttributes();
- audio.setCodec("libvorbis");
- VideoAttributes video = new VideoAttributes();
- video.setCodec("mpeg4");
- video.setTag("DIVX");
- video.setBitRate(new Integer(160000));
- video.setFrameRate(new Integer(30));
- EncodingAttributes attrs = new EncodingAttributes();
- attrs.setFormat("mpegvideo");
- attrs.setAudioAttributes(audio);
- attrs.setVideoAttributes(video);
- Encoder encoder = new Encoder();
- encoder.encode(source, target, attrs);
A smartphone suitable video:
- File source = new File("source.avi");
- File target = new File("target.3gp");
- AudioAttributes audio = new AudioAttributes();
- audio.setCodec("libfaac");
- audio.setBitRate(new Integer(128000));
- audio.setSamplingRate(new Integer(44100));
- audio.setChannels(new Integer(2));
- VideoAttributes video = new VideoAttributes();
- video.setCodec("mpeg4");
- video.setBitRate(new Integer(160000));
- video.setFrameRate(new Integer(15));
- video.setSize(new VideoSize(176, 144));
- EncodingAttributes attrs = new EncodingAttributes();
- attrs.setFormat("3gp");
- attrs.setAudioAttributes(audio);
- attrs.setVideoAttributes(video);
- Encoder encoder = new Encoder();
- encoder.encode(source, target, attrs);
相关推荐
【JAVA 音频视频播放器】是一个小巧而实用的程序,专为使用JAVA语言实现音频和视频播放功能而设计。它的大小只有100多KB,这意味着它在资源占用方面非常高效,对于需要轻量级播放解决方案的用户来说,这是一个理想的...
JAVE的核心在于其包装了FFmpeg的命令行操作,使得开发者无需直接与命令行交互,而是通过Java代码即可实现音频和视频的转换。例如,使用JAVE进行.wav到.mp3转换的代码可能如下: ```java import it.sauronsoftware....
Xuggler是基于C++的FFmpeg库的一个Java封装,它允许开发者直接在Java中操作音视频流。ffmpeg4java则是对FFmpeg命令行工具的Java包装,通过执行命令行指令实现视频处理。这两种库都能很好地完成图片转视频的任务。 ...
FFmpeg是一款强大的跨平台命令行工具,用于处理各种音视频格式,包括转码、剪辑、合并等操作。而Java则提供了一个稳定的运行环境和丰富的库来封装FFmpeg的功能,使得在Java应用中调用FFmpeg变得更加便捷。 1. **...
中档中包含linux安装yasm环境,ffmpeg工具,lame解码器,以及环境报错解决方案,如何使用jave包maven导入pom配置,java代码帮你实现转换拷入有效,以及所有工具的下载地址,让你不走弯路5分钟解决音视频转码问题,...
Java视频格式转换是一种常见的技术需求,特别是在开发网页流媒体服务时,为了使视频能在不同的浏览器或设备上流畅播放,往往需要将多种视频格式转化为统一的标准,例如FLV(Flash Video)。FLV是Adobe Flash Player...
Java音频视频编码器,本文实例将任何音频格式转换为MP3格式 您还可以调整视频大小,更改其大小和比例等 本文实例实用于任何Windows,MacOS,Linux系统 附:完整jar项目,完善的demo,详细的注释,简单易操作
JAVE是一个基于FFmpeg的Java封装库,它允许Java开发者直接调用FFmpeg的功能,进行音频和视频的编码、解码、转码等操作。`jave.jar`就是这个库的可运行文件,包含所有必要的方法和类来执行视频转换。 `MediumManager...
在Java编程语言中,处理音频文件是一项常见的任务,特别是在多媒体应用、游戏开发或者音视频处理系统中。本项目“JAVA对音频文件处理程序”聚焦于读取音频文件,执行降分贝操作,然后将处理后的音频保存为新的文件。...
ffmpeg Java视频截图,音频、视频格式转换
Java调用视频转换工具FFmpeg是一项...通过学习和实践,开发者可以熟练掌握这一技能,提升其在音视频领域的开发能力。在提供的压缩包文件中,可能包含了详细的教程、示例代码以及必要的配置文件,供开发者参考和使用。
FFmpeg是一个开源的命令行工具,用于处理音频和视频文件,包括格式转换、编码、解码、分割、合并等操作。在Java中,我们通常通过调用FFmpeg的命令行接口或者使用已经封装好的Java库来实现这些功能。 FFmpeg本身是一...
2. **FFmpeg库**:FFmpeg是一款开源的多媒体处理工具,它集成了音视频编解码、格式转换、流处理等功能。在Java项目中,通过JNI(Java Native Interface)或者JavaFX的Media API来调用FFmpeg的命令行工具,实现视频的...
FFmpeg是一个强大的开源项目,提供命令行工具和库,可以进行音视频的编码、解码、转换和流处理。在这个压缩包中,包含了一个名为`ffmpeg.exe`的文件,这是FFmpeg的Windows可执行文件,可以直接运行在Windows操作系统...
首先,`ffmpeg`是一个强大的开源多媒体处理工具,它支持多种音频和视频格式的编码、解码、转换和流处理。在Java中,我们可以通过调用系统命令或者使用第三方库来间接调用ffmpeg,从而实现音频的转码。 1. **Java...
同时,还需要关注版权问题,确保在合法范围内使用和转换音频文件。 总之,“音频文件转换 java”项目为Java开发者提供了一个方便的工具,通过Java Sound API和JAVE库,可以在多种音频格式之间进行灵活的转换。理解...
Java语音视频功能是一种在Java平台上实现的多媒体技术,它涵盖了语音识别和语音写入的核心技术。这个项目提供了从音频输入捕获声音,并将其转化为可读的文本的能力,这对于开发交互式应用,例如智能助手、在线客服...
这些库提供了对音视频文件的读取、解码、编码和封装的能力,能够帮助开发者处理各种视频格式。 2. **视频编解码**:视频文件通常由音频流和视频流组成,需要通过解码器进行解码,然后通过编码器转换成目标格式。...
在Java开发中,通过封装FFmpeg命令,可以方便地在应用程序中集成音视频处理功能。本压缩包提供的"ffmpeg java 封装工具类"正是为了解决这个问题,它将FFmpeg的功能与Java编程语言相结合,提供了一套易于使用的API。 ...
Java音频视频播放器VLC内核是一个基于VLC开源播放器核心技术的实现,它避开了Java标准库中处理音视频的复杂性,选择了更为简洁高效的方式。VLC是一款跨平台的多媒体播放器,以其强大的解码能力和广泛的格式支持而...