يمكنك استخدام هذه التقنية لإنشاء مشغل فيديو بسيط أو لدمج مشغل في تطبيق أكثر تعقيدًا.
هناك طرق مختلفة يمكنك من خلالها تشغيل مقاطع الفيديو على جهاز الكمبيوتر الخاص بك ، بما في ذلك استخدام مشغلات الفيديو المضمنة أو برامج مشغل الوسائط الأخرى أو المكونات الإضافية للمتصفح. يمكنك أيضًا تشغيل مقطع فيديو باستخدام برنامج نصي بسيط من Python يمكنك تشغيله في سطر الأوامر.
يمكنك تشغيل ملفات الفيديو في Python باستخدام وحدة cv2. تقدم هذه الوحدة العديد من الوظائف التي تتيح لك عرض ملفات الفيديو بتنسيقات مختلفة. يتضمن ذلك تحميل الفيديو وعرضه على الشاشة والتحكم في تشغيله.
ما هي وحدة cv2 في بايثون؟
وحدة cv2 هي مكتبة Python مفتوحة المصدر يمكنك استخدامها لمعالجة الصور ومقاطع الفيديو. يمكّنك من قراءة ملفات الصور والفيديو ومعالجتها وعرضها بتنسيقات مختلفة.
تم تطوير وحدة cv2 فوق OpenCV (مكتبة رؤية الكمبيوتر مفتوحة المصدر) ، وهي أيضًا مفتوحة المصدر. يوفر أدوات مسبقة الصنع للمساعدة في اكتشاف الكائنات والتعرف على الوجوه.
إذا لم تكن معتادًا على Python ، فيمكنك تعلم المزيد من الحيل كتابة كود Python بشكل أفضل. يمكنك أيضا استكشاف أخرى مستودعات Python GitHub.
كيفية فتح نافذة مشغل فيديو جديدة باستخدام cv2
يمكنك فتح نافذة جديدة باستخدام برنامج Python النصي هذا. ستشغل النافذة الفيديو الذي اخترته.
يمكنك مشاهدة المثال باستخدام هذا جيثب ريبرو.
- في نص Python النصي الجديد المسمى videoPlayer.py ، قم باستيراد وحدة cv2 في الجزء العلوي من الملف:
يستورد السيرة الذاتية 2
- داخل وظيفة جديدة تسمى playVideo () ، استخدم وحدة cv2 لفتح نافذة فارغة جديدة:
defشغل الفيديو():
ملف cv2.Window ("نافذة فارغة"، cv2.WINDOW_NORMAL) - قم بتغيير حجم نافذتك إلى العرض والارتفاع اللذين تريدهما:
cv2.resizeWindow ("نافذة فارغة", 270, 480)
- استخدم وظيفة waitKey () للوحدة النمطية لانتظار أي إدخال للمستخدم إلى أجل غير مسمى. سيسمح لك هذا بالضغط على أزرار معينة مثل مفتاح Escape أثناء فتح النافذة:
cv2.waitKey (0)
- عندما يضغط المستخدم على مفتاح ، استخدم التدميرالويندوز () لإغلاق النافذة:
cv2.destroyAllWindows ()
- اتصل بوظيفة playVideo () في نهاية النص:
شغل الفيديو()
- في سطر الأوامر ، انتقل إلى المجلد حيث قمت بتخزين برنامج Python النصي. على سبيل المثال:
سطح المكتب cd
- استخدم الأمر python لتشغيل نص Python وعرض مشغل النوافذ:
بيثون videoPlayer.py
كيفية تشغيل ملف محلي مختار باستخدام نافذة مشغل الفيديو
استخدم مشغل النوافذ الفارغ لتشغيل مقطع فيديو مخزن على جهاز الكمبيوتر المحلي الخاص بك.
- قم بتعديل وظيفة playVideo (). في بداية الوظيفة ، اطلب من المستخدم إدخال مسار الملف إلى ملف فيديو:
ملف = إدخال ("أدخل المسار إلى ملف فيديو MP4:")
- قم بإنشاء كائن التقاط فيديو جديد من الملف المحدد. يمثل هذا الكائن الفيديو نفسه ، ويمكنك استخدامه للوصول إلى الإطارات التي يتكون منها الفيديو. بدء وفتح التقاط الفيديو:
cap = cv2.VideoCapture (ملف)
- بعد إنشاء النافذة وتغيير حجمها ، استخدم حلقة للتحقق مما إذا كان كائن التقاط الفيديو قد تمت تهيئته وفتحه:
ملف cv2.Window ("مشغل فديوهات"، cv2.WINDOW_NORMAL)
cv2.resizeWindow ("مشغل فديوهات", 270, 480)
بينما(cap.is مفتوح ()): - داخل حلقة while loop ، استخدم وظيفة read () لقراءة الإطار التالي من الفيديو. ترجع الدالة حالة نجاح الإطار الذي تمت قراءته وقيمة الإطار الفعلي:
النجاح ، الإطار = الحد الأقصى للقراءة ()
- إذا كانت قراءة الإطار ناجحة ، فاستخدم وظيفة imshow () لإظهار الإطار في النافذة:
لو نجاح:
cv2.imshow ('مشغل فديوهات'، إطار) - استبدل وظيفة waitKey (). إذا ضغط المستخدم على ملف ف على لوحة المفاتيح ، أو يضغط على X الزر أعلى يمين النافذة ، أغلق مشغل الفيديو:
quitButton = cv2.waitKey (25) & 0xFF == أمر ("ف")
closeButton = cv2.getWindowProperty ('مشغل فديوهات'، cv2.WND_PROP_VISIBLE) < 1لو quitButton أو زر الاغلاق:
استراحة - أضف عبارة else للتحقق مما إذا كان الإطار الذي تمت قراءته غير ناجح. إذا فشلت ، فاخرج من حلقة while لمنع حدوث أي أخطاء في وقت التشغيل:
آخر:
استراحة - بعد حلقة while ، أوقف الالتقاط والفيديو وأغلق النافذة:
cap.release ()
cv2.destroyAllWindows () - في سطر الأوامر ، انتقل إلى المجلد حيث قمت بتخزين برنامج Python النصي. على سبيل المثال:
سطح المكتب cd
- استخدم الأمر python لتشغيل نص Python النصي:
بيثون videoPlayer.py
- أدخل مسار ملف mp4 لبدء تشغيل الفيديو:
C: \ Users \ Sharl \ Desktop \ script \ DogWithDragons.mp4
تشغيل مقاطع الفيديو في بايثون
يعد تشغيل ملف فيديو واحدًا من العديد من الأشياء المفيدة والمثيرة للاهتمام التي يمكنك إنجازها باستخدام برنامج نصي بلغة Python. لمواصلة تحسين مهاراتك وتطوير قدراتك ، من المهم الاستمرار في التدرب على استخدام المشاريع الأخرى التي يمكنك إنشاؤها.