This has been checked in to 210Cays

BR
Yury



Modified by:  yury.ramanov...@nokia.com<mailto:yury.ramanov...@nokia.com>

Reviewed by:

Date: 08/17/2010

Project: symbianMmf_wm

ErrorId: ou1cimx1#497122

Synopsis: FlashTV doesn't play

Overview: FlashTV doesn't have DRM capability, and consequently is helix engine 
in this case; Because of that RestrictedAudioOutput creation fails with 
KerrNoMemory. As a fallback option,  helix tries to create CAudioOutput and 
call SetSecureOutputL().  On 92ps1 SetSecureOutputL() call succeeds so 
CHXBaseAudionSession is initialised properly and playback works, but on 92 
SetSecureOutputL() leaves with KerrNotSupported , helix traps it and returns 
KerrNotSupported and CHXBaseAudionSession sets itself to CLOSED state -> that 
causes audio not to play.

Solution:   If RestrictedAudioOutput creation fails for plain content, this 
means client process doesn't have DRM capability, therefore
1) Helix will ignore all errors coming from 
CConfigurationComponentsFactory::CreateRestrictedAudioOutput() if the content 
is plain ( unprotected).
2) Helix will return error if RestrictedAudioOutput creation fails for 
DRM-protected content ( helix maps all errors to KErrNotSupported)
3) Helix will remove SetSecureOutputL() fallback. So if RestrictedAudioOutput 
API  fails for whatever reason,  the deprecated SetSecureOutputL() usage will 
not be attempted and the error will be returned
4) Added error reporting in CHXSymbianAudioSession::SetSecureOutput() in case 
if RestrictedAudioOutput API fails for protected files. Moved SetSecureOutput() 
call to CHXSymbianAudioSession::InitializeComplete().

Files Added:
None.

 << File: CHXSymbianAudioSession.cpp.diff.html >>  << File: 
CHXAudioOutputConfigUtil.cpp.diff.html >>  << File: 
CHXAudioOutputConfigUtil.h.diff.html >>  << File: 
CHXBaseAudioSession.cpp.diff.html >>
Files Modified:

/audio/device/platform/symbian/common/CHXAudioOutputConfigUtil.cpp
/audio/device/platform/symbian/common/CHXBaseAudioSession.cpp
/audio/device/platform/symbian/CHXSymbianAudioSession.cpp
/audio/device/pub/platform/symbian/CHXAudioOutputConfigUtil.h

Image Size and Heap Use impact: minor

Module Release testing : STIF ongoing.

Test case(s) Added  :  No.

Memory leak check performed : Yes. No new leaks introduced

Platforms and Profiles Build Verified:
helix-client-s60-52-mmf-mdf-dsp

Platforms and Profiles Functionality verified: armv5

Branch: 210Cays, 420Brizo, HEAD.


BR
Yury


_______________________________________________
Audio-dev mailing list
Audio-dev@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/audio-dev

Reply via email to