V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
deweixu
V2EX  ›  程序员

有大佬知道解析音乐文件的开源库吗?

  •  
  •   deweixu ·
    deweixu · 2022-06-15 16:26:58 +08:00 · 1663 次点击
    这是一个创建于 653 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如我有 wav flac 的无损音乐文件 我想获取到歌曲的专辑名,艺术家,专辑封面图片等

    7 条回复    2022-06-16 16:29:38 +08:00
    mercury233
        1
    mercury233  
       2022-06-15 16:29:36 +08:00   ❤️ 1
    关键字:ID3v2
    lakehylia
        2
    lakehylia  
       2022-06-15 16:32:42 +08:00
    ffmpeg
    xinge666
        3
    xinge666  
       2022-06-15 18:15:25 +08:00 via iPhone
    TagLib 之前用过的用于处理音频元数据的库
    https://taglib.org
    wudicgi
        4
    wudicgi  
       2022-06-15 23:13:56 +08:00   ❤️ 1
    看标题我还以为是要从音频波形分析得到各个乐器的乐谱……
    yaleyu
        5
    yaleyu  
       2022-06-16 16:18:53 +08:00
    url = 'https://c.y.qq.com/soso/fcgi-bin/client_search_cp?ct=24&qqmusic_ver=1298&new_json=1&remoteplace=txt.yqq.song&searchid=62240638881390953&t=0&aggr=1&cr=1&catZhida=1&lossless=0&flag_qc=0&p=1&n=20&w={}&g_tk=5381&loginUin=0&hostUin=0&format=json&inCharset=utf8&outCharset=utf-8&notice=0&platform=yqq.json&needNewCode=0'.format(urllib.parse.quote(music))

    r = requests.get(url, headers=header)
    json_music_data = r.json()
    list_music = json_music_data['data']['song']['list']
    title = list_music[0]['title']
    album = list_music[0]['album']['title']
    albumid = list_music[0]['album']['mid']
    artist = list_music[0]['singer'][0]['name']
    singer_amount = len(list_music[0]['singer'])
    if singer_amount > 1:
    for i in range(1, singer_amount):
    artist = artist + ' | ' + list_music[0]['singer'][i]['name']

    cover_url = 'http://y.gtimg.cn/music/photo_new/T002R800x800M000{}.jpg'.format(albumid)
    urllib.request.urlretrieve(cover_url, cover_file)
    yaleyu
        6
    yaleyu  
       2022-06-16 16:21:06 +08:00
    回复不支持 markdown ,缩进都乱了,自己调整一下吧
    yaleyu
        7
    yaleyu  
       2022-06-16 16:29:38 +08:00
    哎,算了,刚刚试了下,这个 QQ 音乐的接口好像挂了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2823 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 13:14 · PVG 21:14 · LAX 06:14 · JFK 09:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.