Pages vues depuis 25/07/2007 : 25 320 328
Index du forum »» Création-Développement »» question multiview
void?DELoadSound(?char?*szFilename,?int?iID?){
//??ULONG?res;
//??uint32?longueur?;
??if?(?iID?>?0?){
????if?(?iID?257?){
??????if?(?DESoundExist(?iID?)?==?0?){
????????if(?DEFileExist(?szFilename?)?==?TRUE?){
??????????AESound[?iID?].ObjectPTR?=?IDataTypes->NewDTObject(?(STRPTR)szFilename,
????????????????????????????????????????????????????????????????DTA_GroupID,?GID_SOUND,
????????????????????????????????????????????????????????????????SDTA_Volume,?(uint16)64,
????????????????????????????????????????????????????????????????TAG_END?);
??????????if?(?AESound[?iID?].ObjectPTR?!=?NULL??){
????????????AESound[?iID?].Exist?=?TRUE;
????????????AESound[?iID?].Loop?=?FALSE;
????????????AESound[?iID?].Playing?=?FALSE;
????????????AESound[?iID?].Audio3D?=?0?;?//?This?sound?IS?NOT?a?3D?Audio?sound.
????????????AESound[?iID?].FileName?=?LCreateString(?256?);
????????????LCopyString(?szFilename,?AESound[?iID?].FileName?);
???????????}
?????????}
???????}
?????}
???}
?}
void?DEPlaySound(?int?iID?){
??struct?dtTrigger?mydtt;
??struct?VoiceHeader?*vh?=?NULL?;
??if?(?DESoundExist(?iID?)?==?1?){
????if?(?AESound[?iID?].Playing?>?0?){
??????DEStopSound(?iID?);
?????}
????mydtt.MethodID?????=?DTM_TRIGGER;?/*?Fill?in?the?dtTrigger?struct?*/
????mydtt.dtt_GInfo????=?NULL;
????mydtt.dtt_Function?=?STM_PLAY;
????mydtt.dtt_Data?????=?NULL;
????#if?defined(?__amigaos4__?)
????????AESound[?iID?].res?=?IDataTypes->GetDTAttrs(?AESound[?iID?].ObjectPTR,
???????????????????????????????????????????????????SDTA_SampleLength,?&AESound[?iID?].longueur,
???????????????????????????????????????????????????SDTA_VoiceHeader,?&vh,
???????????????????????????????????????????????????TAG_END?);
?????#else
????????AESound[?iID?].res?=?GetDTAttrs(?AESound[?iID?].ObjectPTR,
???????????????????????????????????????SDTA_SampleLength,?&AESound[?iID?].longueur,
???????????????????????????????????????SDTA_VoiceHeader,?&vh,
???????????????????????????????????????TAG_END?);
?????#endif
????AESound[?iID?].vh?=?vh;
????AESound[?iID?].samplesParSec?=?(int)vh->vh_SamplesPerSec;
????AESound[?iID?].duree?=?(50?*?AESound[?iID?].longueur?)/?AESound[?iID?].samplesParSec;????/*?50?ticks/sec??*/
????AESound[?iID?].dores?=?IDataTypes->DoDTMethodA(?AESound[?iID?].ObjectPTR,?NULL,?NULL,?&mydtt?);
????AESound[?iID?].Playing?=?1;
???}
?}
DELoadSound( "mon fichier.extension", 1 );
DEPlaySound( 1 );
while( !DELoop() ){
DESync();
}
DEDeleteSound( 1 );