ดาวน์โหลด Youtube Video ด้วย youtube-dl

เราสามารถ download video ใน Youtube ด้วย command line แบบง่ายๆ แถมยังสามารถเลือกคุณภาพของ Video และ Audio ได้ด้วยวิธีการง่ายๆ ดังนี้

การใช้งาน youtube-dl

ก่อนอื่นให้ทำการติดตั้ง youtube-dl ในระบบปฏิบัติการของคุณก่อน

จากนั้น ใน Terminal ให้พิมพ์คำสั่งตามวัตถุประสงค์ที่ต้องการ

ดาวน์โหลดภาพและเสียงคุณภาพปกติ

youtube-dl 'ลิงก์ยูทูปที่ต้องการดาวน์โหลด'

ดาวน์โหลดภาพและเสียงที่มีคุณภาพดีที่สุด

youtube-dl -f best 'ลิงก์ยูทูปที่ต้องการดาวน์โหลด'

ดูว่าในลิงก์ Youtube มีภาพและเสียงคุณภาพแบบไหนบ้าง

youtube-dl -F 'ลิงก์ยูทูปที่ต้องการดาวน์โหลด'

แล้วทำการเลือกดาวน์โหลดตามคุณภาพที่ต้องการด้วยคำสั่ง

youtube-dl -f 'format_code'  'ลิงก์ยูทูปที่ต้องการดาวน์โหลด'

เช่น

ตามตัวอย่างด้านบนเป็นการเลือกดาวน์โหลดภาพและเสียงที่มีคุณภาพดีที่สุดแล้วมา merge กันภายหลังด้วย ffmpeg หรือ avconv ที่อยู่ในเครื่องของคุณ ซึ่งหากไม่พบโปรแกรมดังกล่าว youtube-dl จะสลับกลับไปเลือกดาวน์โหลดวิดีโอที่มีคุณภาพเสียงและภาพที่ดีที่สุดเท่าที่มี ซึ่งก็คือเทียบเท่ากับการกลับไปใช้คำสั่ง youtube-dl -f best นั่นเอง

เลือกดาวน์โหลดเฉพาะเสียง ที่คุณภาพดีที่สุด แล้วแปลงเป็น mp3

youtube-dl -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 'ลิงก์ยูทูปที่ต้องการดาวน์โหลด'

แถมท้าย

ถ้าไฟล์ที่โหลดมาเป็น mp3 และมีความยาวหลายๆชั่วโมง เราสามารถชตัดแบ่งไฟล์ (split) ได้ด้วย command line ดังนี้ครับ

ffmpeg -i somefile.mp3 -f segment -segment_time 3600 -c copy out%03d.mp3

ตัวอย่างด้านบนเป็นการตัดไฟล์ที่ชื่อ somefile.mp3 ออกเป็นไฟล์ย่อยๆไฟล์ละ 1 ชม. (3,600 นาที)

Ref:
https://askubuntu.com/questions/486297/how-to-select-video-quality-from-youtube-dl
https://github.com/ytdl-org/youtube-dl