Je crée un lecteur vidéo en utilisant PySide qui est un python lié au framework Qt. J'utilise phonon (un module) pour afficher la vidéo et je veux afficher le texte au-dessus de la vidéo comme sous-titre. Comment puis-je mettre un autre widget au-dessus de mon widget phonon. Est-ce que opengl est une option?python qt, afficher le texte/l'étiquette au-dessus d'un autre widget (phonon)
1
A
Répondre
4
Si vous venez de créer votre étiquette et de définir le widget phonon comme parent, l'étiquette doit apparaître par-dessus.
QLabel *label = new QLabel(phononWidget);
label->setText("Text over video!");
(Je sais que c'est C++ et que vous travaillez en Python, mais il devrait être similaire)
Mise à jour: ci-dessus ne fonctionne pas pour la lecture vidéo avec accélération matérielle. Une alternative qui fonctionne est de créer une scène graphique et d'ajouter le widget vidéo ou le lecteur à la scène et d'utiliser un QGraphicsTextItem
pour le texte. Réglage de la fenêtre à un QGLWidget
permettra l'accélération matérielle:
QGraphicsScene *scene = new QGraphicsScene(this);
Phonon::VideoPlayer *v = new Phonon::VideoPlayer();
v->load(Phonon::MediaSource("video_file"));
QGraphicsProxyWidget *pvideoWidget = scene->addWidget(v);
QGraphicsView *view = new QGraphicsView(scene);
view->setViewport(new QGLWidget); //Enable hardware acceleration!
QGraphicsTextItem *label = new QGraphicsTextItem("Text Over Video!", pvideoWidget);
label->moveBy(100, 100);
v->play();
Questions connexes
- 1. lecteur vidéo avec phonon qt (en utilisant python)
- 2. Qt: Afficher l'image sur le widget
- 3. Exemple de lecteur vidéo Qt phonon C++ ou python
- 4. Qt Afficher/Masquer l'animation du widget
- 5. Comment Widget à l'intérieur d'un autre widget dans QT?
- 6. Qt Phonon erreur de conversion mediaobject
- 7. python Qt: barre de défilement widget principal
- 8. qt - widget - positionnement
- 9. Qt Widget Overlays
- 10. Widget QT pour Windows XP
- 11. QT séparateur widget?
- 12. Comment redimensionner automatiquement le widget qt?
- 13. Qt Action Dropdown Widget
- 14. Qt Creator/Qt démo du widget intégré
- 15. Est-il possible de lier statiquement Qt :: phonon sur windows?
- 16. qt drop événement get widget
- 17. Problème d'alignement de widget QT
- 18. Qt: Widget personnalisé dans QScrollArea
- 19. Qt widget basé sur QWidget
- 20. Jouer du mp3 avec Python, PyQt et Phonon
- 21. Qt, widget généré avec l'héritage?
- 22. Mappage de widget pour Qt
- 23. Personnaliser un Widget Tree Qt
- 24. Pour exécuter Phonon sous Windows XP sp2
- 25. Python + QT + Gstreamer
- 26. Comment accéder à pointeur widget parent QT
- 27. Phonon sur Windows
- 28. Comment supprimer un widget d'un widget empilé dans Qt
- 29. Qt: Faire glisser un widget pour faire défiler le parent QScrollArea du widget?
- 30. Phonon sortie audible échec
Notez également que, puisque l'étiquette ne sera pas dans une mise en page, vous devez gérer son positionnement manuellement. –
Ok je mets self.label = QtGui.QLabel (« Bonjour, je suis le sous-titre », self.videoWidget) Mais il apparaît comme une boîte noire – Forested
Cela fonctionne pour les widgets les plus ordinaires. Je suppose que pour être un widget vidéo, il peut y avoir des accélérations matérielles ou des superpositions qui rendent les choses un peu plus compliquées. Je n'ai pas utilisé le phonon, je vais regarder les docs et suggérer autre chose si je trouve quelque chose. –