Это должно быть что-то простое, но я не могу понять это. Как получить размеры видео для файла, загруженного в QVideoWidget/QMediaPlayer. Итак, мой код выглядит следующим образом:QT: получить размеры видео в QVideoWidget
QMediaPlayer m_MediaPLayer(0, QMediaPlayer::VideoSurface);
m_VideoWidget = new QVideoWidget;
m_MediaPLayer.setVideoOutput(m_VideoWidget);
m_MediaPLayer.setMedia(QUrl::fromLocalFile("file.avi"));
m_MediaPLayer.play();
// I am here checking for media status changed event
connect(&m_MediaPLayer, SIGNAL(mediaStatusChanged(QMediaPlayer::MediaStatus)),
this, SLOT(mediaStatusChanged(QMediaPlayer::MediaStatus)));
void MyClass::mediaStatusChanged(QMediaPlayer::MediaStatus status)
{
// Here I get notification for media status change but no idea how to
// get the video size. I could not figure out a way.
}
Вторая версия не работает для меня, но если я использую первый вариант в обработчик событий для состояния QMediaPlayer :: BufferedMedia, он возвращает правильный размер. Я сделаю для меня этот вихрь и благодарю за очень подробный ответ. – Luca
Хорошо, я рад это слышать! Только один вопрос, какую ОС вы используете? – agold
Я нахожусь в Linux Mint 17, который является вилкой ubuntu 14.04, я думаю. Мне действительно нужно запустить его на процессоре на базе ARM, поэтому мы увидим, как это происходит позже в тот же день, но также работает Ubuntu 14.04 (Tegra Jetson Tk1, NVIDIA). – Luca