![]() |
Reproducir sonido sincronizado con un timer
Tengo que emitir un sonido corto en determinados periodos de tiempo que son variables
Como sincronizarlos lo mas exacto posible sin que se produzcan retrasos. Por ejemplo 5 segundos 32 centésimas-->Sonido 10 segundos 25 centésimas--->Sonido .. .. 20 minutos 20 segundos 34 centesimas->Sonido El problema radica en que al usar PlaySound de un wav (grabado como un recurso *.res) hay un pequeño desfase con respecto al temporizador que cada vez se va haciendo mas grande. con lo que al final en vez de sonar a 20 minutos 20 sg 34 centésimas lo hace a 20 minutos 22 segundos. Se emplea un timer para llevar el crono y otro para los tiempos variables y reproducción de sonido. Alguna sugerencia? ¿Una tarea separada del 2º timer solo para reproducir el sonido ayudaría? Gracias... |
Hay algunos componentes de Timer que dicen ser "más exactos" que el original de Windows. No he probado ninguno, pero tal vez alguno de estos solvente tu problema.
Otra opción sería que revisaras GetTickCount, a ver si consigues más exactitud. |
Uso un timer de las JEDI jvThreadTimer1 que dicen que es un poco mas preciso que el ttimer para el crono y jv..2 para los tiempos. Arranco los 2 a la vez y en el 2º cambio el interval en el evento Ontimer. Antes de reproducir el sonido existia un desfase que era despreciable y al cabo de un rato se compensaba un poco.
Es al utilizar playsound cuando desfasa he leido que si se carga en memoria (¿como se haria?) es más rápido ¿un recurso no se carga en memoria o lo carga del exe perdiendo mas tiempo? Gracias por la respuesta |
voy a cambiar a un solo timer ya que en unos 20 minutos se desfasa mas de 2 segundos el sonido del tiempo en que debiera contar.
¿Alguien sabe como puedo comparar el TDateTime con una stringlist con formato "mm:ss:zz", siendo mm=minutos con 2 caracteres, ss=segundos, zz=centesimas, que contiene todos los tiempos a los que tiene que tocar el sonido. |
| La franja horaria es GMT +2. Ahora son las 04:21:43. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi