|
@@ -1,5 +1,5 @@
|
|
|
|
|
|
-Strict
|
|
|
|
|
|
+SuperStrict
|
|
Rem
|
|
Rem
|
|
bbdoc: Audio/FreeAudio audio
|
|
bbdoc: Audio/FreeAudio audio
|
|
about:
|
|
about:
|
|
@@ -40,7 +40,7 @@ Import Pub.DirectX
|
|
|
|
|
|
Private
|
|
Private
|
|
|
|
|
|
-Const CLOG=False
|
|
|
|
|
|
+Const CLOG:Int=False
|
|
|
|
|
|
Public
|
|
Public
|
|
|
|
|
|
@@ -54,27 +54,27 @@ Type TFreeAudioSound Extends TSound
|
|
End Method
|
|
End Method
|
|
|
|
|
|
Method Play:TFreeAudioChannel( alloced_channel:TChannel )
|
|
Method Play:TFreeAudioChannel( alloced_channel:TChannel )
|
|
- Local channel:TFreeAudioChannel,fa_channel
|
|
|
|
|
|
+ Local channel:TFreeAudioChannel,fa_channel:Int
|
|
If alloced_channel
|
|
If alloced_channel
|
|
channel=TFreeAudioChannel( alloced_channel )
|
|
channel=TFreeAudioChannel( alloced_channel )
|
|
- If Not channel Return
|
|
|
|
|
|
+ If Not channel Return Null
|
|
fa_channel=channel.fa_channel
|
|
fa_channel=channel.fa_channel
|
|
EndIf
|
|
EndIf
|
|
fa_channel=fa_PlaySound(fa_sound,False,fa_channel)
|
|
fa_channel=fa_PlaySound(fa_sound,False,fa_channel)
|
|
- If Not fa_channel Return
|
|
|
|
|
|
+ If Not fa_channel Return Null
|
|
If channel And channel.fa_channel=fa_channel Return channel
|
|
If channel And channel.fa_channel=fa_channel Return channel
|
|
Return TFreeAudioChannel.CreateWithChannel( fa_channel )
|
|
Return TFreeAudioChannel.CreateWithChannel( fa_channel )
|
|
End Method
|
|
End Method
|
|
|
|
|
|
Method Cue:TFreeAudioChannel( alloced_channel:TChannel )
|
|
Method Cue:TFreeAudioChannel( alloced_channel:TChannel )
|
|
- Local channel:TFreeAudioChannel,fa_channel
|
|
|
|
|
|
+ Local channel:TFreeAudioChannel,fa_channel:Int
|
|
If alloced_channel
|
|
If alloced_channel
|
|
channel=TFreeAudioChannel( alloced_channel )
|
|
channel=TFreeAudioChannel( alloced_channel )
|
|
- If Not channel Return
|
|
|
|
|
|
+ If Not channel Return Null
|
|
fa_channel=channel.fa_channel
|
|
fa_channel=channel.fa_channel
|
|
EndIf
|
|
EndIf
|
|
fa_channel=fa_PlaySound( fa_sound,True,fa_channel )
|
|
fa_channel=fa_PlaySound( fa_sound,True,fa_channel )
|
|
- If Not fa_channel Return
|
|
|
|
|
|
+ If Not fa_channel Return Null
|
|
If channel And channel.fa_channel=fa_channel Return channel
|
|
If channel And channel.fa_channel=fa_channel Return channel
|
|
Return TFreeAudioChannel.CreateWithChannel( fa_channel )
|
|
Return TFreeAudioChannel.CreateWithChannel( fa_channel )
|
|
End Method
|
|
End Method
|
|
@@ -90,7 +90,7 @@ End Type
|
|
|
|
|
|
Type TFreeAudioChannel Extends TChannel
|
|
Type TFreeAudioChannel Extends TChannel
|
|
|
|
|
|
- Field fa_channel
|
|
|
|
|
|
+ Field fa_channel:Int
|
|
|
|
|
|
Method Delete()
|
|
Method Delete()
|
|
If fa_channel fa_FreeChannel fa_channel
|
|
If fa_channel fa_FreeChannel fa_channel
|
|
@@ -101,7 +101,7 @@ Type TFreeAudioChannel Extends TChannel
|
|
fa_channel=0
|
|
fa_channel=0
|
|
End Method
|
|
End Method
|
|
|
|
|
|
- Method SetPaused( paused )
|
|
|
|
|
|
+ Method SetPaused( paused:Int )
|
|
fa_SetChannelPaused fa_channel,paused
|
|
fa_SetChannelPaused fa_channel,paused
|
|
End Method
|
|
End Method
|
|
|
|
|
|
@@ -121,19 +121,19 @@ Type TFreeAudioChannel Extends TChannel
|
|
fa_SetChannelRate fa_channel,rate
|
|
fa_SetChannelRate fa_channel,rate
|
|
End Method
|
|
End Method
|
|
|
|
|
|
- Method Playing()
|
|
|
|
- Local status=fa_ChannelStatus( fa_channel )
|
|
|
|
|
|
+ Method Playing:Int()
|
|
|
|
+ Local status:Int=fa_ChannelStatus( fa_channel )
|
|
If status=FA_CHANNELSTATUS_FREE Return False
|
|
If status=FA_CHANNELSTATUS_FREE Return False
|
|
If status&FA_CHANNELSTATUS_STOPPED Return False
|
|
If status&FA_CHANNELSTATUS_STOPPED Return False
|
|
If status&FA_CHANNELSTATUS_PAUSED Return False
|
|
If status&FA_CHANNELSTATUS_PAUSED Return False
|
|
Return True
|
|
Return True
|
|
End Method
|
|
End Method
|
|
|
|
|
|
- Method Position()
|
|
|
|
|
|
+ Method Position:Int()
|
|
Return fa_ChannelPosition( fa_channel )
|
|
Return fa_ChannelPosition( fa_channel )
|
|
End Method
|
|
End Method
|
|
|
|
|
|
- Function CreateWithChannel:TFreeAudioChannel( fa_channel )
|
|
|
|
|
|
+ Function CreateWithChannel:TFreeAudioChannel( fa_channel:Int )
|
|
Local t:TFreeAudioChannel=New TFreeAudioChannel
|
|
Local t:TFreeAudioChannel=New TFreeAudioChannel
|
|
t.fa_channel=fa_channel
|
|
t.fa_channel=fa_channel
|
|
Return t
|
|
Return t
|
|
@@ -147,7 +147,7 @@ Type TFreeAudioAudioDriver Extends TAudioDriver
|
|
Return _name
|
|
Return _name
|
|
End Method
|
|
End Method
|
|
|
|
|
|
- Method Startup()
|
|
|
|
|
|
+ Method Startup:Int()
|
|
If _mode<>-1 Return fa_Init( _mode )<>-1
|
|
If _mode<>-1 Return fa_Init( _mode )<>-1
|
|
If fa_Init( 0 )<>-1 Return True
|
|
If fa_Init( 0 )<>-1 Return True
|
|
?Not MacOS
|
|
?Not MacOS
|
|
@@ -159,8 +159,8 @@ Type TFreeAudioAudioDriver Extends TAudioDriver
|
|
fa_Close
|
|
fa_Close
|
|
End Method
|
|
End Method
|
|
|
|
|
|
- Method CreateSound:TFreeAudioSound( sample:TAudioSample,flags )
|
|
|
|
- Local channels,bits
|
|
|
|
|
|
+ Method CreateSound:TFreeAudioSound( sample:TAudioSample,flags:Int )
|
|
|
|
+ Local channels:Int,bits:Int
|
|
|
|
|
|
Select sample.format
|
|
Select sample.format
|
|
?BigEndian
|
|
?BigEndian
|
|
@@ -175,10 +175,10 @@ Type TFreeAudioAudioDriver Extends TAudioDriver
|
|
sample=sample.Convert(SF_STEREO16LE)
|
|
sample=sample.Convert(SF_STEREO16LE)
|
|
?
|
|
?
|
|
End Select
|
|
End Select
|
|
- Local loop_flag
|
|
|
|
|
|
+ Local loop_flag:Int
|
|
If (flags & 1) loop_flag=-1
|
|
If (flags & 1) loop_flag=-1
|
|
channels=ChannelsPerSample[sample.format]
|
|
channels=ChannelsPerSample[sample.format]
|
|
- If Not channels Return
|
|
|
|
|
|
+ If Not channels Return Null
|
|
bits=8*BytesPerSample[sample.format]/channels
|
|
bits=8*BytesPerSample[sample.format]/channels
|
|
Local fa_sound:Byte Ptr=fa_CreateSound( sample.length,bits,channels,sample.hertz,sample.samples,loop_flag )
|
|
Local fa_sound:Byte Ptr=fa_CreateSound( sample.length,bits,channels,sample.hertz,sample.samples,loop_flag )
|
|
If CLOG WriteStdout "Generated FreeAudio sound "+Long(fa_sound)+"~n"
|
|
If CLOG WriteStdout "Generated FreeAudio sound "+Long(fa_sound)+"~n"
|
|
@@ -186,18 +186,18 @@ Type TFreeAudioAudioDriver Extends TAudioDriver
|
|
End Method
|
|
End Method
|
|
|
|
|
|
Method AllocChannel:TFreeAudioChannel()
|
|
Method AllocChannel:TFreeAudioChannel()
|
|
- Local fa_channel=fa_AllocChannel()
|
|
|
|
|
|
+ Local fa_channel:Int=fa_AllocChannel()
|
|
If fa_channel Return TFreeAudioChannel.CreateWithChannel( fa_channel )
|
|
If fa_channel Return TFreeAudioChannel.CreateWithChannel( fa_channel )
|
|
End Method
|
|
End Method
|
|
|
|
|
|
- Function Create:TFreeAudioAudioDriver( name$,Mode )
|
|
|
|
|
|
+ Function Create:TFreeAudioAudioDriver( name$,Mode:Int )
|
|
Local t:TFreeAudioAudioDriver=New TFreeAudioAudioDriver
|
|
Local t:TFreeAudioAudioDriver=New TFreeAudioAudioDriver
|
|
t._name=name
|
|
t._name=name
|
|
t._mode=Mode
|
|
t._mode=Mode
|
|
Return t
|
|
Return t
|
|
End Function
|
|
End Function
|
|
|
|
|
|
- Field _name$,_mode
|
|
|
|
|
|
+ Field _name$,_mode:Int
|
|
|
|
|
|
End Type
|
|
End Type
|
|
|
|
|