gpt4 book ai didi

xuggler - 如何使用 xuggler 从视频中提取音频?

转载 作者:行者123 更新时间:2023-12-03 18:18:00 30 4
gpt4 key购买 nike

我正在尝试使用 xuggler 从视频文件(.avi、*.mp4 等)制作音频文件(*.mp3、.wav 等),这是我的代码

Code:
IMediaReader reader = ToolFactory.makeReader("D:/Frames/my.mp4");
IMediaWriter writer = ToolFactory.makeWriter("D:/a.mp3",reader);
int sampleRate = 44100;
int channels = 1;
writer.addAudioStream(0, 0, ICodec.ID.CODEC_ID_MP3, channels, sampleRate);
while (reader.readPacket() == null);

但它不会为我创建音频文件。请指导我哪里做错了。如果您将对此进行更正或为此目的提供一些与我的不同的其他代码,那么我将不胜感激。

最佳答案

在互联网上搜索了很多关于这个问题后,我发现我可以用 JAVE(Java 音频视频编码器)做同样的工作,所以我尝试了它,它对我有用..所以我想我在那里发布了解决方案,如果有人否则面临同样的问题,那么他/她可以看到我的作品。

它实际上在幕后使用 ffmpeg,它将从视频文件中提取音频以及更多用于编码内容的内容。
这是 JAVE 的链接
http://www.sauronsoftware.it/projects/jave/index.php

也可以在那里看到一个示例,为了您的方便,我也将其发布在这里

File source = new File("source.mp4");
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);

希望它会帮助你..!

关于xuggler - 如何使用 xuggler 从视频中提取音频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12553174/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com