다음을 사용하여 비디오를 다운로드하면비디오 다운로드다운로드하는 동안 부품 파일을 볼 수 있습니다(제 경우에는유틸리티 차량). 비디오와 오디오가 모두 포함된 형식을 선택할 수 없거나 선택하고 싶지 않다고 가정하면, 비디오 다운로드가 완료된 후 다운로드 및 병합되기 때문에 부품 파일의 오디오가 누락됩니다.
오디오를 포함한 파일의 일부를 볼 수 있도록 다운로드 중에 오디오와 비디오를 병합하는 빠른 방법이 있습니까?
비슷한 질문을 한 적이 있어요.깃허브--downloader ffmpeg
이 옵션을 사용할 수 있다는 것을 알게 되었습니다 . 이 방법은 작동하지만 속도가 매우 느리기 때문에 더 빠른 방법을 찾고 있습니다.
이 문제는 매우 큰 고품질 비디오(예: 10시간 길이)를 다운로드할 때 발생합니다. 그러나 오디오를 다운로드하는 것이 훨씬 빠릅니다. 이미 오디오 파일이 있고 비디오 파일을 다운로드 중이라고 가정해 보겠습니다. 파일을 다운로드하는 동안 ffmpeg를 사용하여 오디오를 비디오에 지속적으로 병합하는 것과 같은 간접적인 방법(해결 방법)이 있습니까?
답변1
옵션 1:비디오와 오디오의 혼합/다중화 스트림이 포함된 비디오 다운로드 형식을 선택할 수 있습니다.
예를 들어,
yt-dlp -F https://youtu.be/3QnD2c4Xovk
선택할 형식과 다음과 같은 내용이 나열됩니다.
yt-dlp -f 18 https://youtu.be/3QnD2c4Xovk
형식이 선택됩니다. 일부 파일에는 해당 형식이 지원하는 경우 비디오 및 오디오가 포함됩니다.
옵션 2:오디오와 비디오 각각 하나씩 두 가지 형식을 다운로드한 후 다음을 통해 혼합할 수도 있습니다 yt-dlp
.
yt-dlp -f 251,244 https://youtu.be/3QnD2c4Xovk
테스트에서 처음 지정한 형식(여기서는 251)이 먼저 다운로드되었으며 파일의 일부를 재생하여 즉시 들을 수 있었습니다.
완전성을 기하기 위해 위의 현재 출력은
yt-dlp -F https://youtu.be/3QnD2c4Xovk
[youtube] Extracting URL: https://youtu.be/3QnD2c4Xovk
[youtube] 3QnD2c4Xovk: Downloading webpage
[youtube] 3QnD2c4Xovk: Downloading ios player API JSON
[youtube] 3QnD2c4Xovk: Downloading android player API JSON
[youtube] 3QnD2c4Xovk: Downloading m3u8 information
[info] Available formats for 3QnD2c4Xovk:
ID EXT RESOLUTION FPS CH │ FILESIZE TBR PROTO │ VCODEC VBR ACODEC ABR ASR MORE INFO
───────────────────────────────────────────────────────────────────────────────────────────────────────────────────
sb2 mhtml 48x27 0 │ mhtml │ images storyboard
sb1 mhtml 67x45 0 │ mhtml │ images storyboard
sb0 mhtml 135x90 0 │ mhtml │ images storyboard
233 mp4 audio only │ m3u8 │ audio only unknown [en] Default
234 mp4 audio only │ m3u8 │ audio only unknown [en] Default
139 m4a audio only 2 │ 1.84MiB 48k https │ audio only mp4a.40.5 48k 22k [en] low, m4a_dash
249 webm audio only 2 │ 2.22MiB 57k https │ audio only opus 57k 48k [en] low, webm_dash
250 webm audio only 2 │ 3.02MiB 78k https │ audio only opus 78k 48k [en] low, webm_dash
140 m4a audio only 2 │ 4.91MiB 127k https │ audio only mp4a.40.2 127k 44k [en] medium, m4a_dash
251 webm audio only 2 │ 5.82MiB 151k https │ audio only opus 151k 48k [en] medium, webm_dash
17 3gp 176x144 12 1 │ 2.17MiB 56k https │ mp4v.20.3 mp4a.40.2 22k [en] 144p
394 mp4 216x144 24 │ 1.26MiB 33k https │ av01.0.00M.08 33k video only 144p, mp4_dash
269 mp4 216x144 24 │ ~ 4.53MiB 115k m3u8 │ avc1.4D400C 115k video only
160 mp4 216x144 24 │ 717.16KiB 18k https │ avc1.4D400C 18k video only 144p, mp4_dash
603 mp4 216x144 24 │ ~ 5.39MiB 136k m3u8 │ vp09.00.11.08 136k video only
278 webm 216x144 24 │ 1.34MiB 35k https │ vp09.00.11.08 35k video only 144p, webm_dash
395 mp4 360x240 24 │ 1.41MiB 37k https │ av01.0.00M.08 37k video only 240p, mp4_dash
229 mp4 360x240 24 │ ~ 6.73MiB 170k m3u8 │ avc1.4D400D 170k video only
133 mp4 360x240 24 │ 1.11MiB 29k https │ avc1.4D400D 29k video only 240p, mp4_dash
604 mp4 360x240 24 │ ~ 9.56MiB 242k m3u8 │ vp09.00.20.08 242k video only
242 webm 360x240 24 │ 1.58MiB 41k https │ vp09.00.20.08 41k video only 240p, webm_dash
396 mp4 540x360 24 │ 2.13MiB 55k https │ av01.0.01M.08 55k video only 360p, mp4_dash
230 mp4 540x360 24 │ ~ 16.81MiB 425k m3u8 │ avc1.4D4015 425k video only
134 mp4 540x360 24 │ 2.31MiB 60k https │ avc1.4D4015 60k video only 360p, mp4_dash
18 mp4 540x360 24 2 │ ≈ 7.36MiB 186k https │ avc1.42001E mp4a.40.2 44k [en] 360p
605 mp4 540x360 24 │ ~ 19.08MiB 482k m3u8 │ vp09.00.21.08 482k video only
243 webm 540x360 24 │ 2.66MiB 69k https │ vp09.00.21.08 69k video only 360p, webm_dash
397 mp4 720x480 24 │ 3.21MiB 83k https │ av01.0.04M.08 83k video only 480p, mp4_dash
231 mp4 720x480 24 │ ~ 29.80MiB 753k m3u8 │ avc1.4D401E 753k video only
135 mp4 720x480 24 │ 4.36MiB 113k https │ avc1.4D401E 113k video only 480p, mp4_dash
606 mp4 720x480 24 │ ~ 28.21MiB 713k m3u8 │ vp09.00.30.08 713k video only
244 webm 720x480 24 │ 4.21MiB 109k https │ vp09.00.30.08 109k video only 480p, webm_dash
yt-dlp
도구를 통해 "오디오 전용" 및 "비디오 전용" 설명 텍스트를 볼 수 있습니다 .
답변2
Ned64의 답변을 확장하면 다음과 같이 다운로드를 시작할 수 있습니다.
yt-dlp -f 'bestaudio[ext=m4a],bestvideo[ext=mp4]' 'https://www.youtube.com/watch?v=2tdiKTSdE9Y'
오디오 다운로드가 완료되면 비디오를 다운로드하는 동안 --audio-file
mpv 옵션을 사용할 수 있습니다.
mpv --audio-file="*[2tdiKTSdE9Y].m4a" "*[2tdiKTSdE9Y].mp4.part"
ogg 및 webm 변형에서도 작동할 수도 있습니다.