Qt 4 включает в себя набор мультимедийных API, называемых Phonon, которые позволяют вам делать это. В настоящее время они внедряются для Symbian - пока предварительный релиз Qt для S60 "Tower"
не включает поддержку Phonon в Symbian, Qt 4.6 подойдет.
Между тем, единственный вариант - использовать API-интерфейсы Symbian MMF напрямую. В частности, ваш видео-виджет - или принадлежащий ему объект - должен будет создать экземпляр CVideoPlayerUtility
и, следовательно, должен реализовать MVideoPlayerUtilityObserver
. API проигрывателя видео требует, чтобы клиент предоставил RWindow для отображения видео - это можно получить, вызвав QWidget::winId()
, который возвращает указатель CCoeControl*
. Поэтому вы можете получить дескриптор окна, вызвав
RWindow& window = *static_cast<RWindow*>(widget->winId()->DrawableWindow())
В целом, однако, воспроизведение видео из приложения Qt (или любого другого приложения) на Symbian в настоящее время требует довольно большой работы, особенно если вы хотите поддерживать динамическое изменение размера и / или изменение положения видеоконтента. , Также обратите внимание, что способ, которым Qt в настоящее время реализован в Symbian, означает, что перемещение других виджетов (частично или полностью) поверх виджета видео будет работать некорректно - видео будет продолжать отображаться сверху. Это связано с тем, что вызов QWidget::winId()
в настоящее время не приводит к тому, что Qt создает собственное окно Symbian, и будет исправлен в 4.6.
Таким образом, если вы не торопитесь делать это, вероятно, лучше дождаться бета-версии 4.6, выход которой ожидается через несколько недель.