C ++ - عميل RTSP مع واجهة المستخدم الرسومية QT باستخدام Live555 lib ماذا أحتاج أيضًا؟
-
29-09-2019 - |
سؤال
أود أن أكون قادرًا على مشاهدة مقطع الفيديو الذي يتدفق مع طلبي الذي أقوم به في QT أولاً ، لقد راجعت VLC ، لكن GPL ، وأيضًا لا أحتاج إلى كل خيارها ، ثم رأيت أنه يستخدم Live555 وهو LGPL للبث ، سؤالي هل يمكنني استخدام هذه المكتبة في تطبيق MT QT؟ وكيف
المحلول
بادئ ذي بدء ، ما هي المنصة التي تعمل عليها؟
يمكنك استخدام Live555 فقط لأغراض RTSP/RTP. LIVE555 ومع ذلك لا يحتوي على أي فك تشفير ، إلخ.
تستخدم VLC Live555 داخليًا لـ RTSP AFAIK ، ولكنها تحتوي أيضًا على مجموعة من المكونات الإضافية الأخرى ، فداخلات ، demultiplexers ، إلخ.
لا تزال بحاجة إلى إطار إعلام للتعامل مع تنسيق الوسائط ، وفك التشفير المحدد ، والانعضاء ، والعرض ، وما إلى ذلك على Windows ، يمكن تحقيق ذلك باستخدام DirectShow. في هذا السيناريو ، يمكنك لف Live555 في مرشح مصدر مباشر وإنشاء خط أنابيب الوسائط. للحصول على مقطع الفيديو لعرضه في تطبيق QT الخاص بك ، ستحتاج إلى التحقيق في كيفية قيامك بتكوين نافذة DirectShow Video Render على تطبيق QT الخاص بك.
إطار عمل وسائل الإعلام عبر المنصات الأخرى التي لست على دراية بها gstreamer.
يحرر:
هل نظرت إلى QT فونون على الاطلاق؟ يبدو أنهم بدأوا في دمج الوسائط المتعددة في الإطار ، على الرغم من أنك ستضطر إلى التحقيق فيما إذا كانوا يدعمون RTSP ، وإذا لم يكن الأمر كذلك ، فإن كيفية تلقي بيانات الوسائط عبر Live555 في خط أنابيب الوسائط QT.
نصائح أخرى
نعم ، يمكنك استخدام مكتبات Live555 التي هي LGPL في التطبيق الخاص بك. يمكن تنفيذ الواجهة الأمامية باستخدام QT أو MFC أو Java. يوفر Live555 واجهات برمجة التطبيقات لإنشاء جلسات RTSP ، وربما قد تحتاج إلى تجاوز عدد قليل من الوظائف. انتقل من خلال تطبيقات العينة التي توفرها Live555 في مجلد TestProgs.
إذا كنت تقدم تطبيقًا تجاريًا ، فلا تنس تضمين ترخيص Live555 في إصداراتك.