我的任务是使用python2.7从无线流媒体中提取完整的歌曲。 我已经成功地录制了广播流,但是我找不到一个好的方法来检测我录制的音频是音乐、广告,还是仅仅是说话。 我试着通过阈值来检测,但效果不好,因为在谈话或歌曲广告之间没有足够的沉默。 如果有人知道一个很好的解决办法,我很乐意听到。你知道吗
import pydub
streamAudio = pydub.AudioSegment.from_mp3("justRadioStream.mp3")
listMp3 = pydub.silence.detect_silence(streamAudio, min_silence_len=400, silence_thresh=-38)
print listMp3
我试着玩minu silen和silence theu thresh,但是在歌曲和广告或谈话之间没有足够的沉默时间,或者更大的声音来正确地检测
非常感谢!你知道吗
这不是用几行Python就能解决的问题。这个问题没有得到明确的规定——不能保证在任何给定的广播流中,歌曲、广告和播音员之间都会保持沉默,因为他们试图使从他们的流中有效地录制完整的歌曲以达到盗版目的变得更加困难。你知道吗
要有力地做到这一点,你可能需要应用人工智能/深度学习技术来区分音乐与广告和公告。即便如此,这也很棘手,因为有些音乐中会有固定的对话,有些歌曲很短,有些广告很长并且包含音乐。你知道吗
相关问题 更多 >
编程相关推荐