Перейти к содержанию
Fire Monkey от А до Я
  • 0

Узнать отображаемый размер видео на контроле Mediaplayer


Yarpda

Вопрос

Вопрос такой: Есть видео, которое проигрывается, оно может быть разных размеров (3:4, 16:9  и т.д.). Контрол на котором воспроизводится видео изначально фиксированного размера. От этого получается в  одних видео обрезки по краям, что не очень красиво. Хотелось бы сделать так чтобы контрол сам менял свои размеры (по вертикали) в зависимости от того какого формата кадра видео воспроизводится.Для этого нужно знать какую реальную область на контроле занимает сам "квадрат" видео. . Есть идеи как это можно сделать?

Delphi 10.1

Изменено пользователем Yarpda
Ссылка на комментарий

Рекомендуемые сообщения

  • 0

В копилку знаний. Напишу как решил задачу. Может кому-то будет интересно.

Таких как мне надо параметров у  MediaPlayer'a конечно нет. Но есть свойство VideoSize.X и Y там можно посмотреть реальный размер воспроизводимого видео в пикселях. 

Берем эти значения, делим высоту на ширину и выясняем астект (соотношение сторон). После чего берем ширину контейнера в котором отображает видео на форме и умножаем на этот аспект. Получаем нужную высоту контейнера. В итоге если у вас контейнер видео с привязкой Top, Bottom то его размер всегда будет пропорционально равным размеру проигрываемого видео-файла, что избавит от ненужный черных рамок.

 

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...