sound.PlayFile

From Garry's Mod
Jump to: navigation, search
 sound.PlayFile( )

Contents

Description

Plays a file from GMod directory. You can find a list of all error codes here

For external file/stream playback, see sound.PlayURL.

BUG

This fails for looping .wav files in 3D mode.

Issue Tracker: #1752

BUG

This fails with unicode file names.

Issue Tracker: #2304

Arguments

string path

The path to the file to play.

Unlike other sound functions and structures, the path is relative to garrysmod/ instead of garrysmod/sound/

Arguments

string flags

Flags for the sound. Can be one or more of following, separated by a space (" "):

  • 3d - Makes the sound 3D, so you can set its position
  • mono - Forces the sound to have only one channel
  • noplay - Forces the sound not to play as soon as this function is called
  • noblock - Disables streaming in blocks. It is more resource-intensive, but it is required for IGModAudioChannel:SetTime.

If you don't want to use any of the above, you can just leave it as "".

Arguments

function callback

Callback function that is called as soon as the the stream is loaded. It has next arguments:
IGModAudioChannel soundchannel - The sound channel. Will be nil if an error occured.
number errorID - ID of an error if an error has occured. Will be nil, otherwise.
string errorName - Name of an error if an error has occured. Will be nil, otherwise.


Examples

Example

Plays a piece of music from Half-Life 2.

sound.PlayFile( "sound/music/hl2_song12_long.mp3", "noplay", function( station, errCode, errStr )
	if ( IsValid( station ) ) then
		station:Play()
	else
		print( "Error playing sound!", errCode, errStr )
	end
end )


Personal tools
Navigation