Karoshi MSX Community
05 de Julio de 2021, 07:31:10 pm *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias:
 
   Inicio   Ayuda Buscar Ingresar Registrarse  
Páginas: 1 ... 3 4 [5]
  Imprimir  
Autor Tema: Sintetizador de Voz para MSX  (Leído 31328 veces)
0 Usuarios y 1 Visitante están viendo este tema.
MsxKun
Karoshi Forum's Guru
*******
Mensajes: 1554


Kimochi-ii


WWW Email
« Respuesta #60 : 19 de Marzo de 2012, 09:22:36 am »

Ya que andas en el tema te pregunto, o a cualquiera que haga sonido con el PSG, se puede controlar las envolventes o las ondas de los canales de forma que empiecen a voluntad? Es decir si quiero disparar una envolvente determinada se la asigno a uno canal, pero supongo que esa envolvente corre permanentemente y no necesariamente empieza desde el inicio de la onda cuando la asigno. Probablemente se resetee y comience desde el inicio cuando se le cambia la frecuencia de envolvente, eso es asi?

Hola. Yo el tema envolventes apenas lo he tocado. El PSG es muy simplote para eso, una envolvente para todos los canales y control minimo sobre la idem.
Aqui hay gente que ha experimentado con ello mas que yo, a ver si saben algo concreto. Yo diria que la envolvente corre permanentemente, y es posible que se resetee al cambiar la frecuencia, como dices, o la forma de la misma. No sabria decirte. Se podrian hacer unas pruebas simples para mirarlo, aunque hay que tener algo de oido. Um.. o mejor, podria grabarse el sonido y ver la forma de la onda en el ordenador, asi visualmente lo apreciaria mejor Smiley
En línea

--

Cindy Lauper She Bops!
MsxKun
Karoshi Forum's Guru
*******
Mensajes: 1554


Kimochi-ii


WWW Email
« Respuesta #61 : 19 de Marzo de 2012, 09:25:24 am »

Publique lo del album en el tema del TAVMSX en retrocomputacion.com, asi que de paso tienes un poco de publicidad.
http://www.retrocomputacion.com/e107_plugins/forum/forum_viewtopic.php?63913.0#post_66654

Jo, gracias  Embarrassed Que ganas de torturar a la gente.  angel
En línea

--

Cindy Lauper She Bops!
pastbytes
Karoshi Fan
**
Mensajes: 66


Email
« Respuesta #62 : 20 de Marzo de 2012, 07:32:21 pm »

Reforme la prueba original en BASIC, que estaba hecha con SOUND en vez de PLAY, es un poco mas flexible el sonido pero al ser BASIC es imposible sincronizar la envolvente adecuadamente, por lo que el sonido es erratico, no siempre suena de la misma manera. Pero como sea, lo que importa es que si es posible desde BASIC, se puede secuenciar de alguna manera en algun programa que tenga mas precision y velocidad.
Adjunto un zip con el .BAS y el .ASC del programa, porque no a todos les conviene un .DSK de 360K, y sacando los creditos, el codigo que hace el sonido es el siguiente:

200 FORI=1TO100:NEXTI
210 SOUND 0,192:SOUND 1,0:SOUND 2,192:SOUND 3,0:SOUND 8,16:SOUND 9,16
220 SOUND 7,&B11111100:SOUND 11,34:SOUND 12,0:SOUND 13,14
230 PRINT"HO";:FOR I=1 TO 100:NEXT I
240 SOUND 0,29:SOUND 1,1:SOUND 2,29:SOUND 3,1:SOUND 8,16:SOUND 9,16
250 SOUND 7,&B11111100:SOUND 11,35:SOUND 12,0:SOUND 13,14
260 PRINT"L";:FOR I=1 TO 100:NEXT I
270 SOUND 0,87:SOUND 1,0:SOUND 2,137:SOUND 3,0:SOUND 8,16:SOUND 9,16
280 SOUND 7,&B11111100:SOUND 11,36:SOUND 12,0:SOUND 13,14
290 PRINT"A";:FOR I=1 TO 100:NEXT I
300 SOUND 13,0:PRINT", ";:FOR I=1 TO 150:NEXT I
310 SOUND 0,28:SOUND 1,0:SOUND 2,28:SOUND 3,0:SOUND 8,15:SOUND 9,15
320 SOUND 7,&B11101110:SOUND 11,150:SOUND 12,2:SOUND 13,10
330 PRINT"S";:FOR I=1 TO 30:NEXT I
340 SOUND 0,87:SOUND 1,0:SOUND 2,137:SOUND 3,0:SOUND 8,16:SOUND 9,16
350 SOUND 7,&B11111100:SOUND 11,36:SOUND 12,0:SOUND 13,14
360 PRINT"A";:FOR I=1 TO 100:NEXT I
370 SOUND 0,29:SOUND 1,1:SOUND 2,29:SOUND 3,1:SOUND 8,16:SOUND 9,16
380 SOUND 7,&B11111100:SOUND 11,35:SOUND 12,0:SOUND 13,14
390 PRINT"L";:FOR I=1 TO 100:NEXT I
400 SOUND 0,64:SOUND 1,1:SOUND 2,64:SOUND 3,1:SOUND 8,16:SOUND 9,16
410 SOUND 7,&B11111100:SOUND 11,34:SOUND 12,0:SOUND 13,14
420 PRINT"U";:FOR I=1 TO 100:NEXT I
430 SOUND 7,&B11111111:FORI=1TO10:NEXTI
440 SOUND 0,56:SOUND 1,0:SOUND 2,213:SOUND 3,0:SOUND 8,16:SOUND 9,16
450 SOUND 7,&B11111100:SOUND 11,36:SOUND 12,0:SOUND 13,14
460 PRINT"D";:FOR I=1 TO 10:NEXT I
470 SOUND 0,192:SOUND 1,0:SOUND 2,192:SOUND 3,0:SOUND 8,16:SOUND 9,16
480 SOUND 7,&B11111100:SOUND 11,36:SOUND 12,0:SOUND 13,14
490 PRINT"O";:FOR I=1 TO 100:NEXT I
500 SOUND 0,28:SOUND 1,0:SOUND 2,28:SOUND 3,0:SOUND 8,15:SOUND 9,15
510 SOUND 7,&B11101110:SOUND 11,150:SOUND 12,2:SOUND 13,10
520 PRINT"S";:FOR I=1 TO 30:NEXT I
530 SOUND 7,&B11111111:PRINT"."

El programa dice HOLA, SALUDOS.
Tambien lo va imprimiendo en pantalla.
En línea
Jon_Cortazar
Administrator
Karoshi Forum's God
********
Mensajes: 2777



WWW Email
« Respuesta #63 : 21 de Marzo de 2012, 06:31:30 am »

El programa dice HOLA, SALUDOS.
Tambien lo va imprimiendo en pantalla.

Probado. Lo flipo mucho Shocked
En línea

Jon Cortázar Abraido (aka El Viejo Archivero)
RELEVO Videogames
[Dioniso: La cafeína está haciendo su trabajo; yo espero hacer el mío.]
[pitpan: Me sigue pareciendo más productivo jugar al SNAIL MAZE que seguir esta discusión.]
pastbytes
Karoshi Fan
**
Mensajes: 66


Email
« Respuesta #64 : 21 de Marzo de 2012, 07:09:00 am »

La verdad es que no tiene aplicacion practica, pero es interesante. Si se prueba emulando al 200 o 300% de velocidad mejora mucho el sonido, y es sonido perfectamente posible, porque no es digitalizado como en el TAVMSX. Esto es sintesis aditiva, combinando dos canales y la envolvente, por lo tanto para lograr lo mismo que se escucha en 2x o 3x de velocidad, habria que utilizar assembler y multiplicar las frecuencias usadas en los canales y envolvente por 2 o 3 segun el caso. Lo que implica esto es que suena mal solo por la lentitud del BASIC, pero en assembler o en un secuenciador se tienen que obtener resultados iguales o mejores que cuando se acelera la emulacion.
Por cierto, en la frase, la O de HOLA esta acentuada, lo mismo que la U de SALUDOS, eso se cambia en la frecuencia de la envolvente, incluso se puede cantar en BASIC si se ajustan las frecuencias de envolvente para cada vocal, las consonantes no importan. Eso para que vean el poder de la poco valorada envolvente del sonido.  Cheesy
« Última modificación: 21 de Marzo de 2012, 07:16:59 am por pastbytes » En línea
Iggy Rock
Visitante
« Respuesta #65 : 22 de Marzo de 2012, 09:16:39 pm »

Ya que andas en el tema te pregunto, o a cualquiera que haga sonido con el PSG, se puede controlar las envolventes o las ondas de los canales de forma que empiecen a voluntad? Es decir si quiero disparar una envolvente determinada se la asigno a uno canal, pero supongo que esa envolvente corre permanentemente y no necesariamente empieza desde el inicio de la onda cuando la asigno. Probablemente se resetee y comience desde el inicio cuando se le cambia la frecuencia de envolvente, eso es asi?

Hola. Yo el tema envolventes apenas lo he tocado. El PSG es muy simplote para eso, una envolvente para todos los canales y control minimo sobre la idem.
Aqui hay gente que ha experimentado con ello mas que yo, a ver si saben algo concreto. Yo diria que la envolvente corre permanentemente, y es posible que se resetee al cambiar la frecuencia, como dices, o la forma de la misma. No sabria decirte. Se podrian hacer unas pruebas simples para mirarlo, aunque hay que tener algo de oido. Um.. o mejor, podria grabarse el sonido y ver la forma de la onda en el ordenador, asi visualmente lo apreciaria mejor Smiley

El registro 13, con el que se selecciona el tipo de envolvente, reinicia la misma cada vez que se escribe en el.
Código:
sound:
0,0
1,0
6,20
7,&b10001001
8,&h10
11,0
12,20
13,8

y 13,8 para reiniciar


« Última modificación: 22 de Marzo de 2012, 09:48:51 pm por Iggy Rock » En línea
pastbytes
Karoshi Fan
**
Mensajes: 66


Email
« Respuesta #66 : 22 de Marzo de 2012, 11:18:25 pm »

Interesante dato, y sera que se reinicia aunque se escriba el mismo valor existente?
En línea
Iggy Rock
Visitante
« Respuesta #67 : 23 de Marzo de 2012, 03:40:30 pm »

Eso es.
En línea
pastbytes
Karoshi Fan
**
Mensajes: 66


Email
« Respuesta #68 : 23 de Marzo de 2012, 05:39:07 pm »

Perfecto entonces, gracias, voy a ver si puedo hacer algunos experimentos.
En línea
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #69 : 29 de Marzo de 2012, 06:14:46 pm »

Saludos,

Me llegan a decir cuando era un crío que el MSX podría hablar a través del PLAY y no me lo creo  Shocked

¿Podrías por favor dar los parámetros SOUND de las vocales y consonantes que faltan (y que hayas investigado, claro)? Quiero hacer una prueba en ensamblador.  Shocked

Alucinante, de nuevo, sin palabras, nada que envidiar al SAM del C64 que tanto nos restregaban en la cara los compañeros del colegio  Grin
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
pastbytes
Karoshi Fan
**
Mensajes: 66


Email
« Respuesta #70 : 30 de Marzo de 2012, 04:39:07 am »

Aca estan el resto de los que habia hecho originalmente, dice TALENT, que es la marca de mi MSX.

510 SOUND 0,28:SOUND 1,0:SOUND 2,28:SOUND 3,0:SOUND 8,16:SOUND 9,16
520 SOUND 7,&B11101110:SOUND 11,150:SOUND 12,2:SOUND 13,1
530 PRINT"T";:REM FOR I=1 TO 20:NEXT I
540 SOUND 0,87:SOUND 1,0:SOUND 2,137:SOUND 3,0:SOUND 8,16:SOUND 9,16
550 SOUND 7,&B11111100:SOUND 11,34:SOUND 12,0:SOUND 13,14
560 PRINT"A";:FOR I=1 TO 100:NEXT I
570 SOUND 0,29:SOUND 1,1:SOUND 2,29:SOUND 3,1:SOUND 8,16:SOUND 9,16
580 SOUND 7,&B11111100:SOUND 11,35:SOUND 12,0:SOUND 13,14
590 PRINT"L";:FOR I=1 TO 100:NEXT I
600 SOUND 0,56:SOUND 1,0:SOUND 2,213:SOUND 3,0:SOUND 8,16:SOUND 9,16
610 SOUND 7,&B11111100:SOUND 11,36:SOUND 12,0:SOUND 13,14
620 PRINT"E";:FOR I=1 TO 100:NEXT I
630 SOUND 0,172:SOUND 1,1:SOUND 2,172:SOUND 3,1:SOUND 8,16:SOUND 9,16
640 SOUND 7,&B11111100:SOUND 11,35:SOUND 12,0:SOUND 13,14
650 PRINT"N";:FOR I=1 TO 50:NEXT I
660 SOUND  13,0:FORI=1TO100:NEXTI
670 SOUND 0,28:SOUND 1,0:SOUND 2,28:SOUND 3,0:SOUND 8,16:SOUND 9,16
680 SOUND 7,&B11101110:SOUND 11,150:SOUND 12,2:SOUND 13,1
690 PRINT"T.":PRINT
700 SOUND 13,0

El programa era otro, asi que la numeracion de las lineas no tiene nada que ver con el anterior. De ahi lo unico nuevo son los fonemas: T, E, N.
Tambien en otra parte estan los fonemas I, U, con un espacio intermedio en la linea 400:

370 SOUND 0,33:SOUND 1,0:SOUND 2,64:SOUND 3,1:SOUND 8,16:SOUND 9,16
380 SOUND 7,&B11111100:SOUND 11,34:SOUND 12,0:SOUND 13,14
390 PRINT"I ";:FOR I=1 TO 100:NEXT I
400 SOUND  13,0:FORI=1TO40:NEXTI
410 SOUND 0,64:SOUND 1,1:SOUND 2,64:SOUND 3,1:SOUND 8,16:SOUND 9,16
420 SOUND 7,&B11111100:SOUND 11,34:SOUND 12,0:SOUND 13,14
430 PRINT"U";:FOR I=1 TO 100:NEXT I
En línea
pastbytes
Karoshi Fan
**
Mensajes: 66


Email
« Respuesta #71 : 30 de Marzo de 2012, 05:15:34 am »

Alucinante, de nuevo, sin palabras, nada que envidiar al SAM del C64 que tanto nos restregaban en la cara los compañeros del colegio  Grin

Hablas del TAVMSX, no? Porque si es de los experimentos con BASIC, el SAM suena mucho mejor.  Cheesy
En línea
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #72 : 31 de Marzo de 2012, 11:20:50 am »

Muchas gracias, alucinante  Smiley Pues nada que envidiar al SAM!!!  Griel

En la revsita Microhobby venía el listado de un sintetizador de voz para el Spectrum. Recuerdo que lo hacía sintetizando cada fonema a través del altavoz (no del PSG, era para un Spectrum básico).

Repito, anonadado me he quedado con esto  Shocked
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
pastbytes
Karoshi Fan
**
Mensajes: 66


Email
« Respuesta #73 : 31 de Marzo de 2012, 08:12:08 pm »

Si, probe el sintetizador de Microhobby y es muy bueno. El TAVZX tambien tiene una version para Spectrum 48K que suena por el altavoz (y la salida MIC), el TAVMSX es una conversion del TAVZX que hice despues para Spectrum 128K, que es la que usa el PSG.
En línea
Páginas: 1 ... 3 4 [5]
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.21 | SMF © 2013, Simple Machines XHTML 1.0 válido! CSS válido!