2016-12-01 5 views
12

Я успешно объединять видео-1 и видео-2 друг с другом с прозрачным видеоизображением с использованием Рамка AVFoundation, но после слияния ниже видео (видео-1) не отображается только видео-2 видно, но когда я использую ниже кодКак слить два видео с прозрачностью

AVMutableVideoCompositionLayerInstruction *SecondlayerInstruction =[AVMutableVideoCompositionLayerInstruction videoCompositionLayerInstructionWithAssetTrack:secondTrack]; 
[SecondlayerInstruction setOpacity:0.6 atTime:kCMTimeZero]; 

его непрозрачность на видео-2 layer.But здесь актуальная проблема в том, есть некоторое содержание через видео 2-слой, который не является прозрачным и здесь после применения непрозрачность над слоем видео-2 также применима к этому контенту, который не является прозрачным.
Я добавляю два изображений здесь, которые описывают как сценарий после того, как Непрозрачность с использованием AVMutableVideoCompositionLayerInstruction

enter image description here enter image description here

  • как в изображении после слияния прозрачной области черный цвета, и когда я установил непрозрачность над вторым слоем целом видео -2 становится прозрачным, но контент также становится прозрачным.
  • , но мой вопрос заключается в том, что как играть прозрачное видео по другому видео после слияния. Я уже проверил видео-2, прозрачно, как и правильная игра на платформе Android.

Отредактировано-1: Я также пытаюсь установить фоновый цвет на myVideoCompositionInstruction, который тоже не помогло. принимая ссылку из этого старого вопроса link

Отредактировано-2: В AVVideoComposition.h, я нашел

Указывает цвет фона композиции. Поддерживаются только твердые цвета BGRA ; шаблоны и другие исправления цвета, которые не поддерживаются , будут проигнорированы. Если цвет фона не указан , видеокомпонент будет использовать по умолчанию backgroundColor of opaque black. Если обработанный буфер пикселей не имеет альфа, значение alpha значения backgroundColor будет проигнорировано.

Что это значит, я не получил его. Можно ли помочь?

+0

У вас есть решение этой проблемы? Я столкнулся с той же проблемой. Я хочу объединить два видео с прозрачностью второго. Но это не работает. –

ответ

1

Вместо непрозрачности вы можете установить альфа видео.

Пояснение: Alpha устанавливает значение непрозрачности для элемента и всех его потомков, В то время как opacity устанавливает значение непрозрачности только для одного компонента.

enter link description here

+0

или альфа вида –

+0

@ ШравияBoggarapu Не достал вас. –

 Смежные вопросы

  • Нет связанных вопросов^_^