问题标签 [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.

0 投票
1 回答
4347 浏览

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...

0 投票
1 回答
576 浏览

c# - 估计 mp3 压缩系数 (NAudio.Lame)

我需要一种方法来根据以下参数估计文件的未来大小:

  • 每个样本位
  • 频道数
  • 采样率
  • 样本数
  • mp3 质量(LAMEPreset)

我使用 NAudio.Lame 包。C#、.Net

我需要一种粗略估计compressionFactor 的方法。

0 投票
0 回答
653 浏览

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 的快速版本,因为它的功能非常出色,而性能却很差。

任何帮助将不胜感激!

0 投票
1 回答
649 浏览

python-3.x - 如何在播放状态下更改Gstreamer中音频编码的比特率?

  • 我想将 FLAC 文件转换为 MP3(和 Vorbis,第二次)文件。

  • 然后将这些 MP3/Vorbis 流原始传输到解码它们的第二个设备。

  • 根据传输质量,我希望能够即时更改比特率。

  • 更改必须是无缝的(因此标题中的“处于播放状态”)。

  • 特定的编码器是lamemp3encvorbisenc(并且不能更改)。


据我所知,这些编解码器实际上无法在播放时更改比特率。

但我想有一些干净简单的方法可以改变比特率,而不会在流中引入任何间隙:我想了解它们中的任何一个。

(注意:我确实写了任何,而不是全部,我不是要求“最好”的方式,我不是要求审查,我只是想要一些有效的东西。)

0 投票
1 回答
511 浏览

c++ - 所有规格为“0”时的默认 WAV 描述

我正在学习如何在 C++ 中读取 WAV 文件,并根据标题提取数据。我有一些 WAV 文件。通过查看所有文件的标题,我看到它们都遵循波形文件的规则。然而, TeamSpeak生成的文件录音很奇怪,但它们仍然可以在媒体播放器中播放。

所以看WAV文件的标准格式,是这样的:

在此处输入图像描述

因此,在所有看起来正常的文件中,我得到了从“AudioFormat”到“BitsPerSample”(来自图片)的所有值的合法值。但是,在 TeamSpeak 文件中,所有这些值都完全为零

这,但前 3 个值不为零。所以第一个和第三个字符串中有“RIFF”和“WAVE”,ChunkSize 似乎是合法的。

所以我的问题是:播放器如何知道这样的文件并识别出这个文件是单声道还是立体声?采样率?有什么事吗?当所有这些值都为零时,是否有一些标准可以假设?


更新我用MediaInfo 检查了文件并得到了这个:

仍然不明白它是如何得出这些结论的。

0 投票
1 回答
844 浏览

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 并遇到了同样的问题。

0 投票
1 回答
2428 浏览

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 编码方法一无所知,所以我不确定这是否是原因。

0 投票
0 回答
247 浏览

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 的日志:

0 投票
1 回答
4761 浏览

c# - 如何将wav文件转换为内存中的mp3?

我在 Asp.Net MVC 5 框架之上使用 c# 编写了一个应用程序。

我的目标是调用 3rd 方服务以下载波形文件。然后我想把这个文件转换成mp3。最后,我想将 mp3 文件返回为 (byte[]) 以允许用户直接从内存中下载它。

这是我的代码将如何结束,允许用户从内存中下载转换后的文件

但我对ConvertToMp3方法有疑问。

我正在使用NAudio库进行文件转换。到目前为止,这是我的代码

上述方法转换文件。但是这种方法将波形文件写入桌面,将其转换为mp3然后删除波形文件。此外,此方法将 mp3 文件写入桌面,而不是返回byte[]内容。

如何在无需写入桌面的情况下转换内存中的文件?另外,如何将mp3文件转换为byte[]

0 投票
1 回答
477 浏览

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 似乎更明智,但我找不到任何直接的方法。