Я создаю пользовательские видео, снимающие видео с новым API Camera2. У моего предварительного просмотра камеры есть кнопка для перехода с задней к передней камере, а затем от камеры спереди на заднюю часть.
Активность «Предварительный просмотр камеры» запускается по умолчанию с обратной камерой.
По какой -то причине, когда я нажимаю на кнопку «Переключатель/камера Swap». Предварительный просмотр (на фронтальной камере) немного исчезает, например, если что -то происходит, но он остается на выбранной в настоящее время (передней) камере. < /p>
Вот мой код: < /p>
в recordvideofragment < /code>, в OnViewCreated < /code>: < /p>
// Switch camera button
switchCameraButton = (ImageButton) view.findViewById(R.id.button_switch_camera);
// Listener for Switch cameras button
switchCameraButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
switchCameras();
}
});
< /code>
и вот функция SwitchCameras () < /code>: < /p>
private void switchCameras() {
mCameraOpenCloseLock.release();
mCameraDevice.close();
CameraManager mCameraManager = (CameraManager) getActivity().getSystemService(Context.CAMERA_SERVICE);
try {
String mCameraId = mCameraManager.getCameraIdList()[0];
if (mCameraId.equals("0")) { // If currently on FRONT camera (0 = CameraCharacteristics.LENS_FACING_FRONT)
mCameraId = "1"; // switch to BACK camera (1 = CameraCharacteristics.LENS_FACING_BACK)
switchCameraButton.setImageResource(R.drawable.ic_camera_front);
} else { // If currently on BACK camera
mCameraId = "0"; // switch to front camera
switchCameraButton.setImageResource(R.drawable.ic_camera_back);
}
try {
if (ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.CAMERA)
== PackageManager.PERMISSION_GRANTED) {
mCameraManager.openCamera(mCameraId, mStateCallback, null);
} else {
requestVideoPermissions();
}
} catch (CameraAccessException e) {
e.printStackTrace();
}
} catch (CameraAccessException e) {
Toast.makeText(getActivity(), "Cannot access the camera.", Toast.LENGTH_SHORT).show();
getActivity().finish();
}
}
< /code>
Если у вас есть представление о том, что происходит, что спасет меня. Я делал это в течение нескольких дней. Большое спасибо
Подробнее здесь: https://stackoverflow.com/questions/390 ... nt-cameras
Android Camera2 API переключатель назад - передние камеры ⇐ Android
Форум для тех, кто программирует под Android
-
Anonymous
1741603650
Anonymous
Я создаю пользовательские видео, снимающие видео с новым API Camera2. У моего предварительного просмотра камеры есть кнопка для перехода с задней к передней камере, а затем от камеры спереди на заднюю часть.
Активность «Предварительный просмотр камеры» запускается по умолчанию с обратной камерой.
По какой -то причине, когда я нажимаю на кнопку «Переключатель/камера Swap». Предварительный просмотр (на фронтальной камере) немного исчезает, например, если что -то происходит, но он остается на выбранной в настоящее время (передней) камере. < /p>
Вот мой код: < /p>
в recordvideofragment < /code>, в OnViewCreated < /code>: < /p>
// Switch camera button
switchCameraButton = (ImageButton) view.findViewById(R.id.button_switch_camera);
// Listener for Switch cameras button
switchCameraButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
switchCameras();
}
});
< /code>
и вот функция SwitchCameras () < /code>: < /p>
private void switchCameras() {
mCameraOpenCloseLock.release();
mCameraDevice.close();
CameraManager mCameraManager = (CameraManager) getActivity().getSystemService(Context.CAMERA_SERVICE);
try {
String mCameraId = mCameraManager.getCameraIdList()[0];
if (mCameraId.equals("0")) { // If currently on FRONT camera (0 = CameraCharacteristics.LENS_FACING_FRONT)
mCameraId = "1"; // switch to BACK camera (1 = CameraCharacteristics.LENS_FACING_BACK)
switchCameraButton.setImageResource(R.drawable.ic_camera_front);
} else { // If currently on BACK camera
mCameraId = "0"; // switch to front camera
switchCameraButton.setImageResource(R.drawable.ic_camera_back);
}
try {
if (ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.CAMERA)
== PackageManager.PERMISSION_GRANTED) {
mCameraManager.openCamera(mCameraId, mStateCallback, null);
} else {
requestVideoPermissions();
}
} catch (CameraAccessException e) {
e.printStackTrace();
}
} catch (CameraAccessException e) {
Toast.makeText(getActivity(), "Cannot access the camera.", Toast.LENGTH_SHORT).show();
getActivity().finish();
}
}
< /code>
Если у вас есть представление о том, что происходит, что спасет меня. Я делал это в течение нескольких дней. Большое спасибо
Подробнее здесь: [url]https://stackoverflow.com/questions/39022845/android-camera2-api-switch-back-front-cameras[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия