How to use post-processing

Change post-processing option

The Speech service can apply post-processing to recognition results before they're returned. You can control which post-processing option is used by setting the SpeechServiceResponse_PostProcessingOption property on the SpeechConfig instance used to create a SpeechRecognizer.

The following values are supported:

Value Description
TrueText Applies display formatting to recognition results, including punctuation and capitalization, to produce more readable output.
PostRefinement Improves accuracy for real-time transcription. Monolingual post-stream refinement runs a second recognition pass in parallel with real-time streaming, with no impact to first-token latency. Intermediate results stay low-latency, and only the final result for each segment is replaced. Multilingual post-stream refinement uses an LLM Speech streaming model instead of a parallel second pass to improve latency. Both modes are generally available. For more information, see Post-stream refinement and Speech service regions for differences in region availability.

Example: To enable TrueText post-processing:

speechConfig.SetProperty(PropertyId.SpeechServiceResponse_PostProcessingOption, "TrueText");

Change post-processing option

The Speech service can apply post-processing to recognition results before they're returned. You can control which post-processing option is used by setting the SpeechServiceResponse_PostProcessingOption property on the SpeechConfig instance used to create a SpeechRecognizer.

The following values are supported:

Value Description
TrueText Applies display formatting to recognition results, including punctuation and capitalization, to produce more readable output.
PostRefinement Improves accuracy for real-time transcription. Monolingual post-stream refinement runs a second recognition pass in parallel with real-time streaming, with no impact to first-token latency. Intermediate results stay low-latency, and only the final result for each segment is replaced. Multilingual post-stream refinement uses an LLM Speech streaming model instead of a parallel second pass to improve latency. Both modes are generally available. For more information, see Post-stream refinement and Speech service regions for differences in region availability.

Example: To enable TrueText post-processing:

speechConfig->SetProperty(PropertyId::SpeechServiceResponse_PostProcessingOption, "TrueText");

Change post-processing option

The Speech service can apply post-processing to recognition results before they're returned. You can control which post-processing option is used by setting the SpeechServiceResponse_PostProcessingOption property on the SpeechConfig instance used to create a SpeechRecognizer.

The following values are supported:

Value Description
TrueText Applies display formatting to recognition results, including punctuation and capitalization, to produce more readable output.
PostRefinement Improves accuracy for real-time transcription. Monolingual post-stream refinement runs a second recognition pass in parallel with real-time streaming, with no impact to first-token latency. Intermediate results stay low-latency, and only the final result for each segment is replaced. Multilingual post-stream refinement uses an LLM Speech streaming model instead of a parallel second pass to improve latency. Both modes are generally available. For more information, see Post-stream refinement and Speech service regions for differences in region availability.

Example: To enable TrueText post-processing:

speechConfig.SetProperty(common.SpeechServiceResponsePostProcessingOption, "TrueText")

Change post-processing option

The Speech service can apply post-processing to recognition results before they're returned. You can control which post-processing option is used by setting the SpeechServiceResponse_PostProcessingOption property on the SpeechConfig instance used to create a SpeechRecognizer.

The following values are supported:

Value Description
TrueText Applies display formatting to recognition results, including punctuation and capitalization, to produce more readable output.
PostRefinement Improves accuracy for real-time transcription. Monolingual post-stream refinement runs a second recognition pass in parallel with real-time streaming, with no impact to first-token latency. Intermediate results stay low-latency, and only the final result for each segment is replaced. Multilingual post-stream refinement uses an LLM Speech streaming model instead of a parallel second pass to improve latency. Both modes are generally available. For more information, see Post-stream refinement and Speech service regions for differences in region availability.

Example: To enable TrueText post-processing:

speechConfig.setProperty(PropertyId.SpeechServiceResponse_PostProcessingOption, "TrueText");

Change post-processing option

The Speech service can apply post-processing to recognition results before they're returned. You can control which post-processing option is used by setting the SpeechServiceResponse_PostProcessingOption property on the SpeechConfig instance used to create a SpeechRecognizer.

The following values are supported:

Value Description
TrueText Applies display formatting to recognition results, including punctuation and capitalization, to produce more readable output.
PostRefinement Improves accuracy for real-time transcription. Monolingual post-stream refinement runs a second recognition pass in parallel with real-time streaming, with no impact to first-token latency. Intermediate results stay low-latency, and only the final result for each segment is replaced. Multilingual post-stream refinement uses an LLM Speech streaming model instead of a parallel second pass to improve latency. Both modes are generally available. For more information, see Post-stream refinement and Speech service regions for differences in region availability.

Example: To enable TrueText post-processing:

speechConfig.setProperty(sdk.PropertyId.SpeechServiceResponse_PostProcessingOption, "TrueText");

Change post-processing option

The Speech service can apply post-processing to recognition results before they're returned. You can control which post-processing option is used by setting the SpeechServiceResponse_PostProcessingOption property on the SpeechConfig instance used to create a SpeechRecognizer.

The following values are supported:

Value Description
TrueText Applies display formatting to recognition results, including punctuation and capitalization, to produce more readable output.
PostRefinement Improves accuracy for real-time transcription. Monolingual post-stream refinement runs a second recognition pass in parallel with real-time streaming, with no impact to first-token latency. Intermediate results stay low-latency, and only the final result for each segment is replaced. Multilingual post-stream refinement uses an LLM Speech streaming model instead of a parallel second pass to improve latency. Both modes are generally available. For more information, see Post-stream refinement and Speech service regions for differences in region availability.

Example: To enable TrueText post-processing:

[speechConfig setPropertyTo:@"TrueText" byId:SPXSpeechServiceResponsePostProcessingOption];

Change post-processing option

The Speech service can apply post-processing to recognition results before they're returned. You can control which post-processing option is used by setting the SpeechServiceResponse_PostProcessingOption property on the SpeechConfig instance used to create a SpeechRecognizer.

The following values are supported:

Value Description
TrueText Applies display formatting to recognition results, including punctuation and capitalization, to produce more readable output.
PostRefinement Improves accuracy for real-time transcription. Monolingual post-stream refinement runs a second recognition pass in parallel with real-time streaming, with no impact to first-token latency. Intermediate results stay low-latency, and only the final result for each segment is replaced. Multilingual post-stream refinement uses an LLM Speech streaming model instead of a parallel second pass to improve latency. Both modes are generally available. For more information, see Post-stream refinement and Speech service regions for differences in region availability.

Example: To enable TrueText post-processing:

speechConfig.setPropertyTo("TrueText", by: SPXPropertyId.speechServiceResponsePostProcessingOption)

Change post-processing option

The Speech service can apply post-processing to recognition results before they're returned. You can control which post-processing option is used by setting the SpeechServiceResponse_PostProcessingOption property on the SpeechConfig instance used to create a SpeechRecognizer.

The following values are supported:

Value Description
TrueText Applies display formatting to recognition results, including punctuation and capitalization, to produce more readable output.
PostRefinement Improves accuracy for real-time transcription. Monolingual post-stream refinement runs a second recognition pass in parallel with real-time streaming, with no impact to first-token latency. Intermediate results stay low-latency, and only the final result for each segment is replaced. Multilingual post-stream refinement uses an LLM Speech streaming model instead of a parallel second pass to improve latency. Both modes are generally available. For more information, see Post-stream refinement and Speech service regions for differences in region availability.

Example: To enable TrueText post-processing:

speech_config.set_property(property_id=speechsdk.PropertyId.SpeechServiceResponse_PostProcessingOption, value="TrueText")

Change post-processing option

Post-processing options aren't configurable through the REST API. To use post-processing, use the Speech SDK.

Change post-processing option

Post-processing options aren't configurable through the Speech CLI. To use post-processing, use the Speech SDK.