13.1.8. أدوات التسجيل والفيديو

13.1.8.1. تسجيل المعاينة

يلتقط زرّ Record في شريط عنوان جزء مخزن الإطارات المعاينة إلى فيديو. أثناء التسجيل، تتتبع قراءة أسفل الصورة الزمن المنقضي، وحجم الملف حتى الآن، ومعدل إطارات التسجيل؛ ويُنهي Stop الالتقاط ويفتح مربع حوار الحفظ. يتبع التنسيق امتداد الملف الذي تكتبه في مربع حوار الحفظ -- .mp4 هو الخيار المعتاد، وكل تنسيق يدعمه مرمّز FFmpeg المضمّن يعمل، وينتج تنسيق OpenMV ImageReader بصيغة .bin تسجيلًا يمكن لبرامج الكاميرا النصية تشغيله. وعند الحفظ يعرض الـ IDE إعادة تحجيم الفيديو، وفي حالة الإخراج بصيغة .bin الاحتفاظ بكل إطار رقم N فقط.

ما يُسجَّل هو المعاينة: يأخذ المسجّل عيّنة من الإطار المعروض بمعدل ثابت 30 FPS، مكررًا الإطارات عندما يكون التيار أبطأ ومُسقطًا إياها عندما يكون أسرع، بما في ذلك جميع التعليقات التوضيحية. وللحصول على تسجيل نظيف بالمعدل الحقيقي للكاميرا، سجّل على الكاميرا نفسها باستخدام image.ImageIO أو mjpeg بدلًا من ذلك -- فمسجّل الـ IDE مخصّص للعروض التوضيحية والتوثيق، لا لجمع البيانات.

13.1.8.2. أدوات الفيديو

تغلّف Tools → Video Tools برنامج FFmpeg المضمّن لمهام معالجة الملفات المحيطة بعمل الكاميرا:

  • Convert Video File -- إعادة الترميز بين التنسيقات. وكلا الاتجاهين مهم هنا: يحوّل ملفات OpenMV ImageWriter / ImageReader بصيغة .bin التي تسجّلها برامج الكاميرا النصية إلى ملفات MP4 عادية، ويحوّل مقاطع الفيديو العادية إلى ملفات .bin يمكن لبرنامج كاميرا نصي إعادة تشغيلها عبر image.ImageIO -- وهذه هي طريقة اختبار خوارزمية رؤية مقابل لقطات مسجّلة بدلًا من مشهد حيّ. يوفّر كل تحويل إعادة تحجيم (إضافةً إلى تخطي الإطارات عند التحويل إلى .bin)، ويمكنك تحديد عدة ملفات مصدر لتحويلها دفعةً واحدة إلى مجلد من اختيارك. تمرّ أسماء الملفات مباشرةً إلى FFmpeg، لذا تعمل أنماط التسلسل على نمط printf الخاصة به: سمِّ الإخراج %07d.jpg فينقسم الفيديو إلى صور ثابتة مرقّمة؛ وسمِّ الإدخال بالطريقة نفسها فتنضم الصور الثابتة المرقّمة إلى فيديو.

  • Play Video File -- تشغيل أي ملف فيديو، بما في ذلك تسجيلات .bin الخاصة بالكاميرا، دون مغادرة الـ IDE. انسخ التسجيلات من قرص الكاميرا أولًا -- فقراءة الملفات الكبيرة عبر وصلة USB للكاميرا بطيئة.

  • Play RTSP Stream -- فتح تيار فيديو شبكي وعرضه. تبث كاميرا على الشبكة نفسها تشغّل مكتبة rtsp فيديو حيًّا بهذه الطريقة -- وهو الجانب العارض من دعم الفيديو الشبكي للكاميرا.