@loly

Как программно изменить качество получаемого видео в android на среднее?

Согласно этой странице https://developer.android.com/guide/topics/media/c... я могу отправить "в камеру" некоторые инструкции, такие как:
MediaStore.EXTRA_OUTPUT - This setting requires a Uri specifying a path and file name where you'd like to save the video. This setting is optional but strongly recommended. If you do not specify this value, the Camera application saves the requested video in the default location with a default name, specified in the returned intent's Intent.getData() field.
MediaStore.EXTRA_VIDEO_QUALITY - This value can be 0 for lowest quality and smallest file size or 1 for highest quality and larger file size.
MediaStore.EXTRA_DURATION_LIMIT - Set this value to limit the length, in seconds, of the video being captured.
MediaStore.EXTRA_SIZE_LIMIT - Set this value to limit the file size, in bytes, of the video being captured.


Я попытался использовать 1 из параметров (MediaStore.EXTRA_VIDEO_QUALITY):
Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
        intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0);
        startActivityForResult(intent, REQUEST_VIDEO_CAPTURE);

и это ооочень странный параметр.
Во-первых, он не только меняет разрешение на минимальное, но и изменяет получаемое соотношение до 4:3.
Во-вторых, получаемое 15-и секундное изображение весит ~300-500 кб, когда как его совершенно аналогичный собрат без этого параметра - 30 МБ. Это явный перебор.

Мне не надо 30 МБ видео (т.к. его предстоит еще отправить по сети, скорее всего чаще через мобильное соединение), но и 0.3 МБ - явный перебор. Параметр 0.5 воспринимается камерой как 0 (да и не описана такая возможность.

PS Да, видео уже ограничено по времени - 15 секунд.
  • Вопрос задан
  • 188 просмотров
Пригласить эксперта
Ответы на вопрос 1
bozhan
@bozhan
IT Professional\Leader
Для записи видео с камеры используется MediaRecorder
По Вашей ссылке об этом рассказывается в разделе Capturing videos.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы