У меня есть вопрос. < /p>
Android kitkat (4.x.x.x), предварительный, должен захотеть захотеть? И он не использует держатель поверхности. < /P>
Но мой предварительный процесс в Kitkat, PreviewCallback не попадает в Callbackevent. < /P>
Я обнаружил некоторый ответ в стек -плате, но я не могу решить эту проблему. Вызов < /p>
previewCallback и PreviewCallback с буфером не называются < /p>
Android Camera Camera. /> Вот мой код < /p>
@Override
public void startPreview(String cameraId, int width, int height, int fps) {
this.CameraId = cameraId;
this.Width = width;
this.Height = height;
this.Fps = fps * 1000;
this.CameraId = Integer.parseInt(cameraId);
prepareCamera();
if (this.RenderMethod == MyProject.RENDER_METHOD_NATIVE_SURFACE_TEXTURE) {
MySurfaceRenderer.setSize(this.width, this.height);
}
startBackgroundThread();
openCamera();
}
< /code>
И это мой метод обратного вызова: < /p>
private Camera.PreviewCallback myCallBack = new Camera.PreviewCallback() {
@Override
public void onPreviewFrame(byte[] data, Camera camera) {
Log.i(TAG, "onPreviewFrame data=" + data);
JNIs.setFrameData(data);
camera.addCallbackBuffer(this.PreviewData);
}
};
< /code>
И это мой метод Opencamera: < /p>
private void openCamera() {
if (this.Camera == null) {
this.Camera = Camera.open(this.CameraId);
}
SurfaceTexture tex = MySurfaceRenderer.getSurfaceTexture();
if (tex != null) {
try {
this.Camera.setPreviewTexture(tex);
} catch (Exception e) {
e.printStackTrace();
}
}
this.Data = new byte[this.width * this.height * 12 / 8];
this.Params = this.Camera.getParameters();
this.Params.setPreviewSize(this.width, this.height);
// focus
set_Focus(this.Params);
// exposure
set_Exposure(this.Params);
this.Camera.setParameters(this.Params);
this.Camera.setPreviewCallbackWithBuffer(myCallBack);
this.Camera.startPreview();
this.Camera.addCallbackBuffer(this.PreviewData);
}
Подробнее здесь: https://stackoverflow.com/questions/451 ... faceholder
Android Kitkat (4.x.x) PreviewCallback должен захотеть захотеть владельца Surface? ⇐ Android
Форум для тех, кто программирует под Android
1755419827
Anonymous
У меня есть вопрос. < /p>
Android kitkat (4.x.x.x), предварительный, должен захотеть захотеть? И он не использует держатель поверхности. < /P>
Но мой предварительный процесс в Kitkat, PreviewCallback не попадает в Callbackevent. < /P>
Я обнаружил некоторый ответ в стек -плате, но я не могу решить эту проблему. Вызов < /p>
previewCallback и PreviewCallback с буфером не называются < /p>
Android Camera Camera. /> Вот мой код < /p>
@Override
public void startPreview(String cameraId, int width, int height, int fps) {
this.CameraId = cameraId;
this.Width = width;
this.Height = height;
this.Fps = fps * 1000;
this.CameraId = Integer.parseInt(cameraId);
prepareCamera();
if (this.RenderMethod == MyProject.RENDER_METHOD_NATIVE_SURFACE_TEXTURE) {
MySurfaceRenderer.setSize(this.width, this.height);
}
startBackgroundThread();
openCamera();
}
< /code>
И это мой метод обратного вызова: < /p>
private Camera.PreviewCallback myCallBack = new Camera.PreviewCallback() {
@Override
public void onPreviewFrame(byte[] data, Camera camera) {
Log.i(TAG, "onPreviewFrame data=" + data);
JNIs.setFrameData(data);
camera.addCallbackBuffer(this.PreviewData);
}
};
< /code>
И это мой метод Opencamera: < /p>
private void openCamera() {
if (this.Camera == null) {
this.Camera = Camera.open(this.CameraId);
}
SurfaceTexture tex = MySurfaceRenderer.getSurfaceTexture();
if (tex != null) {
try {
this.Camera.setPreviewTexture(tex);
} catch (Exception e) {
e.printStackTrace();
}
}
this.Data = new byte[this.width * this.height * 12 / 8];
this.Params = this.Camera.getParameters();
this.Params.setPreviewSize(this.width, this.height);
// focus
set_Focus(this.Params);
// exposure
set_Exposure(this.Params);
this.Camera.setParameters(this.Params);
this.Camera.setPreviewCallbackWithBuffer(myCallBack);
this.Camera.startPreview();
this.Camera.addCallbackBuffer(this.PreviewData);
}
Подробнее здесь: [url]https://stackoverflow.com/questions/45140752/android-kitkat4-x-xs-previewcallback-must-want-surfaceholder[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия