×
Namespaces

Variants
Actions

Avoid panics caused by deleting the VAS uplink stream before all buffers emptied (Known Issue)

From Nokia Developer Wiki
Jump to: navigation, search

Premature deletion of a VoIP Audio Service (VAS) uplink stream (CVoIPAudioUplinkStream) instance may cause a panic.

Article Metadata
Code ExampleTested with
Devices(s): Tested on Nokia 5630,
Nokia 5800
Compatibility
Platform(s): S60 3rd Edition, FP2
S60 5th Edition
S60 5th Edition
S60 3rd Edition FP2
Article
Keywords: CVoIPAudioUplinkStream, MVoIPUplinkObserver
Created: User:Kbwiki (20 Oct 2010)
Last edited: hamishwillee (12 Mar 2012)

Detailed description

After calling CVoIPAudioUplinkStream::Stop(), a VAS client should still be prepared to receive MVoIPUplinkObserver::EmptyBuffer() callbacks as VAS ensures that all recorded (and buffered) data is delivered.

Deleting the uplink stream immediately after calling Stop() causes a VoIPUplinkThreadMmfDevSoundProxy 1 panic.

Solution

A VAS client should proceed to delete the uplink stream only after receiving a MVoIPUplinkObserver::Event() callback with either KUplinkClosed or KUplinkError as an event type.

Additionally, after calling CVoIPAudioUplinkStream::Stop(), a client should not longer call CVoIPAudioUplinkStream::BufferEmptied() in response to MVoIPUplinkObserver::EmptyBuffer() callbacks.

The VoIPTestApp example application takes care of this by maintaining uplink/downlink state variables and only calling BufferEmptied() if the uplink is in 'streaming' state.

This page was last modified on 12 March 2012, at 06:57.
110 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×