标签: waveform

从MP3中提取原始音频/波形

这个问题在我脑海里已经存在了几年,我从来没有真正找到答案.

我想要做的是提取MP3文件的实际波形/ PCM,以便我可以使用声卡(当然)来播放它.

理想情况下,我会尝试一些DSP效果.

我的第一步是调查LAME,但我没有找到任何与程序中的MP3解码或类似内容有关的内容.

所以我问我在哪里可以找到这样的东西.

我应该用什么语言?我在想C,但也许有编程语言可以更有效地完成工作.

谢谢!

纪尧姆.

mp3 waveform decode pcm

1
推荐指数
1
解决办法
6748
查看次数

绘制声波可以放大/缩小

我正在为毕业写一个合理的编辑器.我正在使用BASS从MP3,WAV,OGG等文件中提取样本,并添加回声,镶边等DSP效果.简单地说,我制作了我的框架,应用了从position1到position2,剪切/粘贴管理的效果.

现在我的问题是我想创建一个类似于Cool Edit Pro的控件,它可以绘制一个波形表示的歌曲,并能够放大/缩小波形的选择部分等.选择后我可以做类似的事情:

TInterval EditZone = WaveForm->GetSelection();
Run Code Online (Sandbox Code Playgroud)

TInterval有这种形式:

struct TInterval
{
    long Start;
    long End;
}
Run Code Online (Sandbox Code Playgroud)

我是初学者,当涉及到复杂的绘图时,任何关于如何使用BASS返回的样本数据来创建歌曲的波形表示的提示,具有放大/缩小的能力将是值得赞赏的.

我正在用C++编写我的项目,但我可以理解C#,Delphi代码,所以如果你想要你可以发布最后两种语言的片段:)

Thanx DrOptix

c++ audio waveform bass

1
推荐指数
1
解决办法
4797
查看次数

什么是放大WaveForm音频的正确公式?

我想知道放大WaveForm音频的正确公式是什么来自C++.

假设有一个16位波形数据:0x0000 0x2000,0x3000,0x2000,0x0000,(负数部分),...

由于声学原因,只需加倍数字就不会产生两倍大的音频:0x0000 0x4000,0x6000,0x4000,0x0000,(加倍负片),...

如果有人对音频修改有所了解,请告诉我.

c++ audio waveform amplitude

1
推荐指数
1
解决办法
2182
查看次数

C# - 来自导入的MP3或WAV文件的小鼓声音检测.可能?

我有这个问题的麻烦.一种程序,用于检测声音文件中的小鼓声音,生成它的波形,并强调检测到小鼓的部分.这个程序可能存在吗?:)这是分配给我的研究/论文.我一直在研究可能的算法,并且我已经看到了一些初步的研究.这包括在声音检测领域吗?你能告诉我一些想法或任何材料,我可以使用的代码片段吗?对此,我真的非常感激.谢谢!:)

c# algorithm audio waveform detection

1
推荐指数
1
解决办法
1069
查看次数

精确对齐两个wav文件

我有一个工具,逐帧比较两个音频wav文件,并返回一个等级,给出两个文件之间的相似程度.

我有一个原始的wav文件和wav文件的录音,因为这两个文件几乎相似我应该得到高分相似,但我得分很差,主要是由于录制文件领先一点点延迟框架不匹配

我的问题是 - 如何使用MATLAB精确对齐两个音频文件,以便可以进行有效的帧到帧比较.

audio matlab waveform wav

1
推荐指数
1
解决办法
1396
查看次数

Verilog波形

我需要从以下代码构建波形:

module HW7P1 (A1, A0, B1, B0, O);
        input A1, A0, B1, B0;
        output O;
        assign O = (!A1 & B1) | (!A1 & !A0 & B0) | (!A0 & B1 & B0);
endmodule

module counter (clr, clk, OC);
        input clr, clk;
        output reg [3:0] OC;

        initial begin
                OC = 0;
        end

        always @(posedge clk) begin
                if (clr == 0)
                        OC = 0;
                else
                        OC = OC + 1;
        end
endmodule

module test_bench ();

wire HW7P1A1, HW7P1A0, HW7P1B1, HW7P1B0, HW7P1O; …
Run Code Online (Sandbox Code Playgroud)

verilog waveform

1
推荐指数
1
解决办法
4334
查看次数

Soundcloud波形

我想知道soundcloud如何生成他们的波形.

  1. 这是在服务器端完成的吗?是使用网络音频API完成的吗?
  2. 如何使用Web音频API实现像soundcloud这样的静态波形?

谢谢

javascript waveform soundcloud web-audio-api

1
推荐指数
1
解决办法
1467
查看次数

使用波形比较两个音频文件

可能重复:
比较两个音频文件的波形

我找到了一个PHP函数,它从wav文件生成波形,我修改了它,现在它符合我的需要,它运行良好.

波形对于每个wav文件似乎都是如此独特,所以也许可以使用它们的波形比较两个音频文件,看看b.wav与a.wav有多接近?这根本不是一个好主意吗?

我写了一些php函数来逐个像素地比较两个波形(JPG).经过一些测试我得到以下结果:对于两个不同的音频文件,平均差异是〜97%的结果如预期,但我不知道它将如何在实际代码中工作.

有人可以就这个想法发表意见,也许还有一些有用的提示:)

我想比较两个音频文件,看看b.wav与a.wav有多接近.

PS:我的wav文件几乎相同,唯一的区别就是声音.

php python waveform wav

0
推荐指数
1
解决办法
6144
查看次数

使用NAudio的C#实时波形数据图

我是处理wav文件和C#的新手。我的目标是在wavfile波形中实时绘制数据。我的意思是在录制声音(wav)文件时,我想同时绘制其图形。我搜索了一些声音库并决定使用NAudio。(不知道这对我来说是最佳选择。我愿意接受有关选择音频库的任何建议)。但是我不知道使用声音进行实时数据绘图的想法。有人建议使用GDI,但正如我所说,我是新手,我认为有效使用GDI会花费太多时间。如果我必须学习GDI,请分享任何可以帮助像我这样的初学者的文章。实际上,我看起来不知道该从哪里开始。需要指导:))我有一个问题。

NAudio的教程之一,他使用字节数组在Chart中绘制波形。如果您知道wav文件的大小,那很好。但是它的工作速度太慢,对于大于10mb的wav文件,它会给出内存不足异常。下面的代码指的是我的意思。

    OpenFileDialog open = new OpenFileDialog();
    open.Filter = "Wave File (*.wav)|*.wav;";
    if (open.ShowDialog() != DialogResult.OK) return;
    chart1.Series.Add("wave");
    chart1.Series["wave"].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.FastLine;
    chart1.Series["wave"].ChartArea = "ChartArea1";
    NAudio.Wave.WaveChannel32 wave = new NAudio.Wave.WaveChannel32(new NAudio.Wave.WaveFileReader(open.FileName));

    byte[] buffer = new byte[426565];
    int read;
    while (wave.Position < wave.Length)
    {
        read = wave.Read(buffer, 0, 426565);
        for (int i = 0; i < read / 4; i++)
        {
            chart1.Series["wave"].Points.Add(BitConverter.ToSingle(buffer, i * 4));
        }
    }
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以更快地执行此操作?

c# waveform real-time-data naudio

0
推荐指数
1
解决办法
6668
查看次数