问题标签 [lamemp3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - converting pcm file to mp3 using liblame in android
I am using SimpleLameLibForAndroid to convert a pcm file that created using AudioRecord class in android,to mp3. I read the pcm file and encoded it into mp3 and then I write it in the file. the result mp3 file but is not correct and it has a lot of noise on it and really hard to understand that it was recorded pcm file. these are recorded audio specifications(pcm file):
and this is my code that uses liblame for encode mp3 and write it to file:
how can i fix this code, is the bufferSizes true? using BufferedInputStream is correct? and...
c# - 估计 mp3 压缩系数 (NAudio.Lame)
我需要一种方法来根据以下参数估计文件的未来大小:
- 每个样本位
- 频道数
- 采样率
- 样本数
- mp3 质量(LAMEPreset)
我使用 NAudio.Lame 包。C#、.Net
我需要一种粗略估计compressionFactor 的方法。
android - mpg123 安卓版
我开发了一个读取 .mp3 文件、对 PCM 数据进行一些操作并将结果写入另一个 .mp3 文件的 Android 应用程序。到目前为止,我一直使用JLayer进行解码,使用 LAME(使用 NDK)进行 mp3 编码。一切正常 - 唯一的问题是 JLayer 非常慢(如此处所述)。因此,我想切换到可能非常快的mpg123 。对于 LAME,有很好的 Android NDK教程,但对于 mpg123,我还没有找到任何东西。我需要的唯一功能是逐帧解码 mp3 文件并将数据作为 PCM 获取。我也检查了这个, 这个和这个问题,但我的问题仍未解决。由于我是 Android NDK 的新手,我有两个问题:
- 你们中有人知道如何使用 NDK 为 Android 编译 mpg123 的分步教程吗?特别是,我不知道 Android.mk 和 wrapper.c 应该是什么样子。
- 你们有没有一个好的选择?原则上,我唯一要寻找的是 JLayer 的快速版本,因为它的功能非常出色,而性能却很差。
任何帮助将不胜感激!
python-3.x - 如何在播放状态下更改Gstreamer中音频编码的比特率?
我想将 FLAC 文件转换为 MP3(和 Vorbis,第二次)文件。
然后将这些 MP3/Vorbis 流原始传输到解码它们的第二个设备。
根据传输质量,我希望能够即时更改比特率。
更改必须是无缝的(因此标题中的“处于播放状态”)。
特定的编码器是
lamemp3enc
和vorbisenc
(并且不能更改)。
据我所知,这些编解码器实际上无法在播放时更改比特率。
但我想有一些干净简单的方法可以改变比特率,而不会在流中引入任何间隙:我想了解它们中的任何一个。
(注意:我确实写了任何,而不是全部,我不是要求“最好”的方式,我不是要求审查,我只是想要一些有效的东西。)
c++ - 所有规格为“0”时的默认 WAV 描述
我正在学习如何在 C++ 中读取 WAV 文件,并根据标题提取数据。我有一些 WAV 文件。通过查看所有文件的标题,我看到它们都遵循波形文件的规则。然而, TeamSpeak生成的文件录音很奇怪,但它们仍然可以在媒体播放器中播放。
所以看WAV文件的标准格式,是这样的:
因此,在所有看起来正常的文件中,我得到了从“AudioFormat”到“BitsPerSample”(来自图片)的所有值的合法值。但是,在 TeamSpeak 文件中,所有这些值都完全为零。
这,但前 3 个值不为零。所以第一个和第三个字符串中有“RIFF”和“WAVE”,ChunkSize 似乎是合法的。
所以我的问题是:播放器如何知道这样的文件并识别出这个文件是单声道还是立体声?采样率?有什么事吗?当所有这些值都为零时,是否有一些标准可以假设?
更新我用MediaInfo 检查了文件并得到了这个:
仍然不明白它是如何得出这些结论的。
linux - 在弹性 beantalk 上为 FFMPEG 启用 libmp3lame
我正在尝试在弹性 beanstalk(Amazon Redhat Linux 机器)中使用 FFMPEG 启用 libmp3lame。
我能够/ffmpeg.config
使用以下脚本成功安装 FFMPEG:
但是,我需要安装 libmp3lame。我试图用一面旗帜和这里--enable-libmp3lame
的指示来做到这一点。修改后的脚本:
这行不通。命令01-install_libmp3lame
完成。命令 02-ffmpeg_install 失败,因为:
我尝试在 /ffmpeg-3.2 中安装 libmp3lame 并遇到了同样的问题。
audio - LAME -- 解码和编码音频文件
我使用 lame 从 mp3 文件解码为原始 pcm 文件或从原始 pcm 编码为 mp3。
问题是当我使用一个 test.0.pcm 文件时,一遍又一遍地进行编码和解码(生成 0.mp3、1.mp3、2.mp3、...和 test.1.pcm、test.2。 pcm ....),尽管所有 .pcm 文件或所有 .mp3 文件的大小保持不变,但内容不同。我试听了这些音频文件,发现99.mp3的音量比1.mp3小很多。
我使用的脚本如下:
原始 test.0.pcm 只有 1 个通道,采样频率为 16k。
一些日志如下所示,除了重播增益之外,它们都相同:
注意到 ReplayGain 不断增加,但我对 mp3 编码方法一无所知,所以我不确定这是否是原因。
amazon-web-services - AWS Lambda - ffmpeg 错误地输出失真/剪辑的 mp3
如何使用 ffmpeg 获得没有任何失真的 mp3 输出?
我正在使用https://www.johnvansickle.com/ffmpeg/提供的静态构建(x86_64 构建)在 AWS Lambda linux 上使用 ffmpeg。
运行以下命令后,mp3 输出出现严重的削波/失真。
编辑:这是我使用的示例文件:
http://www.brainybetty.com/FacebookFans/Feb112010/strings.wav
这是来自 Lambda 的日志:
c# - 如何将wav文件转换为内存中的mp3?
我在 Asp.Net MVC 5 框架之上使用 c# 编写了一个应用程序。
我的目标是调用 3rd 方服务以下载波形文件。然后我想把这个文件转换成mp3。最后,我想将 mp3 文件返回为 (byte[]) 以允许用户直接从内存中下载它。
这是我的代码将如何结束,允许用户从内存中下载转换后的文件
但我对ConvertToMp3
方法有疑问。
我正在使用NAudio库进行文件转换。到目前为止,这是我的代码
上述方法转换文件。但是这种方法将波形文件写入桌面,将其转换为mp3然后删除波形文件。此外,此方法将 mp3 文件写入桌面,而不是返回byte[]
内容。
如何在无需写入桌面的情况下转换内存中的文件?另外,如何将mp3文件转换为byte[]
?
mp3 - 将具有超过 2 个通道的 WAV 文件转换为 MP3 的问题
我正在开发一个将流式音频录制到 MP3 的 C# 应用程序。
我是新手,但就我目前所见,最简单的方法是使用 NAudio 录制到 WAV,然后使用 LameMP3FileWriter 或 MediaFoundationEncoder 创建 MP3 版本。
但是,我在转换时遇到了问题,因为我的 PC 音响系统是 5.1 并且 MP3 转换由于录制的 WAV 文件中的通道数而崩溃。当我将音响系统重新配置为立体声时,它工作正常,但这有点痛苦;首先,这意味着我在录制音乐时无法使用我的 5.1 系统,但更多的是一个问题,由于某种我无法弄清楚的原因,如果我将扬声器设置为立体声,它们会在 PC(Windows 10)重新启动时恢复为四声道!
谁能建议我如何在不需要配置我的 5.1 声音的情况下进行这种转换?
一个明显的解决方案是在转换为 MP3 之前将 WAV 文件重新采样到 2 个通道,但这似乎是一种“长捷径”。我也不清楚首先录制到 WAV 的优势 - 音频流被压缩并且不太可能有超过 2 个通道开始所以播放超过 5.1,无论它听起来多么好,真的有点虚幻。
将流直接录制到 MP3 似乎更明智,但我找不到任何直接的方法。