Я объединяю два видео бок о бок в последовательном режиме с помощью AVMutableComposition, проигрываю два видео один за другим, я могу сделать это успешно. Моя проблема в том, что при воспроизведении первого видео на втором видеоэкране будет отображаться пустой экран, пока не будет завершено первое видео. Может ли кто-нибудь дать мне решение, чтобы показать миниатюру второго видео при воспроизведении первого?
Объединить видео бок о бок в последовательном режиме
Ответы (2)
Вы пробовали использовать https://developer.apple.com/library/mac/documentation/AVFoundation/Reference/AVAssetImageGenerator_Class/Reference/Reference.html и просто простой UIImageView, содержащий эскиз?
person
Tim Specht
schedule
29.11.2013
Это сделать миниатюру изображения из видео. Моя задача - показать миниатюру при объединении двух видео бок о бок в режиме последовательности, и я хочу показать миниатюру на втором видео при воспроизведении первого видео.
- person Raees Valapuram Madathil; 29.11.2013
да, так в чем проблема с генерацией эскиза с начала второго видео и помещением его на место, где должно воспроизводиться второе видео, до завершения первого видео, а затем с удалением наложенного эскиза?
- person Tim Specht; 29.11.2013
Я не могу вставить миниатюру в видео для определенного временного диапазона. Когда я помещаю миниатюру в пространство, где второе видео должно воспроизводиться как наложение, оно скрывает второе видео. Пожалуйста, помогите мне вставить миниатюру для определенного временного диапазона.
- person Raees Valapuram Madathil; 02.12.2013
вау, действительно кажется, что на просмотр документации у вас ушла ровно 1 секунда. Вы создаете эскиз, накладываете его на второе видео. Как только AVPlayer, который воспроизводит первое видео, уведомит вас о завершении, вы устанавливаете mySecondOverlayImageView.hidden = YES; и скажите второму AVPlayer начать воспроизведение. Это все, что вам нужно сделать!
- person Tim Specht; 02.12.2013
Мы можем отобразить миниатюру на видео, используя следующий код.
CALayer *firstThumbnailOverlay=[CALayer layer];
CABasicAnimation *firstfadeAnimation;
firstfadeAnimation=[CABasicAnimation animationWithKeyPath:@"opacity"];
firstfadeAnimation.fromValue = [NSNumber numberWithFloat:1.0];
firstfadeAnimation.toValue = [NSNumber numberWithFloat:0.0];
firstfadeAnimation.additive = NO;
firstfadeAnimation.removedOnCompletion = NO;
firstfadeAnimation.beginTime = CMTimeGetSeconds(firstAsset.duration);
firstfadeAnimation.duration = 0.0;
firstfadeAnimation.fillMode = kCAFillModeBoth;
[firstThumbnailOverlay addAnimation:firstfadeAnimation forKey:Nil];
[parentLayer addSublayer:firstThumbnailOverlay];
person
Raees Valapuram Madathil
schedule
06.12.2013