سؤال

أقوم بتحرير MP4 على نظام Android باستخدام MediaExtractor لجلب مسارات الصوت والفيديو ثم إنشاء ملف جديد باستخدام MediaMuster.أنه يعمل بشكل جيد.يمكنني أن ألعب MP4 الجديد على الهاتف (واللاعبين الآخرين) ولكن لا أستطيع دفق الملف على الويب.عندما أوقف MediaMuxer، فإنه ينشئ رسالة السجل

"ملف MP4 لن يكون ثابتا."

نظرت إلى التعليمات البرمجية الأصلية الأساسية (MPEG4WRiter.cpp) وستظهر أن الكاتب يواجه مشكلة في حساب حجم مربع Moov المطلوب.يحاول تخمين استخدام بعض الإغراء إذا لم يتم توفير معدل البت كمعلمة للكاتب.المشكلة هي أن mediaMustomer لا يزود القدرة على تعيين معلمات MPEG4Writer.هل أنا أفتقد شيئا أو أنا عالق تبدو وسيلة أخرى لتوليد الملف (أو رأس)؟شكرا

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

المحلول

في mpeg4writer.cpp:

giveacodicetagpre.

هذا افتراض سيئ على كيفية استخدام MediaMustomer.نحن نسجل بحد أقصى 15 ثانية من الفيديو RIT أعلى و Min_MOov_Box_Size هو وسيلة صغيرة جدا.إذن لجعل الملف ثابتا، يجب أن أعد كتابة الملف لنقل رأس Moov قبل MDAT وتصحيح بعض الإزاحات.هنا هو رمز بلدي.انها ليست كبيرة.لا يتم التعامل مع مسارات الخطأ بشكل صحيح وتقدم افتراضات حول ترتيب المربعات.

giveacodicetagpre.

نصائح أخرى

MediaMustomer حاليا لا يقوم بإنشاء ملفات MP4 القابلة للتدفق

يمكنك تجربة Intel Inde على https://software.intel.com/ar-US / Intel-Inde و Media Pack for Android وهو جزء من Inde، دروس تعليمية على https://software.intel.com/en-us/articles/intel-inde-media-pack-for-android-Tutorials .لديها عينة توضح كيفية استخدام حزمة الوسائط لإنشاء وتدفق الملفات عبر الشبكة

على سبيل المثال بالنسبة لتدفق الكاميرا، لديها عينة الكاميرات القياسية .java

giveacodicetagpre.

بالإضافة إلى ذلك، توجد عينات ساخية لتدفق الملفات أو معالجة عملية اللعبة والتدفق

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