سؤال

أنا أكتب برنامجا، من شأنه أن يفعل بعض التحولات مع صورة من كاميرا ويب في الوقت الفعلي. كجميع كاميرات الويب الأخرى تقريبا، يقدم Noname Noname بيانات بتنسيق yuy2 (كما هو مكتوب في bmiheader.bicompression). حاولت تحويل مستقيم على جانب وحدة المعالجة المركزية وفقا ل http://www.fourcc.org/yuv.php#y2., ، لكنه بطيء وخطأ للغاية :).

عندما أقوم بتوصيل دبوس إخراج المصدر إلى العارض والصورة والبرامية جيدا.

لذلك أنا أبحث عن مرشح DirectShow، أو، ربما، بعض الترميز، الذي سيقوم بتحويل سريع من Yuy2 إلى RGB24 على بطاقة الفيديو وسيعطيني النتيجة دون تقديمها على الشاشة.

أنا استخدم:

  • 32 بت ويندوز إكس بي SP3.
  • VC ++ 2005.
  • تم تنزيل Windows SDK مؤخرا.
  • DirectX August'09.
هل كانت مفيدة؟

المحلول

ليس لدي الرمز المتاح في الوقت الحالي. ولكن إلقاء نظرة على استخدام GDI للقيام بالتحويل بسرعة كبيرة.

التقاط أساسا إطار المصدر، قم بإنشاء DIB DIB في التنسيق الصحيح (RGB24) واللازتفاع إلى الصورة النقطية. يحدث التحويل أثناء الازيقاز وفي تجربتي سريعة جدا.

يمكنني استخدام هذا لإلقاء الإطارات من كاميرا ويب ثم يمكنني إسقاط الإطارات إلى القرص الصلب عند معدل الإطار المطلوب إما JPEGS أو الصور النقطية.

العاصمة

نصائح أخرى

يمكنك استخدام مكتبة VirtualDub Kasumi http://virtualdub.sourceforge.net/

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top