> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/arabic/alblwkat-alwzyfyh/blocks-reference/input-output/outputs-exports/record-video.md).

# Record Video

هذه دالة بلوك تحفظ إطارات الصورة الواردة في ملف فيديو. يمكنك بدء وإيقاف التسجيل باستخدام مشغل منطقي (Boolean) أو استخدام مفتاح المسافة المدمج. تتوفر عدة أوضاع جودة، بما في ذلك خيار ضغط عالي يستخدم ffmpeg إذا كان مثبتًا.

## 📥 المدخلات <a href="#inputs" id="inputs"></a>

`Frame` الإطارات (الفريمات) الواردة التي سيتم تسجيلها.

`Record` مفتاح منطقي لبدء/إيقاف التسجيل (يُستخدم حسب وضع التشغيل المختار).

`Folder Path` المجلد الذي سيتم حفظ ملفات الفيديو فيه.

`File Name (no extension)` اسم ملف اختياري كأساس؛ إذا تُرك فارغًا، سيُستخدم طابع زمني.

## 📤 المخرجات <a href="#outputs" id="outputs"></a>

هذا البلوك لا يوفر مخرجات.

## 🕹️ عناصر التحكم <a href="#controls" id="controls"></a>

`Video Quality` اختَر من أوضاع الجودة:

* `Compressed` ملفات أصغر، أداء سريع.
* `High Quality` ضغط أقل وجودة بصرية أفضل.
* `High-Compress(requires ffmpeg)` أفضل ضغط ولكن يتطلب توفر ffmpeg على النظام.

`Trigger Mode` اختر كيف يبدأ/يتوقف التسجيل:

* `Spacebar` اضغط مفتاح المسافة لتشغيل/إيقاف (يتطلب توافر التقاط لوحة المفاتيح على نظام التشغيل).
* `Continuous` قدّم TRUE لبدء و FALSE للإيقاف.
* `Once` إشارة TRUE متصاعدة تبدأ التسجيل، وإشارة TRUE لاحقة توقف وتحفظ.

`Recording` مؤشر بصري (LED) يوضح ما إذا كان التسجيل مفعلًا.

## 🎯 الميزات الرئيسية <a href="#features" id="features"></a>

* بدء/إيقاف التسجيل باستخدام ثلاثة أوضاع تريجر (Spacebar، Continuous، Once).
* أوضاع جودة متعددة بما فيها خيار ضغط عالي مبني على ffmpeg.
* يختار تلقائيًا برامج الترميز (codecs) وحاويات الفيديو المتاحة للتماشي مع الأنظمة المختلفة.
* يمنع فتح ملف الفيديو أثناء التسجيل لتفادي تعارضات الملف.
* تحويل خلفي (background conversion) لوضع High-Compress بحيث لا يعيق الضغط التقاط الإطارات في الزمن الحقيقي (يتطلب ffmpeg).

## 📝 كيفية الاستخدام <a href="#usage" id="usage"></a>

1. وصل مصدر الإطارات إلى `Frame` (مثلاً من `Camera USB`، `Camera IP (ONVIF)`، أو `Stream Reader`).
2. حدّد `Folder Path` لحفظ ملفات الفيديو.
3. اختياريًا ضع `File Name (no extension)` أو اتركه فارغًا لاستخدام طابع زمني.
4. اختر `Video Quality` المرغوب. إذا أردت أصغر ملفات مع أعلى ضغط، اختر `High-Compress(requires ffmpeg)` وتأكد من تثبيت ffmpeg.
5. اختر `Trigger Mode`:
   * للتحكم السريع من لوحة المفاتيح استخدم `Spacebar` (يعمل إن سمح نظام التشغيل).
   * للتحكم برمجيًا استخدم `Continuous` أو `Once` وأرسل قيم منطقية إلى `Record`.
6. ابدأ التسجيل وفق وضع التشغيل المختار. سيضيء مؤشر `Recording` أثناء الالتقاط.
7. أوقف التسجيل وانتظر البلوك لينهي حفظ الملف. إذا اخترت وضع High-Compress وسيكون ffmpeg متاحًا، قد يعمل الضغط النهائي في الخلفية.

## 📊 السلوك أثناء التشغيل <a href="#evaluation" id="evaluation"></a>

* أثناء التسجيل النشط، تُضاف الإطارات الواردة إلى ملف الفيديو المفتوح.
* عند الإيقاف يُغلَق الملف. إذا تم اختيار وضع الضغط العالي ووجد ffmpeg، قد يُشغّل تحويل خلفي لتجهيز ملف مضغوط أصغر.
* إن لم يكن تريجر Spacebar متاحًا (شائع في بعض توزيعات Linux بدون صلاحيات مرتفعة)، سيظهر تحذير ويمكنك استخدام أوضاع `Continuous` أو `Once`.

## 💡 نصائح وحيل <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* لتسجيل من كاميرا محلية، وصل `Camera USB` أو `Camera USB External` إلى `Frame`.
* للكاميرات الشبكية، استخدم `Camera IP (ONVIF)` أو `Stream Reader` كمصدر للحصول على جلب إطارات سلس في الخلفية.
* معاينة الإطارات مباشرة بإرسال نفس المصدر إلى بلوك `Show Image` إلى جانب هذا البلوك.
* احفظ إطارات فردية للتفحص بالتوازي باستخدام `Image Logger` أو `Image Write` أثناء تسجيل الفيديو.
* شغّل التسجيل تلقائيًا عند ظهور حدث مهم بربط بلوكات الكشف مثل `Object Detection` أو `Mask Detection` إلى مسار منطقي يغذي `Record`.
* استخدم `Keyboard/Barcode Reader` إذا احتجت مشغلات لوحة مفاتيح أو مدخلات خارجية معقدة توجه إلى `Record`.
* إذا كنت تريد حجم تخزين أصغر مع جودة مقبولة، اختر `High-Compress(requires ffmpeg)` وتأكد من وضع ffmpeg على الـ system PATH.

## 🛠️ استكشاف الأخطاء وإصلاحها <a href="#troubleshooting" id="troubleshooting"></a>

* تريجر Spacebar لا يعمل على Linux: شغّل Studio بصلاحيات مرتفعة أو استخدم أوضاع `Continuous`/`Once`.
* الضغط غير متاح: تأكد من تثبيت ffmpeg والوصول إليه عبر system PATH لتمكين وضع High-Compress. إذا كان ffmpeg مفقودًا، سيتراجع البلوك إلى وضع عدم ffmpeg وسيعرض تحذيرًا.
* الملف قيد الاستخدام أثناء التسجيل: لا يمكن فتح ملف الفيديو بواسطة تطبيقات أخرى أثناء التسجيل. انتظر حتى ينتهي التسجيل.
* لم يتم حفظ إطارات: تحقق أن المصدر الموصول إلى `Frame` يزود بصور صالحة (المعاينة عبر `Show Image` مفيدة).
