سؤال لماذا يتم تقديم ملفات الفيديو بواسطة المعالج بدلاً من gpu؟


حسنا أنا أعرف هذا ربما يبدو وكأنه سؤال غبي جدا ، ولكن لم أتمكن من العثور على إجابة باستخدام جوجل ، لذلك نعم ...
لذا ، أعرف أن هناك تقنيات مثل OpenCL و CUDA ، ولكن السبب هو أن المعالج يستخدم بشكل افتراضي ، على سبيل المثال. ملف فيديو من برنامج تحرير الفيديو؟ يبدو بديهيا بالنسبة لي أن الرسومات لا يتم استخدام وحدة المعالجة لمعالجة الرسومات. عند تشغيل لعبة فيديو ، يتحمل GPU مسؤولية إنتاج الصورة على الشاشة أيضًا ، أليس كذلك؟

مرة أخرى ، أعرف أن هذا قد يبدو غبياً بالنسبة لك. يرجى أن يكون لطيفا درجة °

تحرير: كنت أتحدث specificaly حول إخراج الفيديو من برنامج NLE مثل Premiere Pro


8
2017-07-30 21:34


الأصل


يتم ضغط معظم الفيديو عبر الإنترنت ، وبالتالي فإن العمل الحقيقي هو إلغاء ضغط الملف ، وهو عملية عامة تتم معالجتها بواسطة وحدة المعالجة المركزية. من المحتمل أن تكون وحدات معالجة الرسومات جيدة جدًا في التعامل مع ضغط / إلغاء ضغط الملفات إذا كانت المكتبات تدعمها ، ولكن بشكل عام ، يتم دعمها لمكالمات محددة لجذب العناصر على الشاشة ، وليس للحساب العام. تستفيد الألعاب من كل شيء ديناميكي ، لذلك فهي تستفيد فعلاً من وحدة معالجة الرسومات - لم يتم إنشاء الفيديو بسرعة - إنه معرّف مسبقًا هذا اللون في هذا الإحداثيات ، لذلك لا تكون وحدات معالجة الرسومات مفيدة لذلك. - ernie
هل تتحدث تحديدًا عن برامج تحرير الفيديو التي تعرض ملف فيديو؟ إذا لم يكن كذلك ، فهل يمكنك تقديم بعض الأمثلة الأخرى؟ يعتمد مقدار GPU الذي يستخدمه محرر الفيديو أثناء التقديم بشكل كبير على حزمة البرامج التي يتم استخدامها. كما هو واسع جدا (المنظمة البحرية الدولية). - Ƭᴇcʜιᴇ007
نعم ، كنت أتحدث عن ذلك. آسف إذا كان ذلك غير واضح. - MoritzLost
بعد ذلك ، يُرجى تعديل سؤالك ليكون حول المشكلة المحددة التي تواجهها ، بما في ذلك البرنامج الذي جربته ، ونظام التشغيل ، وما الذي حاولت تصحيحه. ثم اطرح سؤال محدد حول هذه المشكلة المحددة. مرة أخرى ، كما هو هذا هو واسع جدا ، كما العديد من حزم تقديم الفيديو يستطيع استخدم GPU ، إذا تمت تهيئتها بشكل صحيح. ثم قد نكون قادرين على مساعدتك في معرفة لماذا لا. :) - Ƭᴇcʜιᴇ007


الأجوبة:


قبل أن يكون HD شيئًا ، يمكن لوحدات المعالجة المركزية معالجة فك تشفير الفيديو بسهولة. عندما أصبحت HD شعبية منذ حوالي 8 سنوات ، بدأت الشركات المصنعة GPU تنفيذ فك تشفير الفيديو المعجل في رقائقها. يمكنك بسهولة العثور على بطاقات رسومات تم تسويقها على أنها تدعم مقاطع الفيديو عالية الدقة وبعض الشعارات الأخرى. واليوم ، تدعم أي GPU الفيديو السريع ، حتى وحدات معالجة الرسوميات المدمجة مثل Intel HD Graphics أو سابقاتها ، GMA Intel. بدون هذه الإضافة ، سيكون لدى وحدة المعالجة المركزية صعوبة في محاولة هضم الفيديو بدقة 1080 بيكسل مع معدل عرض مقبول ، ناهيك عن زيادة استهلاك الطاقة. لذلك فأنت تستخدم بالفعل فيديو مسرع كل يوم.

الآن عندما تستخدم وحدات معالجة الرسوم العامة بشكل عام المزيد من الطاقة الحسابية ، يتم استخدامها على نطاق واسع لتسريع معالجة الفيديو أيضًا. بدأ هذا الاتجاه في نفس الوقت تقريباً عندما تم إدخال فك التشفير السريع. بدأت برامج مثل Badaboom في اكتساب شعبية حيث تبين أن GPUs أفضل بكثير في إعادة ترميز الفيديو من وحدات المعالجة المركزية. لا يمكن القيام بذلك من قبل ، لأن ، GPUs تفتقر إلى القدرات الحسابية العامة.

ولكن يمكن لوحدات معالجة الرسوم (GPUs) بالفعل توسيع نطاق الصور وتدويرها وتحويلها منذ العصور الوسطى ، فلماذا لم نتمكن من استخدام هذه الميزات لمعالجة الفيديو؟ حسنًا ، لم يتم تنفيذ هذه الميزات أبدًا لاستخدامها بهذه الطريقة ، لذلك كانت دون المستوى الأمثل لأسباب متعددة.

عندما تقوم ببرمجة لعبة ، تقوم أولاً بتحميل كل الرسومات والآثار وما إلى ذلك إلى وحدة معالجة الرسومات ، ثم تقوم فقط بعرض المضلعات وترسم الكائنات المناسبة لها. لا يلزمك إرسال مواد في كل مرة تكون فيها مطلوبة ، يمكنك تحميلها وإعادة استخدامها. عندما يتعلق الأمر بمعالجة الفيديو ، يجب عليك إطعام الإطارات إلى وحدة معالجة الرسومات باستمرار ، ومعالجتها وإعادتها مرة أخرى لإعادة إدخالها على وحدة المعالجة المركزية (تذكر أننا نتحدث عن أوقات GPU قبل الحسابية). هذه لم تكن طريقة عمل وحدات معالجة الرسومات ، لذا لم يكن الأداء رائعاً.

والشيء الآخر هو أن وحدات معالجة الرسوم لا تعتمد على الجودة عندما يتعلق الأمر بتحويلات الصور. عندما تلعب لعبة بدرجة 40+ في الثانية ، فإنك لن تلاحظ تحريفات البيكسل الصغيرة. حتى لو كنت ترغب في ذلك ، لم تكن رسومات اللعبة مفصلة بما فيه الكفاية ليهتم الناس. هناك العديد من الاختراقات والحيل المستخدمة لتسريع عملية العرض التي يمكن أن تؤثر على الجودة بشكل طفيف. يتم تشغيل مقاطع الفيديو في مقاطعات بارزة إلى حد كبير أيضًا ، لذا فإن القياس بشكل ديناميكي عند التشغيل يعد أمرًا مقبولًا ، إلا أن إعادة التصميم أو التقديم لابد أن يؤدي إلى نتائج مثالية للبيكسل أو على الأقل قدر الإمكان بتكلفة معقولة. لا يمكنك تحقيق ذلك دون ميزات مناسبة تنفذ مباشرة في GPU.

في الوقت الحاضر ، استخدام وحدات معالجة الرسوميات لمعالجة مقاطع الفيديو أمر شائع جدًا نظرًا لأننا نحتاج إلى تقنية مطلوبة. لماذا لا يكون الخيار الافتراضي هو سؤال لناشر البرنامج ، وليس نحن - إنه اختيارهم. ربما يعتقدون أن عملاءهم لديهم أجهزة موجهة لمعالجة مقاطع الفيديو على وحدة المعالجة المركزية ، لذا فإن التبديل إلى GPU سيؤثر سلبًا على الأداء ، ولكن هذا مجرد تخميني. وهناك احتمال آخر وهو أنهم ما زالوا يتعاملون مع وحدة معالجة الرسومات على أنها ميزة تجريبية غير مستقرة بدرجة كافية لتعيينها كإعداد افتراضي حتى الآن. لا تريد إهدار الساعات التي تجعل الفيديو الخاص بك فقط يدرك أن هناك شيئًا ثابتكًا بسبب خطأ في معالجة GPU. إذا قررت استخدامه على أي حال ، فلا يمكنك أن تلوم ناشر البرنامج - فقد كان قرارك.


13
2017-07-30 22:35