سؤال كيفية اختيار جودة الفيديو من youtube-dl؟


لقد قمت بتثبيت youtube-dl في بلدي 14.04.

يمكنني تنزيل الفيديو عن طريق اتباع الأمر ،

$ youtube-dl [youtube-link]

لكني أريد أن أعرف كيفية اختيار جودة البكسل المتاحة من youtube video (بمعنى 1080p و 720 p و 480 p وما إلى ذلك).

في وصف البرنامج ، قالوا إنه ممكن (كما هو موضح في الصورة أدناه) ، ولكن كيف نفعل ذلك ..

ss


183
2018-06-21 10:03


الأصل


الوصف أعلاه عفا عليه الزمن. من man page: "يتم تعيين موقع youtube-dl افتراضيًا على تنزيل أعلى جودة متوفرة وفقًا لما أبلغ عنه YouTube ، والذي سيكون 1080 بكسل أو 720 بكسل في بعض الحالات." - Jos
لاحظ أن YouTube قد استخدم نوعًا من الحماية التي تمنع تنزيل الأدوات من (أو حتى رؤية) إصدار 1080p ، ولكن لا يزال بإمكانك تنزيل جميع القرارات الأخرى بما في ذلك 720 بكسل. - thomasrutter


الأجوبة:


لتنزيل فيديو ، تكتب عنوان URL بعد الأمر كما يلي:

youtube-dl "http://www.youtube.com/watch?v=P9pzm5b6FFY"

لتحديد جودة الفيديوأول استخدام -F خيار لسرد التنسيقات المتاحة ، في ما يلي مثال ،

youtube-dl -F "http://www.youtube.com/watch?v=P9pzm5b6FFY"

وإليك الإخراج:

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

أفضل جودة هي 22 لذلك استخدم -f 22 بدلا من -F لتنزيل فيديو MP4 بدقة 1280x720 مثل:

youtube-dl -f 22 "http://www.youtube.com/watch?v=P9pzm5b6FFY"

أو استخدام الإشارات التالية اختياريًا لتنزيل أفضل مسارات الصوت والفيديو المتوفرة تلقائيًا:

youtube-dl -f bestvideo+bestaudio "http://www.youtube.com/watch?v=P9pzm5b6FFY"

إذا واجهت خطأ أثناء عملية muxing ، فحاول بدلاً من ذلك ما يلي:

youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/bestvideo+bestaudio' --merge-output-format mp4 "http://www.youtube.com/watch?v=P9pzm5b6FFY"

سيضمن لك هذا الأمر تنزيل أعلى جودة للفيديو mp4 و m4a من الفيديو ودمجها مرة أخرى في mp4 واحد (باستخدام ffmpeg في حالتي).

مصدر: http://www.webupd8.org/2014/02/video-downloader-youtube-dl-gets.html


269
2018-06-21 10:19



تأكد من أنك لا تختار DASH. هذا سيكون غير قابل للعب! - ps95
@ prakharsingh95 لا يمكن تحويل الصوت DASH إلا إلى تنسيق موجة أو mp3 القياسية باستخدام gnac أو برامج مماثلة. - mchid
قصدت DASH Video. حاولت تحميل 4Kلكن هذا كل شيء DASH شكل (DASH يسمح يوتيوب للحفاظ على النطاق الترددي). إنه مختلف جذريًا ، وغالبًا ما يكون غير قابل للتشغيل. - ps95
@ prakharsingh95 نعم إذا كان أي شيء قد تتمكن من عرض mp4 باستخدام VLC حيث تسمح لك VLC بمزامنة الفيديو مع ملف منفصل للصوت. لم أجربه رغم ذلك هل حاولت تحويل ملف mp4 من DASH إلى avi؟ أعتقد أنهم متشابهون. - mchid
نعم فعلا. إن لعبة Dash قابلة للتشغيل بالطبع ، لكنك تحتاج إلى تجميع التدفقات باستخدام شيء ما avconv. بطيئة جدا ل 4K. - ps95


يمكنك تنزيل 1080p باستخدام youtube-dl، ولكن عليك القيام بعمل إضافي قليل. عادةً ما يتم تنزيل 720 بكسل فقط كحد أقصى حتى إذا كان بإمكانك رؤية 1080 بكسل على youtube.com.

إركض مع -F لمشاهدة التنسيقات المتاحة:

youtube-dl -F https://www.youtube.com/watch\?v\=-pxRXP3w-sQ

171         webm      audio only  DASH audio  115k , audio@128k (44100Hz), 2.59MiB (worst)
140         m4a       audio only  DASH audio  129k , audio@128k (44100Hz), 3.02MiB
141         m4a       audio only  DASH audio  255k , audio@256k (44100Hz), 5.99MiB
160         mp4       256x144     DASH video  111k , 12fps, video only, 2.56MiB
247         webm      1280x720    DASH video 1807k , 1fps, video only, 23.48MiB
136         mp4       1280x720    DASH video 2236k , 24fps, video only, 27.73MiB
248         webm      1920x1080   DASH video 3993k , 1fps, video only, 42.04MiB
137         mp4       1920x1080   DASH video 4141k , 24fps, video only, 60.28MiB
43          webm      640x360
18          mp4       640x360
22          mp4       1280x720    (best)

لاحظ أن youtube-dl وصفت الخيار الأخير 1280 × 720 كجودة "أفضل" وهذا ما سيتم تنزيله افتراضيًا ، ولكن الخط الذي يبدأ بـ 137 هو في الواقع أعلى جودة 1920 × 1080. قام Youtube بفصل تدفقات الفيديو والصوت للخطوط المسماة DASH ، لذا نحتاج أيضًا إلى اختيار صوت عالي الجودة وهو في هذه الحالة هو السطر الذي يبدأ بـ 141. ثم نبدأ youtube-dl مرة أخرى هذه المرة تحديد الصوت والفيديو:

youtube-dl -f 137+141 https://www.youtube.com/watch\?v\=-pxRXP3w-sQ

وسيقوم بتنزيل الفيديو 1080p ودمجها تلقائيًا بأعلى جودة للصوت. يجب أيضًا حذف الأجزاء المنفصلة التي تم تنزيلها تلقائيًا. هذه الطريقة هي القليل من العمل الإضافي ، ولكنها ستحصل على أفضل النتائج.


79
2018-01-24 21:59



شكرا جزيلا ، لم أكن أعرف عن 137 + 141 - whitesiroi
يقدم المثال الخاص بك والآخرين خيارات سهلة للصوت - وهذا هو ، لجودة عالية ، واختيار واحد مع أعلى قيمة البت. لكنني وجدت مؤخرا نفسي في مواجهة بين الاختيار DASH audio , opus @160k أو DASH audio 126k , audio@128k (44100Hz), 1.79MiB أو DASH audio 127k , m4a_dash container, aac @128k (44100Hz), 1.94MiB. كان علي أن أختار ولكنني غير متأكد من الجودة ، أو ربما التوافق. - user643722
أفضل شيء عن youtube-dl هو أنه متعدد المنصات. لا يعمل هذا الحل فقط على نظام التشغيل Linux ، ولكن أيضًا على Mac و Windows. شكرا لكم! - Antony
في الوقت الحاضر هذا هو الافتراضي ، ولكن فقط إذا كان لديك avconv (libav) أو ffmpeg مثبتة للقيام بتحويل الملف. بالنسبة لنظام التشغيل Windows ، فأنت تريد التعيين --ffmpeg-location في %APPDATA%\youtube-dl\config.txt إلى الدليل حيث تم تثبيت avconv / ffmpeg. إذا كنت تمتلك نظامًا منخفضًا قد تحتاج إليه -f bestvideo[fps<=30]+bestaudio هناك أيضا ، لتجنب الفيديو 60fps. - GreenReaper


لتحديد درجات دقة محددة ، يمكنك تحديد الحجم وجودة الصوت بحيث يتم تحديدهم تلقائيًا - لذا ل 480 p:

-f 'bestvideo[height<=480]+bestaudio/best[height<=480]'

مع bestvideo[height<=720]+bestaudio/best[height<=720] ل 720 p وما إلى ذلك ويمكن إضافة هذا إلى ملف التكوين في ~/.config/youtube-dl/config (او حتى /etc/youtube-dl.conf) حتى لا تحصل على تنزيلات كبيرة الحجم:

mkdir ~/.config/youtube-dl
echo "-f 'bestvideo[height<=720]+bestaudio/best[height<=720]'" >> ~/.config/youtube-dl/config

يمكنك استخدام --ignore-config إذا كنت تريد تعطيل ملف التهيئة لتشغيل youtube-dl معين.

يرجى ملاحظة أنه في كثير من الأحيان سيكون عليه تنزيل مقطع فيديو منفصل للصوت والبخار ودمجهما.

لمزيد من الأمثلة انظر youtube-dldoucmentation.


15
2017-12-31 09:47



واجهت مشكلة في الأجزاء المختلفة من الفيديو نفسه التي لها رموز تنسيق مختلفة لنفس الدقة (مثل hls-1476 للفيديو 1 من 2 و hls-1665 للفيديو 2 من 2 حيث كان كلاهما 540 بكسل) لذلك لم أستطع استخدام "-f hls-1476" أو "-f hls-1665" أو سأحصل على "ERROR: التنسيق المطلوب غير متوفر" ساعدتني أمثلة الأمر في استرجاع ما أردت. - ssnobody
+1 لـ ~/.config/youtube-dl/config - Marinos An


برنامج نصي يحتوي على bash يطالب بالتنسيق ، والذي يتضمن جميع عمليات التقديم المتاحة ، بما في ذلك الصوت والفيديو فقط.

يقبل كل من عناوين URL المطابقة لـ YouTube ومعرفات الفيديو.

#!/ usr/bin/env bash
# Download youtube video with desired quality

# youtube-dl accepts both fully qualified URLs and video id's such as AQcQgfvfF1M

url="$*"

echo "Fetching available formats for $url..."
youtube-dl -F "$url"
read -p "Please enter the desired quality code: " FORMAT

echo "Streaming with quality $FORMAT..."
mpv --cache=1024 $(youtube-dl -f $FORMAT -g "$url")

إخراج العينة:

    yt.sh https://m.youtube.com/watch?v=Dax_tnZRExc
    [youtube] Dax_tnZRExc: Downloading webpage
    [youtube] Dax_tnZRExc: Downloading video info webpage
    [youtube] Dax_tnZRExc: Extracting video information
    [youtube] Dax_tnZRExc: Downloading MPD manifest
    [info] Available formats for Dax_tnZRExc:
    format code  extension  resolution note
    139          m4a        audio only DASH audio   49k , m4a_dash container, mp4a.40.5@ 48k (22050Hz), 308.75KiB
    249          webm       audio only DASH audio   50k , opus @ 50k, 271.91KiB
    250          webm       audio only DASH audio   70k , opus @ 70k, 366.63KiB
    171          webm       audio only DASH audio  118k , vorbis@128k, 652.50KiB
    140          m4a        audio only DASH audio  127k , m4a_dash container, mp4a.40.2@128k (44100Hz), 820.00KiB
    251          webm       audio only DASH audio  130k , opus @160k, 705.84KiB
    160          mp4        256x144    DASH video  109k , avc1.4d400c, 13fps, video only, 703.64KiB
    278          webm       256x144    144p  111k , webm container, vp9, 25fps, video only, 439.72KiB
    242          webm       426x240    240p  243k , vp9, 25fps, video only, 623.95KiB
    133          mp4        426x240    DASH video  252k , avc1.4d4015, 25fps, video only, 1.54MiB
    134          mp4        640x360    DASH video  388k , avc1.4d401e, 25fps, video only, 1.24MiB
    243          webm       640x360    360p  458k , vp9, 25fps, video only, 1.19MiB
    135          mp4        854x480    DASH video  761k , avc1.4d401e, 25fps, video only, 2.40MiB
    244          webm       854x480    480p  893k , vp9, 25fps, video only, 2.00MiB
    136          mp4        1280x720   DASH video 1382k , avc1.4d401f, 25fps, video only, 4.56MiB
    247          webm       1280x720   720p 1754k , vp9, 25fps, video only, 3.94MiB
    137          mp4        1920x1080  DASH video 2350k , avc1.640028, 25fps, video only, 8.48MiB
    248          webm       1920x1080  1080p 2792k , vp9, 25fps, video only, 8.09MiB
    17           3gp        176x144    small , mp4v.20.3, mp4a.40.2@ 24k
    36           3gp        320x180    small , mp4v.20.3, mp4a.40.2
    43           webm       640x360    medium , vp8.0, vorbis@128k
    18           mp4        640x360    medium , avc1.42001E, mp4a.40.2@ 96k
    22           mp4        1280x720   hd720 , avc1.64001F, mp4a.40.2@192k (best)
    Please enter the desired format #

إذا كنت تريد تنزيل الفيديو بدلاً من بثه ، فما عليك سوى إزالة mpv --cache=1024جزء وعلامة الدولار مع الأقواس.


3
2018-06-29 13:27





بعض الخيارات الأخرى لتنزيل مقاطع الفيديو ذات الجودة الأفضل بخلاف تلك المذكورة هنا بناءً على راحتك موضحة أدناه:

تحميل أفضل تنسيق mp4 المتاحة أو أي شيء آخر أفضل إذا لم يكن هناك mp4 المتاحة

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

نزّل أفضل تنسيق متوفر لكن ليس أفضل من 480 بكسل

$ youtube-dl -f 'bestvideo[height<=480]+bestaudio/best[height<=480]'

قم بتنزيل أفضل تنسيق للفيديو فقط ولكن لا يزيد حجمه عن 50 ميغابايت

$ youtube-dl -f 'best[filesize<50M]'

يمكنك تنزيل أفضل تنسيق متاح عبر الرابط المباشر عبر بروتوكول HTTP / HTTPS

$ youtube-dl -f '(bestvideo+bestaudio/best)[protocol^=http]'

مرجع:

مباشرة من صفحة جيوتيوب دي جي ، dl


1
2017-08-17 13:58





بشكل افتراضي ، سيختار youtube-dl أفضل جودة.


-3
2017-12-29 16:26



نعم ، كما في الملف التمهيدي لديك أيضًا خيار (خيارات) لتحديد التنسيق المقصود ، انظر هنا: github.com/rg3/youtube-dl/blob/master/... - AjayKumarBasuthkar