UnblockNeteaseMusic / UnblockNeteaseMusic/server

[自己已临时解决]youtube音源无法使用

Open
#1,355 18 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
JavaScript
Stars
7.8k
Forks
762
PR merge metrics
No merged PRs in 30d

Description

Bug 描述

YouTube音源没有收到信息

预期行为

No response

实际行为

No response

复现步骤

No response

启动命令及环境变量
$env:SELECT_MAX_BR="true"
$env:HTTPS_PROXY="http://127.0.0.1:10811"
$env:HTTP_PROXY="http://127.0.0.1:10811"
$env:all_proxy="socks5://127.0.0.1:10810"
$env:LOG_LEVEL="debug"
node .\app.js -p 52000:52001 -o ytdlp
日志内容
INFO: (app) HTTP Server running @ http://0.0.0.0:52000
INFO: (app) HTTPS Server running @ http://0.0.0.0:52001
DEBUG: (server) TUNNEL
    url: "localhost:52001"
DEBUG: (server) TUNNEL
    url: "p3.music.126.net:443"
DEBUG: (server) TUNNEL
    url: "p4.music.126.net:443"
DEBUG: (server) TUNNEL
    url: "p3.music.126.net:443"
DEBUG: (server) TUNNEL
    url: "p3.music.126.net:443"
DEBUG: (server) TUNNEL
    url: "p3.music.126.net:443"
DEBUG: (server) TUNNEL
    url: "clientlog.music.163.com:443"
DEBUG: (server) TUNNEL
    url: "localhost:52001"
DEBUG: (cache) Cleaning up the expired caches...
    cacheStorageId: "provider/find"
DEBUG: (cache) 1297494226 did not hit. Storing the execution result...
    logKey: 1297494226
    cacheStorageId: "provider/find"
DEBUG: (request) Start requesting https://music.163.com/api/song/detail?ids=[1297494226]
DEBUG: (provider/match) Getting the audio...
    source: "ytdlp"
    info: {
      "name": "Surprise",
      "id": 1297494226,
      "alias": [],
      "duration": 288600,
      "album": {
        "name": "ANGEL TOUCH",
        "id": 72054672
      },
      "artists": [
        {
          "name": "CINDY",
          "id": 28359237
        }
      ],
      "keyword": "Surprise - CINDY"
    }
DEBUG: (cache) Cleaning up the expired caches...
    cacheStorageId: "yt-dlp"
DEBUG: (cache) Something did not hit. Storing the execution result...
    logKey: "Something"
    cacheStorageId: "yt-dlp"
INFO: (spawn) running yt-dlp -f 140 --dump-json ytsearch1:Surprise - CINDY
DEBUG: (spawn) process yt-dlp exited successfully
INFO: (spawn) running yt-dlp -f 140 --dump-json https://www.youtube.com/watch?v=q35Q53G71iE
DEBUG: (spawn) process yt-dlp exited successfully
DEBUG: (request) Start requesting https://rr5---sn-o097znze.googlevideo.com/videoplayback?expire=1707258119&ei=plzCZZ-FPJLBsfIP8NmIgAc&ip=2a09%3Abac5%3A6447%3A1232%3A%3A1d0%3A3f&id=o-AIFhRvS7K44wA2IbkX3w1-nmAF1N1-JFtn2ArbzE9pxl&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=Z4&mm=31%2C26&mn=sn-o097znze%2Csn-2imern76&ms=au%2Conr&mv=m&mvi=5&pl=42&initcwndbps=2038750&vprv=1&svpuc=1&mime=audio%2Fmp4&gir=yes&clen=3167900&dur=195.674&lmt=1695808774149131&mt=1707236236&fvip=3&keepalive=yes&fexp=24007246&c=IOS&txp=4532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIhANC0ggbPZbiuKqj9I8v8W7Rez708ZOMcTMEHHTaGiCGzAiBrgGAZTk0gq5NorhrQjSZoCq89mZwyZcRxlxYHlR2B2w%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AAO5W4owRQIgIia5iuX-OoSNo0DipVkA1cOLxRbVeU8QZOav0xcaaVwCIQDgoYEQ-D8ExgCUlhlRfHfuHA2OZhP-YsHcVoYIoSVZtA%3D%3D
DEBUG: (server) TUNNEL
    url: "localhost:52001"
WARN: (request) The request timed out, or the requester didn't handle the response.
    url: "https://rr5---sn-o097znze.googlevideo.com/videoplayback?expire=1707258119&ei=plzCZZ-FPJLBsfIP8NmIgAc&ip=2a09%3Abac5%3A6447%3A1232%3A%3A1d0%3A3f&id=o-AIFhRvS7K44wA2IbkX3w1-nmAF1N1-JFtn2ArbzE9pxl&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=Z4&mm=31%2C26&mn=sn-o097znze%2Csn-2imern76&ms=au%2Conr&mv=m&mvi=5&pl=42&initcwndbps=2038750&vprv=1&svpuc=1&mime=audio%2Fmp4&gir=yes&clen=3167900&dur=195.674&lmt=1695808774149131&mt=1707236236&fvip=3&keepalive=yes&fexp=24007246&c=IOS&txp=4532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIhANC0ggbPZbiuKqj9I8v8W7Rez708ZOMcTMEHHTaGiCGzAiBrgGAZTk0gq5NorhrQjSZoCq89mZwyZcRxlxYHlR2B2w%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AAO5W4owRQIgIia5iuX-OoSNo0DipVkA1cOLxRbVeU8QZOav0xcaaVwCIQDgoYEQ-D8ExgCUlhlRfHfuHA2OZhP-YsHcVoYIoSVZtA%3D%3D"
DEBUG (RequestCancelled): (provider/match) This request URL has been cancelled: https://rr5---sn-o097znze.googlevideo.com/videoplayback?expire=1707258119&ei=plzCZZ-FPJLBsfIP8NmIgAc&ip=2a09%3Abac5%3A6447%3A1232%3A%3A1d0%3A3f&id=o-AIFhRvS7K44wA2IbkX3w1-nmAF1N1-JFtn2ArbzE9pxl&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=Z4&mm=31%2C26&mn=sn-o097znze%2Csn-2imern76&ms=au%2Conr&mv=m&mvi=5&pl=42&initcwndbps=2038750&vprv=1&svpuc=1&mime=audio%2Fmp4&gir=yes&clen=3167900&dur=195.674&lmt=1695808774149131&mt=1707236236&fvip=3&keepalive=yes&fexp=24007246&c=IOS&txp=4532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIhANC0ggbPZbiuKqj9I8v8W7Rez708ZOMcTMEHHTaGiCGzAiBrgGAZTk0gq5NorhrQjSZoCq89mZwyZcRxlxYHlR2B2w%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AAO5W4owRQIgIia5iuX-OoSNo0DipVkA1cOLxRbVeU8QZOav0xcaaVwCIQDgoYEQ-D8ExgCUlhlRfHfuHA2OZhP-YsHcVoYIoSVZtA%3D%3D
    RequestCancelled: This request URL has been cancelled: https://rr5---sn-o097znze.googlevideo.com/videoplayback?expire=1707258119&ei=plzCZZ-FPJLBsfIP8NmIgAc&ip=2a09%3Abac5%3A6447%3A1232%3A%3A1d0%3A3f&id=o-AIFhRvS7K44wA2IbkX3w1-nmAF1N1-JFtn2ArbzE9pxl&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=Z4&mm=31%2C26&mn=sn-o097znze%2Csn-2imern76&ms=au%2Conr&mv=m&mvi=5&pl=42&initcwndbps=2038750&vprv=1&svpuc=1&mime=audio%2Fmp4&gir=yes&clen=3167900&dur=195.674&lmt=1695808774149131&mt=1707236236&fvip=3&keepalive=yes&fexp=24007246&c=IOS&txp=4532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIhANC0ggbPZbiuKqj9I8v8W7Rez708ZOMcTMEHHTaGiCGzAiBrgGAZTk0gq5NorhrQjSZoCq89mZwyZcRxlxYHlR2B2w%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AAO5W4owRQIgIia5iuX-OoSNo0DipVkA1cOLxRbVeU8QZOav0xcaaVwCIQDgoYEQ-D8ExgCUlhlRfHfuHA2OZhP-YsHcVoYIoSVZtA%3D%3D
        at m (E:\Softwares\Netease-server-enhanced\precompiled\app.js:3:40795)
        at ClientRequest.<anonymous> (E:\Softwares\Netease-server-enhanced\precompiled\app.js:3:40997)
        at Object.onceWrapper (node:events:631:28)
        at ClientRequest.emit (node:events:517:28)
        at TLSSocket.emitRequestTimeout (node:_http_client:847:9)
        at Object.onceWrapper (node:events:631:28)
        at TLSSocket.emit (node:events:529:35)
        at Socket._onTimeout (node:net:598:8)
        at listOnTimeout (node:internal/timers:569:17)
        at process.processTimers (node:internal/timers:512:7)
ERROR (SongNotAvailable): (hook) This song "?" is not available in any source
    SongNotAvailable: This song "?" is not available in any source
        at b (E:\Softwares\Netease-server-enhanced\precompiled\app.js:3:29879)
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async Promise.all (index 0)
DEBUG: (cache) Cleaning up the expired caches...
    cacheStorageId: "provider/find"
DEBUG: (cache) 22794457 did not hit. Storing the execution result...
    logKey: 22794457
    cacheStorageId: "provider/find"
DEBUG: (request) Start requesting https://music.163.com/api/song/detail?ids=[22794457]
DEBUG: (provider/match) Getting the audio...
    source: "ytdlp"
    info: {
      "name": "骞搞仜銇倐銇仌銇?,
      "id": 22794457,
      "alias": [],
      "duration": 327146,
      "album": {
        "name": "Expressions",
        "id": 2094911
      },
      "artists": [
        {
          "name": "绔瑰唴銇俱倞銈?,
          "id": 17916
        }
      ],
      "keyword": "骞搞仜銇倐銇仌銇?- 绔瑰唴銇俱倞銈?
    }
DEBUG: (cache) Cleaning up the expired caches...
    cacheStorageId: "yt-dlp"
DEBUG: (cache) Something did not hit. Storing the execution result...
    logKey: "Something"
    cacheStorageId: "yt-dlp"
INFO: (spawn) running yt-dlp -f 140 --dump-json ytsearch1:骞搞仜銇倐銇仌銇?- 绔瑰唴銇俱倞銈?[39m
DEBUG: (spawn) process yt-dlp exited successfully
INFO: (spawn) running yt-dlp -f 140 --dump-json https://www.youtube.com/watch?v=TLE6JYUiCbI
DEBUG: (spawn) process yt-dlp exited successfully
DEBUG: (request) Start requesting https://rr4---sn-o097znze.googlevideo.com/videoplayback?expire=1707258148&ei=xFzCZb-JN_PGsfIPg9aTqAQ&ip=2a09%3Abac5%3A6447%3A1232%3A%3A1d0%3A3f&id=o-AKuz2fSGX2-bHLJdBz1ilZTTk_jiJty3HqnPC7xCX5sf&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=Ow&mm=31%2C26&mn=sn-o097znze%2Csn-2imern76&ms=au%2Conr&mv=m&mvi=4&pl=42&initcwndbps=2038750&vprv=1&svpuc=1&mime=audio%2Fmp4&gir=yes&clen=2114406&dur=130.589&lmt=1691753982111767&mt=1707236236&fvip=3&keepalive=yes&fexp=24007246&c=IOS&txp=6218224&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRgIhAJsCg19_EY2oBs4gDybySBrfwGw9PHxhczPI9zq4CwaxAiEAxq_8KHGNnLdQH0yCpXjC7c9YgDXp63ROMVcZqvhUj4M%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AAO5W4owRQIgZ39x2_Ms85VEZEoa4zJaWrYykSJcCoRm4LGf9xLyRwECIQDKmuHjcEEFJc5A8gjTxkYcZcCiNYIa-SsY3MZ0fTgLlQ%3D%3D
WARN: (request) The request timed out, or the requester didn't handle the response.
    url: "https://rr4---sn-o097znze.googlevideo.com/videoplayback?expire=1707258148&ei=xFzCZb-JN_PGsfIPg9aTqAQ&ip=2a09%3Abac5%3A6447%3A1232%3A%3A1d0%3A3f&id=o-AKuz2fSGX2-bHLJdBz1ilZTTk_jiJty3HqnPC7xCX5sf&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=Ow&mm=31%2C26&mn=sn-o097znze%2Csn-2imern76&ms=au%2Conr&mv=m&mvi=4&pl=42&initcwndbps=2038750&vprv=1&svpuc=1&mime=audio%2Fmp4&gir=yes&clen=2114406&dur=130.589&lmt=1691753982111767&mt=1707236236&fvip=3&keepalive=yes&fexp=24007246&c=IOS&txp=6218224&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRgIhAJsCg19_EY2oBs4gDybySBrfwGw9PHxhczPI9zq4CwaxAiEAxq_8KHGNnLdQH0yCpXjC7c9YgDXp63ROMVcZqvhUj4M%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AAO5W4owRQIgZ39x2_Ms85VEZEoa4zJaWrYykSJcCoRm4LGf9xLyRwECIQDKmuHjcEEFJc5A8gjTxkYcZcCiNYIa-SsY3MZ0fTgLlQ%3D%3D"
DEBUG (RequestCancelled): (provider/match) This request URL has been cancelled: https://rr4---sn-o097znze.googlevideo.com/videoplayback?expire=1707258148&ei=xFzCZb-JN_PGsfIPg9aTqAQ&ip=2a09%3Abac5%3A6447%3A1232%3A%3A1d0%3A3f&id=o-AKuz2fSGX2-bHLJdBz1ilZTTk_jiJty3HqnPC7xCX5sf&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=Ow&mm=31%2C26&mn=sn-o097znze%2Csn-2imern76&ms=au%2Conr&mv=m&mvi=4&pl=42&initcwndbps=2038750&vprv=1&svpuc=1&mime=audio%2Fmp4&gir=yes&clen=2114406&dur=130.589&lmt=1691753982111767&mt=1707236236&fvip=3&keepalive=yes&fexp=24007246&c=IOS&txp=6218224&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRgIhAJsCg19_EY2oBs4gDybySBrfwGw9PHxhczPI9zq4CwaxAiEAxq_8KHGNnLdQH0yCpXjC7c9YgDXp63ROMVcZqvhUj4M%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AAO5W4owRQIgZ39x2_Ms85VEZEoa4zJaWrYykSJcCoRm4LGf9xLyRwECIQDKmuHjcEEFJc5A8gjTxkYcZcCiNYIa-SsY3MZ0fTgLlQ%3D%3D
    RequestCancelled: This request URL has been cancelled: https://rr4---sn-o097znze.googlevideo.com/videoplayback?expire=1707258148&ei=xFzCZb-JN_PGsfIPg9aTqAQ&ip=2a09%3Abac5%3A6447%3A1232%3A%3A1d0%3A3f&id=o-AKuz2fSGX2-bHLJdBz1ilZTTk_jiJty3HqnPC7xCX5sf&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=Ow&mm=31%2C26&mn=sn-o097znze%2Csn-2imern76&ms=au%2Conr&mv=m&mvi=4&pl=42&initcwndbps=2038750&vprv=1&svpuc=1&mime=audio%2Fmp4&gir=yes&clen=2114406&dur=130.589&lmt=1691753982111767&mt=1707236236&fvip=3&keepalive=yes&fexp=24007246&c=IOS&txp=6218224&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRgIhAJsCg19_EY2oBs4gDybySBrfwGw9PHxhczPI9zq4CwaxAiEAxq_8KHGNnLdQH0yCpXjC7c9YgDXp63ROMVcZqvhUj4M%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AAO5W4owRQIgZ39x2_Ms85VEZEoa4zJaWrYykSJcCoRm4LGf9xLyRwECIQDKmuHjcEEFJc5A8gjTxkYcZcCiNYIa-SsY3MZ0fTgLlQ%3D%3D
        at m (E:\Softwares\Netease-server-enhanced\precompiled\app.js:3:40795)
        at ClientRequest.<anonymous> (E:\Softwares\Netease-server-enhanced\precompiled\app.js:3:40997)
        at Object.onceWrapper (node:events:631:28)
        at ClientRequest.emit (node:events:517:28)
        at TLSSocket.emitRequestTimeout (node:_http_client:847:9)
        at Object.onceWrapper (node:events:631:28)
        at TLSSocket.emit (node:events:529:35)
        at Socket._onTimeout (node:net:598:8)
        at listOnTimeout (node:internal/timers:569:17)
        at process.processTimers (node:internal/timers:512:7)
ERROR (SongNotAvailable): (hook) This song "?" is not available in any source
    SongNotAvailable: This song "?" is not available in any source
        at b (E:\Softwares\Netease-server-enhanced\precompiled\app.js:3:29879)
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async Promise.all (index 0)
DEBUG: (server) TUNNEL
    url: "localhost:52001"
DEBUG: (server) TUNNEL
    url: "localhost:52001"
DEBUG: (server) TUNNEL
    url: "localhost:52001"
DEBUG: (hook) unblockLyricsEffects() has been triggered.
DEBUG: (hook) unblockLyricsEffects() has been triggered.
DEBUG: (hook) unblockLyricsEffects() has been triggered.
网易云音乐歌曲链接

No response

网易云音乐版本号

3.0.0

操作系统

win10 x64

其他信息

No response

问题排查
  • 我确认我使用的核心是由 UnblockNeteaseMusic 项目官方发行,不是其他任何 fork。
  • 我确认我已经升级到了最新的核心版本(推荐使用最新构建而不是 release)。
  • 我确认我已经启用了 HTTPS 端口。
  • 我确认我已经正确设置了 EndPoint。
  • 我确认我已经在对应的客户端正确安装了 CA 证书。

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the YouTube audio request through the ytdlp provider using the reported node app.js command and debug logs. Inspect the provider/match path and the request handling shown in precompiled/app.js, focusing on the timeout and cancellation before SongNotAvailable. Done means the reported YouTube audio can be obtained without the request timing out.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
18/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.