カスタムオーバーレイグラフィックを使用してビデオを再生します
-
11-10-2019 - |
質問
「Play」と「Stop」ボタンなどを備えた単純なGUIでビデオ(サウンド付き)を再生したいと思います。それを行うためのQTのPhononモジュールにはクラスとウィジェットがあります。わかりました、それは簡単なようです。
しかし、今では、ストリーミングされたビデオ画像の上にいくつかのカスタムグラフィック(ビデオの現在の時間に依存する)を描く必要があります。 QTドキュメントでこれについては何も見つかりませんでした。これを行う標準的な方法は何ですか?カスタムVideWidgetウィジェットを作成し、PaintEventをオーバーライドするだけですか?ここの別の質問では、何人かの男がこれに問題があるように見えました。
どんなポインターも感謝しています。
解決
qgraphicsviewとqgraphicswidgetsを使用します。ポノン:: videowidgetをqgraphicsproxywidget内に置くことができ、qgraphicswidgetとして使用可能になります。
カスタムオーバーレイの場合、QGraphicsWidgetを継承し、ペイント関数をオーバーライドしてカスタムウィジェットを描画します。シーンに追加すると、ビデオウィジェットの上に表示されます。
他のヒント
追加できないため、解決策は機能しません QGLWidget
に QGraphicsProxyWidget
. 。見てくださいhttp://doc.qt.digia.com/qt/qgraphicsproxywidget.html
でウィジェットがあることに注意してください
Qt::WA_PaintOnScreen
外部アプリケーションまたはコントローラーをラップするウィジェット属性セットとウィジェットを埋め込むことはできません。例はそうですQGLWidget
とQAxWidget
.
私が間違っている場合は私を修正してください。