В вы видели в методе initRecorder серии очень специфичных настроек видеозаписи. Возникает вопрос: как узнать возможности устройства, на котором работает приложение? До Android. не существовало исчерпывающего ответа на этот вопрос. В стандартном приложении Camera, поставляемом в составе Android, использовался недокументированный класс SystemProperties. Таким образом, до версии Android. вы должны были выбирать значения, которые бы работали на целевых устройствах. Это было неудобно, особенно по мере появления все более качественных камер в новых устройствах. Чтобы скорректировать ситуацию, в Android. были введены два новых класса: CameraProfile и CamcoderProfile. Эти классы представляют собой просто контейнеры для атрибутов камеры, которые вас интересуют. Хотя CameraProfile имеет только одно значение (JPEG Encoding Quality Parameter), CamcoderProfile сообщает пропорции фрейма, его размеры (ширину и высоту), а также прочие параметры, связанные с аудио и видео. Более того, класс MediaRecorder может использовать CamcoderProfile для установки различных параметров видеозаписи, которые в нем содержатся. Вы просто должны аккуратно вызвать метод setProfile после установки аудио- и видеоисточников, а также перед установкой выходного файла.
С выходом версии Android. методы, работающие с камерой, теперь имеют альтернативные версии, принимающие идентификатор камеры. До Android. большинство устройств имело только одну камеру, обычно расположенную на задней панели устройства. В новых устройствах вдобавок к ней появилась дополнительная камера на лицевой стороне, и коду нужен способ указать, с какой именно камерой надо работать. Например, в классе Camera метод open вернет объект Camera для камеры на задней панели, http://www.tdsevcable.ru/vvgng-ls.html если таковая присутствует. Но есть и метод open(int cameraid), который вернет указанную камеру, позволяя приложению использовать и камеру на передней панели, если она имеется. Для определения количества доступных камер на устройстве, и что они собой представляют, предусмотрен метод Camera.getNumberOfCameras , который вернет количество камер, а Camera.getCameraInfo — информацию об определенной камере, включая ее направление.
Опубликовал Kest
February 14 2015 13:36:54 ·
0 Комментариев ·
3809 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.