Roland SonicCell Manual Del Usuario página 275

Ocultar thumbs Ver también para SonicCell:
Tabla de contenido
menos que el valor proporcionado en el diagrama anterior. En el
caso de dos tipos, 00 00H = -8192, 40 00H = +/-0, y 7F 7FH =
+8191. Por ejemplo, si aa bbH se expresase como un decimal, esto
sería aa bbH - 40 00H = aa x 128+bb - 64 x 128.
* Los datos marcados como "Use nibbled data" se expresan en
formato hexadecimal en unidades de 4 bits. Un valor expresado
como un 2-byte incompleto 0a 0bH tiene un valor de x 16+b.
<Ejemplo 1> ¿Cuál es la expresión decimal de 5AH?
En la tabla anterior, 5AH = 90
<Ejemplo 2> ¿Cuál es la expresión decimal del valor 12 34H como
hexadecimal para cada 7 bits?
Según la tabla anterior, si 12H = 18 y 34H = 52
18 x 128+52 = 2356
<Ejemplo 3>¿Cuál es la expresión decimal del valor incompleto 0A
03 09 0D?
Según la tabla anterior, si 0AH = 10, 03H = 3, 09H = 9, 0DH = 13
((10 x 16+3) x 16+9) x 16+13 = 41885
<Ejemplo 4>¿Cuál es la expresión incompleta del valor decimal
1258?
16 ) 1258
16 )
78 ...10
16 )
4 ...14
0 ... 4
Según la tabla anterior, 0 = 00H, 4 = 04H, 14 = 0EH, 10 = 0AH, el
resultado es: 00 04 0E 0AH.
■Ejemplos de mensajes MIDI reales
<Ejemplo 1> 92 3E 5F
9n es el estado Note-on, y n es el número de canal MIDI. Si 2H = 2,
3EH = 62 y 5FH = 95, es un mensaje Note-on con MIDI CH = 3,
número de nota 62 (el nombre de nota es D4) y velocidad 95.
<Ejemplo 2> CE 49
CnH es el estado Program Change, y n es el número de canal MIDI.
Si EH = 14 y 49H = 73, es el mensaje Program Change con MIDI CH
= 15, número de programa 74.
<Ejemplo 3> EA 00 28
EnH es el estado Pitch Bend Change, y n es el número de canal MIDI.
El 2º byte (00H=0) es el LSB y el 3r. byte (28H=40) es el MSB, en
cambio el valor Pitch Bend es un número con signo en el cual 40 00H
( = 64 x 128 + 0 = 8192) es 0, de forma que el valor Pitch Bend es
28 00H - 40 00H = 40 x 12+80 - (64 x 12+80) = 5120 - 8192 = -3072
Si Pitch Bend Sensitivity está ajustado a 2 semitonos, -8192 (00 00H)
hará que la afinación cambie en -200 centésimas, con lo cual en este
caso se aplicarán -200 x (-3072) ÷ (-8192) = -75 centésimas de Pitch
Bend al canal MIDI 11.
<Ejemplo 4> B3 64 00 65 00 06 0C 26 00 64 7F 65 7F
BnH es el estado Control Change, y n es el número de canal MIDI.
Para Control Changes, el 2º byte es el número de control, y el 3r byte
es el valor. En el caso de que dos o más mensajes consecutivos
tengan el mismo estado, MIDI tiene una provisión llamada "estado
funcionamiento" que permite que el byte de estado del segundo y de
los siguientes mensajes se omita. Así, los mensajes anteriores tienen
el siguiente significado.
B3
64 00
MIDI ch.4, byte inferior del número de parámetro RPN:
00H
(B3) 65 00
(MIDI ch.4) byte superior del número de parámetro RPN:
Implementación MIDI
00H
(B3) 06 0C (MIDI ch.4) byte superior del valor de parámetro:0CH
(B3) 26 00
(MIDI ch.4) byte inferior del valor del parámetro:00H
(B3) 64 7F (MIDI ch.4) byte inferior del número de parámetro RPN:
7FH
(B3) 65 7F (MIDI ch.4) byte superior del número de parámetro RPN:
7FH
Es decir, los mensajes anteriores especifican un valor de 0C 00H para
el número de parámetro RPN 00 00H en el canal MIDI 4, y luego
ajustan el número de parámetro RPN a 7F 7FH.
El número de parámetro RPN 00 00H es sensibilidad Pitch Bend, y
el MSB del valor indica unidades de semitono, de forma que un
valor de 0CH = 12 establece el intervalo máximo de pitch bend a +-
12 semitonos (1 octava). (En los generadores de sonido GS el LSB de
la sensibilidad Pitch Bend es ignorado, pero LSB se debe transmitir
igualmente (con un valor 0) de forma que la operación será correcta
en cualquier dispositivo).
Una vez se ha especificado el número de parámetro para RPN o
NRPN, todos los mensajes Data Entry transmitidos en ese mismo
canal serán válidos, de forma que una vez se haya transmitido el
valor deseado, es aconsejable ajustar el número de parámetro a 7F
7FH para evitar accidentes. Este es el motivo por el cual (B3) 64 7F
(B3) 65 7F está al final.
No es aconsejable que los datos de interpretación (como información
de Archivos MIDI Estándar) contengan demasiados eventos con
estado de funcionamiento tal como se ha explicado en el<Ejemplo
4>. Esto es porque si la reproducción se interrumpe en medio de la
canción y luego se rebobina o se avanza, el secuenciador no podrá
transmitir el estado correcto, y el generador de sonido no
interpretará bien la información. Asegúrese de dar a cada evento su
propio estado
También es necesario que el ajuste del número de parámetro RPN o
NRPN y el ajuste del valor se realicen en el orden correcto. En
algunos secuenciadores, los eventos establecidos en el mismo (o
consecutivo) tiempo, es posible que se transmitan en un orden
diferente que el orden con el que se recibieron. Por esta razón es
recomendable cambiar ligeramente el tiempo de cada evento (1
pulsación por TPQN =96, y 5 pulsaciones por TPQN =480).
* TPQN: Pulsaciones por negra
■Ejemplo de un mensaje Exclusive y
cálculo de suma de comprobación
Los mensajes Roland Exclusive (RQ1, DT1) se transmiten con una
suma de comprobación al final (antes de F7) para comprobar que el
mensaje se ha recibido correctamente. El valor de la suma de
comprobación viene determinado por la dirección y los datos (o
tamaño) del mensaje Exclusive transmitido.
●Cómo calcular la suma de comprobación
(los números hexadecimales están indicados con una "H")
La suma de comprobación es un valor derivado de añadir la
dirección, el tamaño y la suma de comprobación e invertir los 7 bits
inferiores.
Aquí tiene un ejemplo de cómo se calcula una suma de
comprobación. Suponemos que en el mensaje Exclusive que se
transmite, la dirección es aa bb cc ddH y los datos o tamaño es ee
ffH.
aa + bb + cc + dd + ee + ff = suma
suma ÷ 128 = cociente ... resto
128 - resto = suma de comprobación
275
Tabla de contenido
loading

Tabla de contenido