Странный эффект наложения при попытке добавить портретные изображения в ландшафтный PixelBufferIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Гость
 Странный эффект наложения при попытке добавить портретные изображения в ландшафтный PixelBuffer

Сообщение Гость »


Я пытаюсь создать видео из массива изображений, хранящихся на диске. Эти изображения могут быть портретными или пейзажными. Приведенный ниже код ужасно неоптимизирован, и я далек от гуру AVFoundation, поэтому мне нужна помощь, почему это может не работать. Я получаю результат, показанный на изображении ниже: это похоже на наложение изображения на предыдущий кадр.


Изображение


Вот код, используемый для создания образца CVBuffer для добавления в pixelBufferAdaptor:

класс FrameCreator { func create (из изображения: URL, PixelBufferPool: CVPixelBufferPool, размер: CGSize) -> CVBuffer? { let context = CIContext(mtlDevice: MTLCreateSystemDefaultDevice()!) context.clearCaches() вар PixelBuffer: CVPixelBuffer? // можно удалить предварительное условие (CVPixelBufferPoolCreatePixelBuffer (ноль, PixelBufferPool, &pixelBuffer) == kCVReturnSuccess) let ciImage = CIImage(contentsOf: image, options: [CIImageOption.applyOrientationProperty: true])! пусть imageSize = ciImage.extent.size если imageSize.height < imageSize.width { пусть HorizontalRatio = size.width/imageSize.width пустьвертикальныйRatio = size.height/imageSize.height пусть аспектРатио = макс (горизонтальноеСоотношение, вертикальноеСоотношение) let newSize = CGSize (ширина: imageSize.width * аспектRatio, высота: imageSize.height * аспектRatio) пусть x = newSize.width
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как правильно создать экземпляр Pixelbuffer для VLCJ MediaPlayer
    Anonymous » » в форуме JAVA
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Как включить ландшафтный режим при использовании мобильного браузера (Unity webgl)?
    Anonymous » » в форуме Android
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Как включить ландшафтный режим при использовании мобильного браузера (Unity webgl)?
    Anonymous » » в форуме IOS
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Поворот клипа изображения вызывает странный пиксельный эффект
    Anonymous » » в форуме Python
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Ландшафтный режим Android
    Anonymous » » в форуме JAVA
    0 Ответы
    53 Просмотры
    Последнее сообщение Anonymous

Вернуться в «IOS»