سؤال
أبحث عن إطار بيثون سيمكنني من تشغيل الفيديو وكذلك الرسم على هذا الفيديو (لأغراض وضع العلامات).
لقد جربت Pyglet ، ولكن يبدو أن هذا لا يعمل بشكل جيد - عند الرسم على مقطع فيديو موجود ، هناك وميض (حتى مع التخزين المؤقت المزدوج وكل هذه الأشياء الجيدة) ، ولا يبدو أن هناك طريقة للحصول على فهرس الإطار في الفيديو أثناء رد الاتصال لكل إطار (الوقت المنقضي فقط منذ الإطار الأخير).
المحلول
جرب غلاف Python لـ OpenCV مثل ctypes-opencv. مرجع C API هو هنا, ، والركب قريب جدًا (انظر docstrings عن أي تغييرات).
لقد استخدمته للرسم على الفيديو دون أي وميض ، لذلك يجب ألا تواجه أي مشاكل في ذلك.
مخطط تقريبي للمكالمات التي تحتاجها:
- قم بتحميل الفيديو باستخدام CVCreateFileCapture ، قم بتحميل الخط باستخدام CVFONT.
- الاستيلاء على الإطار مع cvqueryframe ، زيادة عداد الإطار الخاص بك.
- ارسم على الإطار باستخدام cvputtext ، cvellipse ، إلخ ، إلخ.
- عرض للمستخدم مع CVShowImage.
نصائح أخرى
QT (PYQT) لديه فونون ، والتي قد تساعد. PYQT متاح كـ GPL أو Payware. (QT لديه LGPL أيضًا ، لكن أغلفة PYQT لا تفعل ذلك)
جرب ال روابط Python لـ Gstreamer.