Измените разрешение камеры, если у меня есть ширина и высота в iOS

Мне нужно изменить разрешение живого видео в соответствии с шириной и высотой, введенных пользователем. Извините за мой вопрос, но я никогда не делал это раньше.

Пожалуйста помоги.

2 ответа

Вы можете изменить разрешение видео с помощью AVMutableVideoComposition а также AVAssetExportSession,

Сначала создайте объект AVMutableVideoComposition показано ниже.

AVMutableVideoComposition* videoComposition = [AVMutableVideoComposition videoComposition];
videoComposition.frameDuration = CMTimeMake(1, 30);
videoComposition.renderSize = CGSizeMake(YOUR_WIDTH, YOUR_HEIGHT);

Затем создайте объект AVAssetExportSession,

exporter = [[AVAssetExportSession alloc] initWithAsset:asset presetName:AVAssetExportPresetHighestQuality];
exporter.videoComposition = videoComposition;

И напишите завершение блока для экспортера.

Надеюсь это поможет.

Если вы используете OpenTok, вы можете использовать пользовательский видеозахват, который в основном идентичен тому, который найден в этом примере. Единственное отличие состоит в том, что вам нужно будет дополнительно написать код для масштабирования изображения из CVPixelBuffer (называется imageBuffer) к размеру, который устанавливает ваш пользователь.

Один из способов масштабирования изображения - использование API-интерфейсов CoreImage, как показано здесь: /questions/31574234/ios-masshtabirovat-i-obrezat-cmsamplebufferrefcvimagebufferref/31574239#31574239

Другие вопросы по тегам