Using the MSSContentExtract Log Analysis Tool

Using the MSSContentExtract Log Analysis Tool

In Microsoft Speech Application SDK (SASDK) use the MSSContentExtract command line tool to reconstruct audio (.wav) files originally generated from a user's utterance during an application session, and compile context free grammar (.cfg) files associated with the application. The reconstructed .wav files can then be associated with the specific phone call (application session) during which they were recorded, for call analysis purposes. The reconstructed .cfg file can be used, for example, to troubleshoot issues with a particular recognition.

Note  This topic assumes the MSSLogToText tool has first been used to convert the .etl file to a text file. The resulting text file contains the event data used to associate the .wav files with the session.

MSSContentExtract source [destination]

Part

Description

source

Specifies the path and file name of the log file to read.

destination

Specifies the folder to write to. If unspecified, the current folder is used.

To run MSSContentExtract

  1. Click Start, click All Programs, click Microsoft Speech Application SDK, click Debugging Tools, and click Microsoft Speech Application SDK Command Prompt.

  2. In the command window, type MSSContentExtract, followed by the log file name and the destination parameter if needed. Ensure any command line parameters are quoted if they contain spaces. Press ENTER.

Output

MSSContentExtract names the reconstructed .wav files by using the RequestID property of the ListenElementCompleteEvent associated with a particular utterance. There is generally one ListenElementCompleteEvent and one .wav file for each completed utterance.

To associate a .wav file with the application session during which it was created, search the text file that was generated with MSSLogToText, locate the ListenElementCompleteEvent containing the RequestID that matches the .wav file name, and examine its ApplicationInstance property.

The ApplicationInstance property identifies the application session. For more information about ApplicationInstance and RequestID, see the section on SpeechContext in CommonEvent.

Since MSSContextExtract is designed to work on only a single log file, audio data which spans multiple log files is not extracted. Audio data may span multiple log files when the log writing process happens in the middle of an utterance, splitting the audio, and the other call data, across two files. To access complete audio and call log data for calls across multiple .etl files, use the SASDK Log Analysis database import tools to build a SQL database and view the log data using Call Viewer.

Some of the generated audio files do not play in Windows Media Player. Speech Add-in for Microsoft Pocket Internet Explorer sends audio to Microsoft Speech Server in Cepstral format. MSSContentExtract.exe doesn't support AudioLogEvents with audio data in this format, so the .wav files generated are invalid and will not play in Windows Media Player.

Sample log file entry containing the RequestID

This sample is from a log file that captured the ListenElementCompleteEvent. This event is gathered under the DetailedCallAnalysis and ApplicationDevelopment filters.

For more information about setting filters for a Trace session, see Filtering Logged Events.

The .wav file that contains the audio for this utterance will be named "c2ce1cc9b4f5f86bd46440d81646db6e.wav". The ApplicationInstance will be listed under the SpeechContext entry.

2003/9/17 15:36:25:508 | 
https://MyServer/Speech/MySpeechApp.aspx | 
4a32bea5-f967-4c98-9261-dc31198532c0 | 
ListenElementCompleteEvent | No message for this event | 
RequestID = "c2ce1cc9b4f5f86bd46440d81646db6e"| 
RecoResult = <SML confidence="0.961" text="window" utteranceConfidence="0.961">
See Also

Logging and Analyzing Events | Event Logging Class Hierarchy