LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Reproducir con el windows media player con un comentario a la eleccion de cada video?

Solved!
Go to solution

Hola:

 

Espero me puedan ayudar, quero reproducir un serie  de videos  uno a la vez, y que cada vez que  seleccione uno, salga un omentario correspondiete  a este, tengo un VI en el cual meti el path dentro de los ciclos para que en cada caso me enviara el comentario y se repoduciera el video, pero no lo hace y tmpoco me marca error.

 

 

Muchas Gracias.

0 Kudos
Message 1 of 3
(3,305 Views)
Solution
Accepted by topic author marmota

Hola, que tal

 

Estuve revisando tu caso y encontré algunas cosas que puedes cambiar en tu VI.

 

Lo que pude notar es que lo que está fallando del VI no está directamente en la parte de ActiveX, sino en la parte de ciclos. Esto era debido a que no se estaba repitiendo el código encargado del video.

 

Cuando tu utilizas una estructura while o for en LabVIEW, tienes lo que se llaman túneles de entrada y de salida.

 

Los túneles de entrada, son los datos que tu le introduces al ciclo, generalmente o de manera recomendada, estos deben ir del lado izquierdo. Estos cuentan con un valor que se toma una sola vez al entrar al ciclo, si se quiere utilizar dichos valores nuevamente o se quiere modificar los mismos se debe agregar una función llamada shift register. Sin embargo, para tu aplicación esto no lo necesitas.

 

Los túneles de salida, y es aquí donde creo que está el problema, son los valores que salen del ciclo. Estos valores salen solo cuando el ciclo ha terminado de hacer todas sus iteraciones, ya sea por una condición o por que el número de iteraciones ha concluido.

 

Me imagino que cuando dabas el botón de STOP se te activaba tu video, esto es porque al darle click al botón de STOP se concluye el ciclo y manda tu path al property node. Es importante mencionar que solo manda el último en memoria. Para arreglar esto lo que debes de hacer es tener tu código dentro de tu ciclo While.

 

Sin embargo, si tu metes el resto de tu código a tu ciclo While, lo que va a suceder es que se ejecutará la reproducción de tu video de manera repetitiva dependiendo de tu selección, es decir, dependiendo que video selecciones se reproducirá, pero automáticamente, al realizarse otra iteración del ciclo, tratará de abrirlo y nunca lo podrás ver completo.

 

Para arreglar este problema una solución sería agregar un EVENT structure, esta estructura tiene la ventaja que espera hasta que se selección que evento, es decir, no corre continuamente como las demás estructuras que hemos visto hasta el momento.

Cuando agregas tu estructura de eventos, debes dar click derecho sobre el marco de la esctructura de eventos y se selecciona en la ventana de en medio tu tab control (sería mejor utilizar un ENUM) y en el panel del lado derecho se selecciona value change. Ahora cada vez que esa variable cambie de valor, se entrara a ese evento.

 

En tu evento deberas tener primero que nada, en el evento de tu selector, ya sea control tab o enum tu control y un case, que dependiendo que haya seleccionado, tendrá una constante de path y una constante de string, estas las mandaras fuera de tu case y de tu event structure hasta que, aun dentro del while tendrás para reproducir tu video.

 

Este no se repetirá ya que estará esperando a que se lleve a cabo otro evento.

 

Es importante crear un evento relacionado con el botón de STOP, ya que sino, no lo podrás leer. En tu case de STOP se cablea una constante de True a tu condición de finalización del ciclo.

 

Es muy importante, cuando no sepas que esté pasando en tu VI, puedes darle en el diagrama de bloques click en el icono donde hay un foco. Esto se llama Highlight execution, sirve para ver como se mueven tus flujos de información.

 

A continuación te agrego un tutorial de ciclos en ingles que encontré en la página de NI que te puede ser de mucha ayuda.

 

http://zone.ni.com/devzone/cda/tut/p/id/7588

 

A continuación te agrego unas imágenes de como debería de quedar tu VI más o menos, así como de como agregar eventos a tu estructura de eventos.

 

Video.png

 

 

Video2.png

 

eventcase.PNG

 

eventcase2.PNG

Luis Elias
NI VeriStand and HIL Product Manager
0 Kudos
Message 2 of 3
(3,277 Views)

Genial, tu respuesta, soy novato en labview, quiero colocar un video en mi VI , bueno vi en youtube un reproductor que corria en labview, lo probe y si funciona el tema esta en que cuando se ejecuta el video este amplia su tamaño o se achica dependiendo del formato, lo que quiero es que la parte del reproductor quede fija asi sea grande o chico el video este siempre ocupe el mismo tamaño ya que quiero poner unos contadores debajo del video , y si este se vuelve pequeño no se vera bien el VI. por favor podrian ayudarme gracias

0 Kudos
Message 3 of 3
(2,319 Views)