|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#21 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Il suggerimento era appunto di usare libsox, aprire il file in lettura, ottenere il buffer in formato PCM e buttarlo su /dev/dsp
|
|
|
|
|
|
#22 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Altra alternativa usare il comando play o aplay per far suonare i file audio.
|
|
|
|
|
|
#23 | |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
(vedi resto del thread) |
|
|
|
|
|
|
#24 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
In tutte le librerie di alto livello c'è già una classe o funzione per far suonare file audio !!! Sia su KDE che su Gnome.
|
|
|
|
|
|
#25 | |
|
Member
Iscritto dal: Apr 2007
Città: Lecce
Messaggi: 227
|
Quote:
Devo importare qualche libreria particolare? Ho notato che sono comandi bash ma io sto scrivendo codice c. Si possono quindi richiamare da codice comandi di sistema? Scusa l'ignoranza ma sono completamente nuovo di linux/unix e sono ancora mooolto spaesato!!
__________________
MY PC CONFIGURATION: SCHEDA MADRE: ASROCK 4CORE-DUAL VSTA PROCESSORE: CONROE E6600 CORE DUO RAM: 1Gb Geil PC 3200 400MHz (2.5,4,4,8) ALI: ALLIED da 450WSCHEDA VIDEO: HD4850 Sapphire Design 512MB HARD DISK: Saegate 500Gb 7200Rpm MAST DVD LG LETTORE DVD LG |
|
|
|
|
|
|
#26 | ||
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Quote:
Poi non so esattamente cosa faccia questa chiamata: Codice:
sf_command (sf_fd, SFC_SET_UPDATE_HEADER_AUTO, NULL, SF_TRUE) ; [EDIT] Come non detto SFC_UPDATE_HEADER_XXX serve per scrivere un file wav aggiornando gli header, ma te non stai scrivendo un file. Ultima modifica di tomminno : 04-11-2008 alle 10:53. |
||
|
|
|
|
|
#27 | |
|
Member
Iscritto dal: Apr 2007
Città: Lecce
Messaggi: 227
|
Quote:
Allora tomminno, innanzitutto grazie. Poi, ho letto tutta la documentazione ed anche più volte ma ovviamente potrebbero essermi sfuggiti dei passaggi visto che non sono molto pratico. Cmq il file che ho postato è ciò a cui sono giunto dopo innumerevoli tentativi tra cui anche quello di considerare solo il campo format settato a zero. Ma anche facendo così il risultato non cambiava, poi da qualche raro snippet in rete ho visto che in realtà la struttura SF_INFO puoi anche non riempirla per niente o riempirla a piacere...sembra che in lettura non gliene freghi niente!! sf_command (sf_fd, SFC_SET_UPDATE_HEADER_AUTO, NULL, SF_TRUE) ; serve per aggiornare in automatico l'header del file in scrittura e l'avevo messa perchè pensavo che il problema potesse dipendere dal fatto che il file scritto potesse essere incompleto di header...ovviamente togliendola o mettendola non cambia nulla!! Maledizione!!!
__________________
MY PC CONFIGURATION: SCHEDA MADRE: ASROCK 4CORE-DUAL VSTA PROCESSORE: CONROE E6600 CORE DUO RAM: 1Gb Geil PC 3200 400MHz (2.5,4,4,8) ALI: ALLIED da 450WSCHEDA VIDEO: HD4850 Sapphire Design 512MB HARD DISK: Saegate 500Gb 7200Rpm MAST DVD LG LETTORE DVD LG |
|
|
|
|
|
|
#28 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Degli interi? Sei sicuro che la tua scheda audio supporti la riproduzione di PCM 32 bit interi? Io proverei usando gli short, sicuramente è supportato il PCM 16 bit. |
|
|
|
|
|
|
#29 | |
|
Member
Iscritto dal: Apr 2007
Città: Lecce
Messaggi: 227
|
Quote:
In effetti la mia inesperienza è venuta a galla quando ho visto che ci sono quattro versioni di read e non sapendo quale usare ho usato quella int. Cosa cambia tra le quattro? In realtà non capisco nemmeno come si possa racchiudere il contenuto di un file audio in un vettore di interi o di short o di double...la cosa mi è ignota. E nell'ignoranza ho usato int!!! Come faccio a sapere quale va bene?
__________________
MY PC CONFIGURATION: SCHEDA MADRE: ASROCK 4CORE-DUAL VSTA PROCESSORE: CONROE E6600 CORE DUO RAM: 1Gb Geil PC 3200 400MHz (2.5,4,4,8) ALI: ALLIED da 450WSCHEDA VIDEO: HD4850 Sapphire Design 512MB HARD DISK: Saegate 500Gb 7200Rpm MAST DVD LG LETTORE DVD LG |
|
|
|
|
|
|
#30 |
|
Member
Iscritto dal: Apr 2007
Città: Lecce
Messaggi: 227
|
Ragazzi tutti,
ho risolto il problema in ben due modi (in realtà molto simili). Il primo è usando aplay dopo aver scoperto e capito cosa fosse ALSA (si ringrazia cionci per il suggerimento) è bastato: Codice:
system("aplay prova_audio.wav");
Spero che questa discussione possa essere utile a qualcun'altro. Grazie a tutti.
__________________
MY PC CONFIGURATION: SCHEDA MADRE: ASROCK 4CORE-DUAL VSTA PROCESSORE: CONROE E6600 CORE DUO RAM: 1Gb Geil PC 3200 400MHz (2.5,4,4,8) ALI: ALLIED da 450WSCHEDA VIDEO: HD4850 Sapphire Design 512MB HARD DISK: Saegate 500Gb 7200Rpm MAST DVD LG LETTORE DVD LG |
|
|
|
|
|
#31 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Per sapere quale va bene devi conoscere le specifiche della scheda audio. Generalmente sono supportati il PCM a 8,16 e 24 bit a 1 o 2 canali. Usa sf_read_short e non dovresti avere problemi. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:57.




















