Click or drag to resize

VoiceResourcePlay Method (String)

Plays the specified file path and name.

Namespace:  VoiceElements.Client
Assembly:  VoiceElementsClient (in VoiceElementsClient.dll) Version: 8.6.4.0
Syntax
public TerminationCode Play(
	string filename
)

Parameters

filename
Type: SystemString
The path and file name you would like to play.

Return Value

Type: TerminationCode
A Termination Code indicating how the play ended. Typically, you will use this to determine what to do next.
Remarks
Supported File Types

Voice Elements supports a wide range of audio file types and formats, for a detailed list of these formats, see Supported Audio Codecs. Most of these formats that we recommend are Wave Files. You may need to convert your audio into one of these formats, depending on the source.

Telephony Sound Processing: Audio Quality

Before discussing converting your audio files, we need to point out that all audio transmitted over a telephony carrier is typically converted down to 8khz 8bit Mulaw (aka G711) quality in transmission (some countries use ALaw, and in addition to G711, G729 is also another codec that can be used). Therefore, higher quality files will not result in a better sounding connection. We also recommend converting your files to this codec to save conversion before tranmission every time. To play files of a different type, you may change the Voice Resource Codec Property to any of the supported codecs.

Converting Your Audio Files

There are several applications available that you can easily use to convert to 8khz 8bit Mulaw format from almost any other format. We have had good results with GoldWave, WavePad and Open Source Audacity. If you need to convert your files in real time (i.e. during a call), we recommend Open Source SOX.

FAQ: Audio Doesn't Sound Clear?

This is usually a codec mismatch. Either convert your files or change the Voice Resource Codec Property to the one in which your files were encoded.

FAQ: Can I Use MP3 Files?

Voice Elements does not support MP3 files, which are usually in a far higher quality than needed for telephony. See above on ways to convert your files to 8khz 8bit Mulaw.

Examples
The following sample code sets up a Channel Resource, Dials a Call, retrieves a Voice Resource, sets the Audio Codec to the recommended and plays two files.
public void DialOutAndPlay()
{
    // To get a channel, you must first get a link to a Telephony Server.  You may need to pass a username password here.
    TelephonyServer m_TelephonyServer = new TelephonyServer();

    // Get your channel resource from the server
    ChannelResource m_ChannelResource = m_TelephonyServer.GetChannel();

    // Example 1: Dial an oubound call
    string phoneNumber = "2135551212";
    m_ChannelResource.Dial(phoneNumber);

    // Get the voice resource and store in a variable for local use
    VoiceResource m_VoiceResource = m_ChannelResource.VoiceResource;

    // Set the codec to the desired audio format - This is our recommeded for all audio!
    m_VoiceResource.Codec = Codec.MULAW_8Khz_8Bit;

    // First, play an audio file to say hello to the caller
    m_VoiceResource.Play(@"C:\Audio\HelloCaller.wav");

    // Get digits from the caller
    TerminationCode terminationCode = m_VoiceResource.GetDigits();
    string m_Digits = m_VoiceResource.DigitBuffer;

    // First, play an audio file to say Thanks for the Digits
    m_VoiceResource.Play(@"C:\Audio\ThanksForDigits.wav");

    // Take your code from here ... 
}
See Also