سؤال

انا لدي AVMutableComposition مع مسار الفيديو وأرغب في إضافة صورة ثابتة إلى مسار الفيديو ، ليتم عرضه لبعض الوقت المحدد. الصورة الثابتة هي ببساطة PNG. يمكنني تحميل الصورة كأصل ، ولكن هذا يتعلق بها ، لأن الأصل الناتج لا يحتوي على أي مسارات وبالتالي لا يمكن إدخاله ببساطة باستخدام insertTimeRange… طُرق.

هل هناك طريقة لإضافة صور ثابتة إلى تكوين؟ يبدو أن الإجابة موجودة في مكان ما في الرسوم المتحركة الأساسية ، ولكن يبدو أن الأمر برمته فوق رأسي قليلاً وسأقدر عينة رمز أو بعض مؤشرات المعلومات.

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

المحلول

نعم. يوجد فيديو رائع يسمى تحرير الوسائط مع مؤسسة AV من WWDC هذا ما يفسر الكثير. لا يمكنك إدراج الصور مباشرة إلى AVComposition الجدول الزمني ، على الأقل لم أجد أي طريقة للقيام بذلك. ولكن عند تصدير أو لعب أحد الأصول ، يمكنك الرجوع إلى AVVideoComposition. ربما لا يكون هذا اسمًا مثاليًا للصف ، لأنه يتيح لك الاختلاط بين مسارات الفيديو المختلفة في الأصل ، مثله كثيرًا AVAudioMix لا للصوت. و ال AVVideoComposition لديه animationTool الخاصية التي تتيح لك رمي طبقات الرسوم المتحركة الأساسية (CALayer) في المزيج. CALayer لديه contents الخاصية التي يمكن تعيينها CGImageRef. لا يساعد في حالتي ، قد يساعد شخص آخر.

نصائح أخرى

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

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