Newsgroup: it.comp.os.linux.software
Titolo: midi -> wave/cdda

C'e` un SW per trasformare i midi in cdda o wave?
Sox, non ho trovato modo di farglielo fare:-(
I midi li sento splendidamente con playmidi.
-- 
Ci sentiamo  |  Remigio Zedda  || Attenzione! campo "From:" alterato
ciao Remigio |                 ||==> E-mail: 
remi...@tiscalinet.it
-------------|      ..si` d'accordo.. ma con la Deb e` un'altra cosa!
/* Linux 2.2.17 su Debian GNU/Linux 2.2 Potato */

 C'e` un SW per trasformare i midi in cdda o wave?
timidity prova.mid -Ow -o prova.wav
gabry@camelot:~/MIDI$ file prova.wav 
prova.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit,
stereo 32000 Hz
A risuonarlo con XMMS, si sente un sacco di fruscio di fondo... se ravanando
con gli attributi di -O riesci a fare qualcosa di meglio, fammi un fischio
:-)
Per il CDDA, cdda2wav (o cdrecord) non va bene? (non so, mai usati...)
Un Gabry audiophile :-)
-- 
*************************************************************************
LightKnight's Home Page:  
http://www-studenti.dm.unipi.it/~stilli/
LightKnight's Email:      mailto:
super...@libero.it
Aide in Cittadella BBS:   
http://ping.science.unitn.it/~BBS/
Caccole Stellari Website: 
http://www.caccolestellari.com/
*************************************************************************


 TiMidity is free software and comes with ABSOLUTELY NO WARRANTY.
La riga di comando per timidity e` pero` la tua, che penso sia the best.


Chissa` da Linux che cosa ci vuole:-(
play, aplay...
--
        Giuseppe "Cowo" Corbelli  -->>  Riding on Linux-2.2.18
    **ANTI-SPAM** -- **Substitute IHATESPAM with cowo to reply by mail**
The primary purpose of the DATA statement is to give names to constants;
instead of referring to pi as 3.141592653589793 at every appearance,
the variable PI can be given that value with a DATA statement and
used instead of the longer form of the constant.  This also
simplifies modifying the program, should the value of pi change.
                        -- FORTRAN manual for Xerox computers

play, aplay...
Mo' li installo:-))  THNX!!
Ps. Con Timidity, in barba a quanto dicono, i midi si sentono mooolto
meglio che con Playmidi. Anzi, da me sono splendidi e credo proprio
perfetti.


 perfetti.
Dipendera' dalla qualita' delle patch audio (wavetables?) di Timidity e di
quelle della tua scheda sonora.
NOTA: potrei aver scritto delle bestialita' apocalittiche, mi scuso, anche
per la prolissita' e lo spudorato OT.
Un Gabry.. and the sound of silence :-)


Assicurati che sia 44100 hz 16 bit stereo.
Si`, per la frequenza c'ero gia` arrivato che l'avevo letto non so
dove. I sedici bit invece penso siano a posto, visto che hmpf(?) non
restituisce errore, penso. Poi guardo, ma 16 dev'essere appunto il
default. THNX!
E anche i due canali, ok senz'altro.


Un Gabry.. and the sound of silence :-)
..e ora all'assalto della fortezza di Rosegarden ;-))


cdrecord: Inappropriate audio coding in '/home/rr/wave/pippo.wav'.
Hmpf...
if (le_a_to_u_short(fmt.channels) != 2 ||
   le_a_to_u_long(fmt.sample_rate) != 44100 ||
   le_a_to_u_short(fmt.bits_per_sample) != 16) {
  ret = AU_BAD_CODING;
 
Assicurati che sia 44100 hz 16 bit stereo.					
--
  	Giuseppe "Cowo" Corbelli  -->>  Riding on Linux-2.2.18
    **ANTI-SPAM** -- **Substitute IHATESPAM with cowo to reply by mail**
  -<! Battles Are Fought By Those With The Courage To Believe !>-
  		Manowar - Courage

Potresti dire da dove l'hai presa? Io non ho un solo .c :-(
audiosize.c dalla distribuzione ufficiale di cdrecord.
--
        Giuseppe "Cowo" Corbelli  -->>  Riding on Linux-2.2.18
    **ANTI-SPAM** -- **Substitute IHATESPAM with cowo to reply by mail**
	  -<! Computer programmers never die, 
		they just raise an unhandled exception. !>-

 wrote:
| Quindi ovvio.. capisco che allora bisogna intendersene di formati
| audio. Cmq mi sorprendeva che le stesse informazioni potessero essere
| contenute in un codice 1:10 e piu`.
| Pero` segue una legge strana, perche' 15k-->24M, ma 45k-->35M !!
Guarda, per capire meglio fai questo calcolo:
supponendo di avere un midi di 3 minuti che convertiremo in un file .wav
16 bit stereo a 32000Hz:
180*16*2*32000=184320000[1]
|>play, aplay...
| Mo' li installo:-))  THNX!!
play viene distribuito assieme a sox
henryx@blackshell:~$ dpkg -S /usr/bin/play
sox: /usr/bin/play
henryx@blackshell:~$
| Ps. Con Timidity, in barba a quanto dicono, i midi si sentono mooolto
| meglio che con Playmidi. Anzi, da me sono splendidi e credo proprio
| perfetti.
Ci credo! Timidity, al contrario di molti player midi, non si appoggia
alla scheda audio per riprodurre il file, ma si appoggia a dei campioni
audio su hd. In pratica il timidity trasforma il midi in digitale prima
di suonarlo, utilizzando i campioni audio che ha a disposizione (e che
sono virtualmente infiniti). Ovviamente questa tecnica ha il vantaggio
che per sentire suonar bene un midi non dobbiamo comprarci una wavetable,
ma ha come svantaggio il fatto che dobbiamo avere i campioni musicali per
poter sentire il midi. A titolo storico, ricordo solo due prg che usavano
questa tecnica. Il primo era il cubic player (mitico player di
moduli/wave/midi sotto dos), mentre il secondo era il wingroove (oddio,
forse questo usava una tecnica un po' diversa, in quanto non mi ricordo
di aver utilizzato i campioni gus per farlo suonare).
Henryx
[1] Mi sembra che il calcolo era cosi`. sinceramente non ricordo bene
^^;;
-- 
===UN*X is SEXY!===
who|grep -i "green eyes"|date; cd ~; apropos fsck; whatis `unzip`|touch; 
strip; finger; mount; gasp; yes|more; uptime; umount; sleep

poter sentire il midi. A titolo storico, ricordo solo due prg che usavano
Ma infatti i midi mi vanno malino anche perche' carico poco e malamente
i quattro mega di ram con "sfxload synthgm.sbk" e poi "sfxtest I".
Non ho ben capito cosa c'entri poi synthgm.sbk che l'ho dovuto prendere
da winbug!!


 wrote:
|>Guarda, per capire meglio fai questo calcolo:
|>supponendo di avere un midi di 3 minuti che convertiremo in un file .wav
|>16 bit stereo a 32000Hz:
|>180*16*2*32000=184320000[1]
|>[1] Mi sembra che il calcolo era cosi`. sinceramente non ricordo bene
|>^^;;
| Credo pero` che dipenda anche pesantemente dal tipo di strumenti in
| gioco nel file, come ha detto Gabry.
Se stavamo parlando di moduli (i .mod|.xm|.s3m ecc) avevi ragione. Ma
non sulla sintesi digitale
Henryx


 da winbug!!
Sono le wavetables della scheda sonora, ovvero (credo) la stessa cosa delle
timidity-patches. E spero bene che siano indipendenti dall'OS :-)
Un Gabry che se gli toccano il MIDI scatta la viuuuuuuuleeeeeenza :-)


non sulla sintesi digitale
Non ci capisco una mazza, riportavo (malamente) quel che diceva Gabry,
che infatti, se guardi l'ultimo suo post, me l'ha precisato.
Ah, ci sono arrivato alla formola.. pero` 16 bit=2 byte-intel, per cui
non dovrebbe essere: 2*2*44100 byte/s ? (44,1 kHz che a 32 non mi funge)
Non vedo il nesso tra frequenza di campionamento e byte, comunque.


timidity-patches. E spero bene che siano indipendenti dall'OS :-)
Sono GM, dunque uno standard (o almeno dovrebbero).
Ma i font2 con Linux non ci sono? I banchi dovrebbero essere .sf2
invece di .sbk. In winbug sono nel file gm35revc.sf2. Poi ci sono
ancora i GS in synthgs.sbk e gli MT in synthmt.sbk.. una bolgia:-((


 ^^;;
16 bit ( == 2 byte ) @ 32kHz x 2 canali x 3 min ( = 180 sec ) =
2*32000*2*180=23040000 ~ 23 MB
Per controllo_ un cd da 1h
16 bit ( == 2 byte ) @ 44.1kHz x 2 canali x 60 min ( = 3600 sec ) =
2*44100*2*3600 = 635040000 ~ 650 MB
Per 74'
2*44100*2*74*60=783216000=746MB
Considerando che i settori sono da 2352 byte di cui vengono utilizzati 2048 
per i dati, ed i il resto per checksum :
746*2048/2352=649MB che e' poi la dimensione dei cd dati ( "formatta" )
La dimensione di un file *wav* e' un po' superiore a causa dell'header. La 
dimensione di un file di questo tipo ( ovvero senza nessuna forma di 
compressione ) dipende solo dalla frequenza, dal numero di voci, e 
dall'ampizza di campionamento ( 16 o 8 bit ). ( PS non sono sicuro che la 
dizione "ampiezza di campionamento" sia una dizione corretta. )
Il tipo di strumento non centra nulla 


 
| >|Credo pero` che dipenda anche pesantemente dal tipo di strumenti in
| >|gioco nel file, come ha detto Gabry.
| >Se stavamo parlando di moduli (i .mod|.xm|.s3m ecc) avevi ragione. Ma
| >non sulla sintesi digitale
| Non ci capisco una mazza, riportavo (malamente) quel che diceva Gabry,
| che infatti, se guardi l'ultimo suo post, me l'ha precisato.
Allora, per farti capire meglio (sperando di non cannare io :) ),
puoi paragonare i file musicali ad  una orchestra filarmonica: i MIDI
sono lo spartito che quest'orchestra suonera` (infatti nei midi viene
scritta solo la nota e lo strumento da usare, che si trova sulla
wavetable), i moduli il direttore d'orchestra (in quanro, a differenza
dei midi, nel modulo viene inserito sia lo strumento, sia lo spartito),
mentre la riproduzione digitale e` l'orchestra (in quanto in essa viene
registrato il suono che proviene da tutti gli strumenti che in quel
momento stanno suonando). In pratica, si avranno dei midi piccolissmi
(in quanto in essi viene solo descritto il suono), dei moduli di media
dimensione (in  quanto in essi vi e` sia la descrizione del suono, sia
lo strumento che dovra` suonare), e dei file wave di grosse dimensioni
(in quanto in essi vi e` il suono stesso)
| Ah, ci sono arrivato alla formola.. pero` 16 bit=2 byte-intel, per cui
| non dovrebbe essere: 2*2*44100 byte/s ? (44,1 kHz che a 32 non mi funge)
| Non vedo il nesso tra frequenza di campionamento e byte, comunque.
Ehm, l'avevo detto che non me la ricordavo ^^;
Cmq, il nesso tra frequenza di campionamento/byte e` molto stretto, in
quanto piu` la frequenza e` alta, piu` il suono ha una buona qualita`, e
di conseguenza piu` informazioni dovranno essere registrate per avere
quella qualita`
