Question

Je travaille sur une application WPF qui affiche des clips vidéo dans le cadre du flux de travail. Je le fais en utilisant MediaElement pour lire les fichiers AVI hébergés localement (non diffusés en continu). Fonctionne très bien.

Cependant, je venais tout juste de me faire part d'une nouvelle exigence autorisant l'affichage des sous-titres pendant la lecture du clip. Je n'ai aucune idée de la meilleure façon de s'y prendre. Je suis vaguement conscient du fait que WMP peut afficher des fichiers de sous-titres distincts lors de la lecture d'un clip, mais je ne sais pas si WPF le prend en charge?

Puis-je le faire en mode natif dans WPF? Si non, quelles sont mes options?

Mon approche de repli serait d'exiger du client qu'il insère les sous-titres directement dans le fichier vidéo, mais je préférerais trouver un meilleur moyen de gérer cela.

Était-ce utile?

La solution

Eh bien, si votre exigence en matière de sous-titres ne concerne que le texte superposé à MediaElement, alors oui, WPF peut certainement le supporter. Il vous suffit de placer le MediaElement dans une grille avec un TextBlock.

Le vrai truc sera de changer la propriété TextBlock Text en fonction de l'heure dans le MediaElement. Mais il y a probablement beaucoup de façons de le faire. la première qui me vienne à l’esprit utilise un déclencheur lié au MediaElement.Position , propriété.

Autres conseils

Dans WPF, vous devez analyser le fichier de sous-titres et le synchroniser. L’événement tel que MarkerReached ne figure pas dans Silverlight. Mais vous pouvez créer un smi (fichier SAMI) avec le même nom de fichier que votre vidéo et le placer dans le même dossier. Ensuite, abonnez-vous à l'événement ScriptCommand et affichez le contenu dans le bloc de texte de superposition.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top