Exoplayer: размер видео не изменяется по размеру, если исходная ориентация — книжная.Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Exoplayer: размер видео не изменяется по размеру, если исходная ориентация — книжная.

Сообщение Anonymous »

Я столкнулся с проблемой, из-за которой представление проигрывателя Exoplayer изначально не помещается в содержащий его кадр и не поддерживает соотношение сторон видео в портретной ориентации. Размер представления изменяется правильно только при повороте устройства в альбомную, а затем обратно в книжную ориентацию.
Обратите внимание: это приложение React Native, и ориентация остальной части приложения такая же. заблокировано на портрете. В этом случае только игрок может свободно перемещаться между различными ориентациями.
Что я пробовал до сих пор:
  • настроить приложение resize_mode так, чтобы оно помещалось в представлении проигрывателя (как программно, так и через XML-макет)
  • убрано принудительное соотношение сторон в представлениях проигрывателя - ранее , мы жестко запрограммировали соотношение 16:9
  • установили для параметра videoScalingMode на экземпляре exoplayer значение VIDEO_SCALING_MODE_SCALE_TO_FIT
    < li>как я уже упоминал выше, ориентация по умолчанию для остальной части приложения — книжная. В манифесте приложения я удалил параметр android:ScreenOrientation="portrait" для MainActivity.
Я немного потеря прямо сейчас. Насколько я понимаю, установка resize_mode по умолчанию должна работать при создании представления проигрывателя. Есть ли что-то с тем, как создается макет? Любая помощь приветствуется.
Для справки, вот части кода проигрывателя:
video.xml - планировка Основное действие – манифест Android (частичный)

Код: Выделить всё











............
Вот несколько скриншотов того, что я вижу, и того, что задумано:
Исходный портрет проблема — режим изменения размера не соблюдается:
Изображение

Ожидаемый размер изображения игрока:
Изображение


Дополнительные примечания:
  • При создании снимка экрана проигрывателя представление переориентируется и размещается правильно (обратите внимание: это не повторная отрисовка компонента реагирования, по какой-то причине обновляется только собственный слой проигрывателя). Кажется, что любое изменение конфигурации приводит к перерисовке представления игрока - поэтому фоновый + передний план, изменение ориентации и т. д. впоследствии правильно ориентирует игрока в портретной ориентации.
  • Код: Выделить всё

    compileSdkVersion
    : 33
  • Код: Выделить всё

    targetSdkVersion
    : 33
  • версия exoplayer: 2.13.1


Подробнее здесь: https://stackoverflow.com/questions/765 ... s-portrait
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»