wav 형식의 YouTube 비디오를 검색하고 다운로드하기 위한 CLI 유틸리티

wav 형식의 YouTube 비디오를 검색하고 다운로드하기 위한 CLI 유틸리티

약 50개의 노래 제목이 포함된 텍스트 파일이 있습니다.

텍스트 파일에서 각 제목을 가져와 YouTube에서 검색하고 처음 4개의 비디오 링크를 가져온 다음 해당 링크에 대한 오디오를 다운로드할 수 있는 CLI 유틸리티를 찾고 있습니다.

지금까지 시도해 본 결과 youtube-dl검색 기능이 있지만 메타데이터만 반환하고 거기에서 동영상 링크를 찾을 수 없는 것 같습니다.

답변1

  • WAV는 최신 오디오 컨테이너 형식이 아닙니다. 일정한 속도와 블록 크기 오디오 코덱만 지원하는 컨테이너 형식을 원하는 이유가 명확하지 않습니다. 하지만 이는 스트리밍 서비스에서는 매우 불편한 작업이므로 오디오를 다운로드하여 해당 코덱으로 트랜스코딩한 다음 WAV 컨테이너에 넣어야 합니다. 다행히도 yt-dlp -x --audio-format wav그것은 당신을 위해 그것을 합니다. ( yt-dlp예, 지점입니다 youtube-dl. 아직 확인하지 않았습니다.) 다시 말하지만, WAV가 필요한 경우 WAV 친화적인 코덱으로 트랜스코딩하는 대신 오디오에 수행한 모든 작업을 수정하세요. 이는 일반적으로 기가바이트의 비압축 오디오를 의미합니다.
  • yt-dlp ytsearchN:Search string"검색 문자열"에 대한 상위 N개의 결과를 얻습니다( youtube-dl현재는 그러한 기능이 없으므로 필요합니다 yt-dlp).
  • 이 모든 것을 종합하면 ytdlp -x --audio-format wav ytsearch:YOURTERMSHERE각 YOURTERMSHERE 검색어에 대해 원하는 작업을 수행할 수 있습니다.
  • 전체 파일을 한 줄씩 읽으려면 stdin으로 파이프하고 다음 yt-dlp을 사용하십시오 --batch-file -.

sound.sh를 가져옵니다.

#!/usr/bin/env zsh
sed 's/^/ytsearch4:/' < $1 | yt-dlp --batch-file - -x --audio-format wav

(테스트되지 않음)

chmod 755 grabsound.sh프로그램을 직접 실행한 다음 실행할 수 있습니다 /path/to/grabsound.sh yourtextfile.txt.

다시한번 강력히 추천드립니다아니요WAV를 사용하세요. 나중에 다른 형식으로 트랜스코딩할 계획이더라도 wav(주로 압축되지 않은 PCM)로 트랜스코딩하는 것보다 원본 오디오를 즉석에서 더 빠르게 디코딩하는 것이 더 낫기 때문에 여기서 수행하는 작업은 불필요합니다.

관련 정보