Перейти к содержанию
Fire Monkey от А до Я
  • 0

[TCameraComponent] [XE7] Как поменять разрешение получаемой картинки через CameraComponent?


neo

Вопрос

Народ а как поменять разрешение получаемой картинки через CameraComponent?

по умолчанию получаю очень маленькую картинку... хотелось бы сделать её на весь экран =(

добавляю сюда CameraComponent1SampleBufferReady

  CameraComponent1.Quality := TVideoCaptureQuality.highQuality;
  image.Width := image.Bitmap.Width;
  image.Height := image.Bitmap.Height;

но ничего не меняется =(

походу это можно делать только в XE8 а у меня XE7

и использовать нужно CaptureSetting

Ссылка на комментарий

Рекомендуемые сообщения

  • 0

Замените у себя модуль FMX.Media.Android.pas (файлик прилагаю)

смотрите в нем новые свойства и процедуры

    property VideoWidth: Integer read FVideoWidth write FVideoWidth;
    property VideoHeight: Integer read FVideoHeight write FVideoHeight;
    property VideoBitCount: Integer read FVideoBitCount write FVideoBitCount;
    property VideoFPS: Integer read FVideoFPS write FVideoFPS; // auto

constructor TAndroidVideoCaptureDevice.Create(const AManager: TCaptureDeviceManager; const ADefault: Boolean);
procedure TAndroidVideoCaptureDevice.SetQuality(const Value: TVideoCaptureQuality);
procedure TAndroidVideoCaptureDevice.DoStartCapture;

допустим на форме fmMain есть компонент камеры ccMain_Camera, тогда

предварительно выключим камеру если она включена

fmMain.ccMain_Camera.Active := False;

затем меняем "качество"

fmMain.ccMain_Camera.Quality := TVideoCaptureQuality.MediumQuality;
{включит 640*480}

затем включаем камеру

fmMain.ccMain_Camera.Active := True;

типа так можно.

FMX.Media.Android.zip

 

З.Ы. и в OnSampleBufferReady надо обрабатывать уже полученное изображение, а не пытаться переключать камеру.

 

P.P.S. это под XE7

Изменено пользователем AlexG
Ссылка на комментарий
Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...