سؤال

كنت أحاول أن أتعلم قليلاً عن H264 من خلال النظر إلى bitstream لملف الفيديو مع محرر سداسي. وجدت هنا رموز البدء لطائرات كائن الفيديو (0x000001B6) وللأرز I (0x000001B600).

لكن لا يمكنني العثور على العديد من تلك البايتات في ملفات الفيديو. في معظم الأوقات ، تظهر رموز البدء هذه في بداية ملف مع عدد قليل من اللقطات بينهما. كنت أتوقع منهم أن يظهروا بانتظام ، على قدم المساواة في جميع أنحاء الملف!؟

هل هو موافق على النظر إلى ملف مع محرر سداسي بهذه الطريقة؟ ما هي رموز البدء الأخرى الموجودة وكيف يتم تنظيم ملف H264؟

هل كانت مفيدة؟

المحلول

ال 0x000001b6 ينطبق رمز البدء على فيديو MPEG-4 الجزء 2 وهو ملف تعريف بسيط. هذا يتوافق مع برامج الترميز مثل XVID و Divx. H.264 هو MPEG-4 الجزء 10 وهو ملف تعريف ترميز الفيديو المتقدم. يستخدم H.264 رموز بدء مختلفة.

أنا لست على دراية بجزء 10 كما أنا مع الجزء 2 ، ولكن نظرة قصيرة من خلال المعيار (ISO 14496-10) يوضح أن Bitstream تم تقسيمها إلى أقسام تسمى وحدات NAL. هذه الوحدات لديها رمز 24 بت 0x000001 قبلهم للمزامنة كما هو الحال في القسم ب .1.1. البايت التالي يتكون من الحقول forbidden_zero_bit, nal_ref_idc, ، و nal_unit_type حسب القسم 7.3.1.

لست متأكدًا مما إذا كانت وحدات NAL مفصولة على حدود الإطار أم لا. قد تضطر فقط إلى الحصول على المعيار الذي يضع جميع بناء جملة Bitstream.

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