相关疑难解决方法(0)

用Python播放声音

在Python中播放声音文件(.wav)的最简单方法是什么?最简单的我指的是大多数平台独立且需要最少的依赖关系.pygame当然是一个选择,但它似乎只是声音矫枉过正.

python audio platform-independent

102
推荐指数
6
解决办法
42万
查看次数

使用 linux 或 python 查找 mp3 的声音样本的时间戳

我慢慢地致力于这哪里会是非常有用的,如果该计算机可以找到一个项目,其中在发生某种样本的MP3文件。我会将这个问题限制在一个相当精确的音频片段上,而不仅仅是例如同一乐队不同录音中的一首歌中的合唱,它会成为某种机器学习问题。我在想,如果它没有添加噪音并且来自同一个文件,那么应该可以在没有机器学习的情况下以某种方式定位它发生的时间,就像 grep 可以在文本文件中找到出现单词的行一样。

如果您身边没有 mp3,可以使用一些公共领域的网络上可用的音乐来设置问题,所以没有人抱怨:

curl https://web.archive.org/web/20041019004300/http://www.navyband.navy.mil/anthems/ANTHEMS/United%20Kingdom.mp3 --output godsavethequeen.mp3
Run Code Online (Sandbox Code Playgroud)

这是一分钟:

exiftool godsavethequeen.mp3 | grep Duration
Duration                        : 0:01:03 (approx)
Run Code Online (Sandbox Code Playgroud)

现在在 30 到 33 秒之间剪掉一点(那是 la la la la ..):

ffmpeg -ss 30 -to 33 -i godsavethequeen.mp3 gstq_sample.mp3
Run Code Online (Sandbox Code Playgroud)

文件夹中的两个文件:

$ ls -la
-rw-r--r-- 1 cardamom cardamom   48736 Jun 23 00:08 gstq_sample.mp3
-rw-r--r-- 1 cardamom cardamom 1007055 Jun 22 23:57 godsavethequeen.mp3
Run Code Online (Sandbox Code Playgroud)

出于某种原因,exiftool 似乎高估了样本的持续时间:

$ exiftool gstq_sample.mp3 | grep Duration
Duration                        : 6.09 s (approx)
Run Code Online (Sandbox Code Playgroud)

..但我想它只是像它告诉你的那样近似。

这是我所追求的:

$ findsoundsample gstq_sample.mp3 godsavethequeen.mp3 …
Run Code Online (Sandbox Code Playgroud)

python linux audio mp3 signal-processing

4
推荐指数
2
解决办法
878
查看次数