Pregunta

Estoy trabajando en una aplicación WPF que muestra clips de video como parte del flujo de trabajo. Estoy haciendo esto usando MediaElement para reproducir archivos AVI alojados localmente (no transmitidos). Funciona muy bien.

Sin embargo, me acaban de entregar un nuevo requisito para permitir la visualización de subtítulos mientras se reproduce el clip. No tengo idea de la mejor manera de hacerlo. Soy vagamente consciente de que WMP tiene la capacidad de mostrar archivos de subtítulos separados cuando se reproduce un clip, pero no sé si WPF lo admite.

¿Puedo hacer esto de forma nativa en WPF? Si no, ¿cuáles son mis opciones?

Mi enfoque alternativo sería requerir que el cliente hornee los subtítulos directamente en el archivo de video, pero preferiría encontrar una mejor manera de manejar esto.

¿Fue útil?

Solución

Bueno, si su requisito de subtítulos es simplemente texto superpuesto al MediaElement, entonces sí, WPF ciertamente puede soportar esto. Solo tiene que colocar el elemento multimedia en una cuadrícula junto con un bloque de texto.

El truco real será cambiar la propiedad TextBlock Text según el tiempo en MediaElement. Pero probablemente hay muchas maneras de hacer esto; lo primero que viene a la mente es usar un disparador vinculado a MediaElement.Position .

Otros consejos

En WPF necesita analizar el archivo de subtítulos y sincronizar, no tiene el evento como MarkerReached en Silverlight. Pero puede crear un smi (archivo SAMI) con el mismo nombre de archivo que su video y ponerlo en la misma carpeta. Luego suscríbase al evento ScriptCommand y muestre el contenido en el bloque de texto de superposición.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top