Lync and Exchange will let you customise and import new recordings for various greetings, voice announcements, messages, etc.
Here are the respective requirements for the audio file formats. The source is hyperlinked or referenced beneath each item. Yes, some of this is a cut and paste job.
Before You Start
Just taking any old audio file and converting it as recommended/required below isn’t necessarily going to deliver an ideal or acceptable outcome. You might end up with sibilants (“ess-ing”) or quiet patches. Any commercial audio production house will be familiar with the tricks for phone production, but if you’re doing it yourself:
- convert it to mono
- compress the hell out of it. Dynamic range isn’t your friend for a music source or recording – and it can actively work against you if people can’t hear the quiet bits and hang up thinking they’ve been cut off (I kid you not)
- consider the use of a male voice in spoken word recordings, because their tone is going to generally be lower and more suited to the narrow bandwidth of a phone call
- for music on hold, realise that the file plays from the start each time and take advantage of that with embedded voice messages. Also make sure that the end and the start of the file go well together when it loops at the end of the file. Having said that, also try and avoid embedding messages that might aggravate a caller who’s on an extended hold. You don’t want them counting the number of times they looped through
- use silence appropriately. Depending upon the use, you’ll need to either strip any silence from the start and end, or ADD some:
- you’ll generally want hold music to start with a PUNCH or a fast build
- remember to leave perhaps 500mS of silence before messages to make sure the speech-path has been established before the message commences
- silence can be used to pad out the end of an Auto-Attendant or RGS menu to give the user more time to respond before Exchange or the RGS repeats itself or takes a default action
- if multiple sampling rates are acceptable (e.g. Lync MOH, RGS), experiment with a few different ones. (Read more on this below, under MOH)
- if you’re in AU or NZ, buy a copy of Australian Standard AS/NZS 4263:2003 – “Interactive voice response systems – User-interface – Dual tone multi frequency (DTMF) signalling”. It explains how you should phrase your Auto-Attendants and RGS messages, how many entries per level, how many levels, and that you should always say “zero” not “oh”. At $80 it’s a bit rich, but there’s a point to having standards, and I’m quite the consistency freak…
- LISTEN to the recording when you’re done – and on a lousy set of tiny speakers, not your best concert monitors
Lync Music On Hold – MOH
I can’t find a published standard from Microsoft for the Client-side MOH. Ken suggests a CBR or VBR WMA, mono or stereo, with a bitrate of up to 192kbps.
Don’t lose sight of the fact that you’re playing audio down a phone line, so there’s no point using your best broadcast-quality recordings. To reduce down-sampling effort and the resulting nasty scratchy audio artefacts I suggest a low, constant bit rate in mono.
To prove this point, we took our reference track (Pet Shop Boys – Left To My Own Devices) from the CD and converted it 3 ways:
- 44kHz sampling rate, 16bit, mono, saved as a 320kbps WMA. The file size was 19M!
- 44kHz sampling rate, 16bit, mono, saved as a 32kbps WMA. This was under 2M.
- 16kHz sampling rate, 16bit, mono, saved as a 16kbps WMA. This was just on 1M.
When we placed our test call on hold with the 320k file, CPU use on my quad-core x64 machine spiked to 30%, but quickly settled down to around 5%. The audio at the other end (a nearby CX600) sounded quite good. (Our test is a little tainted because this is going to be using wideband audio).
The 32kbps file resulted in a peak of 20% at the start, and the audio had a noticeable and displeasing level of artefacts.
We weren’t surprised to see the 16k file had the lowest CPU demand, but WERE pleased that the audio sounded much better than the file with twice as many samples. I’m guessing that in down-sampling the file, Lync’s simply throwing away ‘redundant’ samples, and it shows.
Once you’ve chosen and distributed the file, don’t forget to enable it for the users. EVEN IF YOU’RE NOT using a custom file, make sure you specify the location otherwise the users will be able to change it to their own – and that’s only going to end in laughter. Followed by tears:
set-csclientpolicy -identity global -enableclientmusiconhold $true –MusicOnHoldAudioFile "C:\Program Files (x86)\Microsoft Lync\Media\FunkyMohMusicFile.wma"
set-csclientpolicy -identity global -enableclientmusiconhold $true –MusicOnHoldAudioFile "C:\Program Files (x86)\Microsoft Lync\Media\DefaultHold.wma"
Lync Call Park
The Call Park application supports only Windows Media Audio (WMA) files for music on hold.
The recommended format is Media Audio 9, 44 kHz, 16 bits, Mono, CBR, 32 kbps. The converted file plays over the phone only at 16 kHz, even if it was recorded at 44 kHz.
[Lync CHM. Topic Last Modified: 2010-11-08]
Lync Announcements and Response Groups
The Announcement and Response Group applications support Wave (WAV) and WMA files for music and announcements. Announcements have the same audio file requirements as response group workflows.
You can use Windows Media audio (.wma) file format or wave (.wav) file format for unassigned number Announcements or for Response Group messages, on-hold music, or interactive voice response (IVR) questions.
Call Park, Response Group, and Announcement applications require that Windows Media Format Runtime is installed on Front End Servers running Windows Server 2008 R2 and Windows Server 2008. The Windows Media Format Runtime is required for Windows Media Audio (WMA) files that these applications play for announcements and music. The Windows Media Format Runtime is installed automatically when you run Setup, but it might require you to restart the computer. Therefore, we recommend that you install the runtime before you run Setup. You can install Windows Media Format Runtime from the command line, as follows.
%systemroot%\system32\dism.exe /online /add-package /packagepath:%windir%\servicing\Packages\Microsoft-Windows-Media-Format-Package~31bf3856ad364e35~amd64~~6.1.7601.17514.mum /ignorecheck
All wave files must meet the following requirements
- 8-bit or 16-bit file
- Linear pulse code modulation (LPCM), A-Law, or mu-Law format
- Mono or stereo
- 4MB or less
For the best performance of wave files, a 16 kHz, mono, 16-bit Wave file is recommended.
[Lync CHM. Topic Last Modified: 2010-11-08]
Lync Dial-In Conferencing Greetings
Lync Server 2010 does not support customisation of voice prompts and music for dial-in conferencing. However, if you have a strong business need that requires you to change the default audio files, see Microsoft Knowledge Base article 961177, “How to customize voice prompts or music files for dial-in audio conferencing in Microsoft Office Communications Server 2007 R2,” available at http://go.microsoft.com/fwlink/?LinkId=179684
Conferencing Attendant and Conferencing Announcement have the following requirements for music on hold, recorded name, and audio prompt files:
- Windows Media Audio (WMA) file format
- 16-bit mono
- 48 kbps 2-pass CBR (constant bit rate)
- Speech level at -24DB
[Lync CHM. Topic Last Modified: 2011-05-15 and TechNet]
Exchange 2007 UM – Greetings
Exchange Server 2007 voice prompts need to be in WAV format and the following attributes:
- Linear PCM (16 bit/sample)
- 8 kilohertz (kHz)
“If you do not use this specific format for the .wav file, an error will be generated stating that the source file is in an unsupported format. Although an error is generated, the error will not appear in Event Viewer.” (That would be too easy!)
Here’s a useful link pointing out how to manage custom audio prompts in Exchange 2007.
Exchange 2010 UM – Greetings
Thankfully the same format as 2007! Here’s a link to customising greetings in Exchange 2010.