youtube-dl에서 mp4 형식 만 다운로드


73

download-dl을 사용하여 URL 재생 목록 만 형식으로 mp4 대신 형식 .mkv또는 비디오를 다운로드하는 방법은 .webm무엇입니까?

이 명령을 사용하여 비디오를 다운로드합니다. youtube-dl -itcv --yes-playlist https://www.youtube.com/playlist?list=....

그 결과,이 명령은 확장자를 가진 영상입니다 .mp4, .mkv또는.webm


상기보고 --list-formats--format nn스위치.
jc__

-f mp4를 사용했습니다. 그러나 한 번은 150MB, 90MB의 파일을 mp4로 다운로드했습니다. "youtube --help"를 통해 도움말을 읽었으며 최대 품질을 다운로드 할 수있는 다른 매개 변수를 찾을 수 없습니다!
Edgar Oliveira

답변:


80

사용 가능한 형식을 나열하려면

youtube-dl -F url

그런 다음 가장 좋은 것을 선택하십시오

예 : youtube-dl -f 11 url

webupd8의

youtube-dl -F http://www.youtube.com/watch?v=3JZ_D3ELwOQ

샘플 출력 :

[youtube] Setting language
[youtube] 3JZ_D3ELwOQ: Downloading webpage
[youtube] 3JZ_D3ELwOQ: Downloading video info webpage
[youtube] 3JZ_D3ELwOQ: Extracting video information
[info] Available formats for 3JZ_D3ELwOQ:
format code extension resolution  note 
171         webm      audio only  DASH webm audio , audio@ 48k (worst)
140         m4a       audio only  DASH audio , audio@128k
160         mp4       192p        DASH video 
133         mp4       240p        DASH video 
134         mp4       360p        DASH video 
135         mp4       480p        DASH video 
136         mp4       720p        DASH video 
137         mp4       1080p       DASH video 
17          3gp       176x144     
36          3gp       320x240     
5           flv       400x240     
43          webm      640x360     
18          mp4       640x360     
22          mp4       1280x720    (best)

선택 best하고 입력 할 수 있습니다

youtube-dl -f 22 http://www.youtube.com/watch?v=3JZ_D3ELwOQ

최상의 비디오 품질 (1080p DASH-형식 "137")과 최상의 오디오 품질 (DASH 오디오-형식 "140")을 얻으려면 다음 명령을 사용해야합니다.

youtube-dl -f 137+140 http://www.youtube.com/watch?v=3JZ_D3ELwOQ

편집하다

당신은 더 많은 옵션을 얻을 수 있습니다 여기에

비디오 선택 :

--playlist-start NUMBER          Playlist video to start at (default is 1)
--playlist-end NUMBER            Playlist video to end at (default is last)
--playlist-items ITEM_SPEC       Playlist video items to download. Specify
                             indices of the videos in the playlist
                             separated by commas like: "--playlist-items
                             1,2,5,8" if you want to download videos
                             indexed 1, 2, 5, 8 in the playlist. You can
                             specify range: "--playlist-items
                             1-3,7,10-13", it will download the videos
                             at index 1, 2, 3, 7, 10, 11, 12 and 13.
--match-title REGEX              Download only matching titles (regex or
                             caseless sub-string)
--reject-title REGEX             Skip download for matching titles (regex or
                             caseless sub-string)
--max-downloads NUMBER           Abort after downloading NUMBER files
--min-filesize SIZE              Do not download any videos smaller than
                             SIZE (e.g. 50k or 44.6m)
--max-filesize SIZE              Do not download any videos larger than SIZE
                             (e.g. 50k or 44.6m)
--date DATE                      Download only videos uploaded in this date
--datebefore DATE                Download only videos uploaded on or before
                             this date (i.e. inclusive)
--dateafter DATE                 Download only videos uploaded on or after
                             this date (i.e. inclusive)
--min-views COUNT                Do not download any videos with less than
                             COUNT views
--max-views COUNT                Do not download any videos with more than
                             COUNT views
--match-filter FILTER            Generic video filter (experimental).
                             Specify any key (see help for -o for a list
                             of available keys) to match if the key is
                             present, !key to check if the key is not
                             present,key > NUMBER (like "comment_count >
                             12", also works with >=, <, <=, !=, =) to
                             compare against a number, and & to require
                             multiple matches. Values which are not
                             known are excluded unless you put a
                             question mark (?) after the operator.For
                             example, to only match videos that have
                             been liked more than 100 times and disliked
                             less than 50 times (or the dislike
                             functionality is not available at the given
                             service), but who also have a description,
                             use --match-filter "like_count > 100 &
                             dislike_count <? 50 & description" .
--no-playlist                    Download only the video, if the URL refers
                             to a video and a playlist.
--yes-playlist                   Download the playlist, if the URL refers to
                             a video and a playlist.
--age-limit YEARS                Download only videos suitable for the given
                             age
--download-archive FILE          Download only videos not listed in the
                             archive file. Record the IDs of all
                             downloaded videos in it.
--include-ads                    Download advertisements as well
                             (experimental)

재생 목록에서 동영상을 다운로드 할 때 "youtube-dl -itcv --yes-playlist url"을 통해 다운로드하지 않은 일부 동영상이 있습니다. 이 문제를 어떻게 해결할 수 있습니까? 또는이 문제는 매개 변수 "-f mp4"를 사용하지 않았기 때문에 프로그램이 다운로드 할 가장 적합한 형식을 선택할 때 오류가 발생 했습니까?
Edgar Oliveira

그냥 입력youtube-dl --yes-playlist url
GAD3R

같은 문제를 계속하십시오. 재생 목록에 YouTube에서 42 개의 동영상이 표시됩니다. 그러나 34 개의 비디오 만 다운로드되었습니다. 출력 결과 : [youtube : playlist] 재생 목록 이름 재생 목록 : 동영상 34 개 다운로드
Edgar Oliveira

1
@EdgarOliveira 재생 목록에는 종종 일부 삭제 된 비디오가 있지만 YouTube는 재생 목록에 계속 포함합니다. 이것이 문제를 일으키는 원인입니다
Scott Stensland

109

이와 같이 ( source ) :

youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4' url

이 비디오는 최고의 비디오 + 최고의 오디오를 다운로드하여 병합했습니다.
Renetik

5
OP가 요청한 특정 형식에 신경 쓰지 않는다면 2015 년부터 youtube-dl의 기본값은 -f bestvideo+bestaudio/best이므로 bestvideo 및 bestaudio를 다운로드하도록 설정되어 있습니다 (결과 파일에 자동으로 함께 muxing) . 출처 : github.com/rg3/youtube-dl/blob/master/…
jj_

@jj_ 확실히 –이 명령 줄을 사용하면 가장 광범위한 장치와 호환되는 H.264 + AAC 버전을 얻게됩니다.
s4y

@ s4y 예, 그러나 트랜스 코딩의 위험이 있습니다. 이를 피하기 위해 다운로드 한 모든 파일에 단일 컨테이너 형식을 강요하지 않고 다르게 관리합니다.
jj_

1
@ s4y youtube-dl은 실제로 ( --audio-format옵션) 필요할 때 트랜스 코드를 작성 하지만 여기에 있습니다. bestvideo [ext = m4a])와 동일한 종류의 컨테이너가 공통이므로 (mp4) 컨텐츠를 리 뮤싱 할 때 트랜스 코딩없이 다른 mp4에 쌓입니다.
jj_

10

glenn-slayden 의이 의견 에 따르면 비디오 품질이 가장 높은 mp4 형식은 다음과 같이 얻습니다.

이 스레드가 약간 오래되었다는 것을 알고 있지만 상황이 다소 바뀌 었다고 생각합니다. 내 목표를 위해 :

  • 우선 형식에 관계없이 항상 최상의 비디오 품질을 사용하십시오.
  • 그러나 오디오 형식만으로도 mp4 를 잃지 않도록하십시오 .

이전에는을 사용 bestvideo+bestaudio/best하고 있었지만 다음 변형은 mkv(분명히) 제거 하는 데 훨씬 효과적 webm이지만 여전히 최고 품질의 비디오를 보장합니다 (이 --merge-output-format옵션을 사용 하지 않는 경우 ).

--format bestvideo+bestaudio[ext=m4a]/bestvideo+bestaudio/best 

첫 번째 용어에서 ext필터는 오디오에 대해 지정 되었지만 비디오 에는 지정 되지 않았습니다. 위의 설명에서 언급하지 않은 기술입니다. 그것이 내가 언급 한 목표에 대해 거꾸로 보인다면, 우리가 비디오 형식을 보장하려고 노력하고 있다고 생각할 수 있습니다 mp4. 왜 오디오에 대한 제약이 있습니까?

핵심은 요구 사항의 일부 라도 실패하면 다음 대체로 넘어 가면 각 대체 용어 (슬래시로 구분)가 실패한다는 것 입니다. 를 사용할 때 bestvideo+bestaudiomp4가 아닌 컨테이너를 얻는 많은 경우는 형식 선택이 확실하게 주장하기 때문에 나타납니다. 이는 bestaudio혼합 형식을 의미 할 수 있습니다. bestvideo+bestaudio명령이 너무 일관성이 없어서 강제 종료되기 때문입니다 mp4.

그러나 오디오 품질 보다 mp4 컨테이너를 얻는 데 더 관심이 있다면 어떨까요? 오디오를 먼저 주장한 다음 다시 발행하면서 해당 부분 만 묵살 함으로써 (위의 형식 선택을 사용하여) 본질적으로 다른 컨테이너보다 유연한 환경 설정 을 표현합니다 . 당신은 분명히 원하는 가능한하지만 감소 비디오 품질의 비용.m4abestvideomp4mp4

내가 말했듯이, 당신은 여전히 ​​일부를 얻을 수 있지만 mkv, 그것들은 크게 줄어 들고 더 나은 비디오를 공급해야 할 때만 사용됩니다. 그리고이 구성으로는 248 + 140webm 과 같은 것이 로 끝나기 때문에 전혀 보지 못했습니다 .mkv

후자의 경우 추가 --merge-output-format mp4하면 필요한 경우 mp4로 변환됩니다. 따라서 전체 명령은 다음과 같습니다.

youtube-dl --format "bestvideo+bestaudio[ext=m4a]/bestvideo+bestaudio/best" --merge-output-format mp4
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.