在不同的音频文件中搜索相同的短样本

发布于 2024-12-27 11:36:52 字数 330 浏览 0 评论 0原文

考虑多个(至少两个)不同的音频文件,例如几种不同的混音或混音。我天真地说,必须能够检测到两个或多个文件中几乎相等的样本,尤其是人声,当然只有这样,如果人声样本没有被修改、拉伸、音高、混响太多的话等等。

那么可以用什么样的算法或技术来完成呢?比方说,用户会尝试在所有文件中设置最好的时间标记,这些标记描述要比较的数据窗口,包含可能相同的声音、人声等。

我知道没有直接的方法,试图以任何方式直接比较 wav 数据很有用。但即使我有频域数据(例如来自 FFT),我也必须使用一种比较算法,该算法可以通过时间尺度移动比较窗口,因为我不能假设我想要找到的样本是时间同步的覆盖所有文件。

预先感谢您的任何建议。

Consider multiple (at least two) different audio-files, like several different mixes or remixes. Naively I would say, it must be possible to detect samples, especially the vocals, that are almost equal in two or more of the files, of course only then, if the vocal samples aren't modified, stretched, pitched, reverbed too much etc.

So with what kind of algorithm or technique this could be done? Let's say, the user would try to set time markers in all files best possible, which describe the data windows to compare, containing the presumably equal sounds, vocals etc.

I know that no direct approach, trying to directly compare wav data in any way is useful. But even if I have the frequency domain data (e.g. from FFT), I would have to use a comparison algorithm that kind of shifts the comparing-windows through time scale, since I cannot assume the samples, I want to find, are time sync over all files.

Thanks in advance for any suggestions.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

会傲 2025-01-03 11:36:54

嗨,这是可能的!

您可以使用一种称为 LSH(局部敏感哈希)的技术,该技术非常稳健。

另一种方法是尝试在音频文件中进行频谱图分析...

构建数据库歌曲

1. Record your Full Song
2. Transform the sound to spectrum
3. slice your Spectrogram in chunk and get three or four high Frequencies
4. Store all the points

匹配歌曲

1. Record one short sample.
2. Transform the sound into another spectrum 
3. slice your Spectrogram in chunk and get three or four hight Frequencies
4. Compare the collected frequencies with your database song.
5. your match is the song with have the high hit !

您可以在此处查看如何制作..

http://translate.google.com/translate?hl=EN&sl=pt&u=http://ederwander.wordpress.com/2011/05/09/audio-fingerprint-em- python/

ederwander

Hi this is possible !!

You can use one technique called LSH (locality sensitive hashing), is very robust.

another way to do this is try make spectrogram analysis in your audio files ...

Construct database song

1. Record your Full Song
2. Transform the sound to spectrum
3. slice your Spectrogram in chunk and get three or four high Frequencies
4. Store all the points

Match the song

1. Record one short sample.
2. Transform the sound into another spectrum 
3. slice your Spectrogram in chunk and get three or four hight Frequencies
4. Compare the collected frequencies with your database song.
5. your match is the song with have the high hit !

you can see here how make ..

http://translate.google.com/translate?hl=EN&sl=pt&u=http://ederwander.wordpress.com/2011/05/09/audio-fingerprint-em-python/

ederwander

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文