Hello,  I'm trying to integrate an OSS audio driver into Gingerbread
for a TI based device, (based on OMAP4). I've correctly (or what seems
to be) subclassed AudioHardwareBase and implemented the virtual
methods for my audio solution (most of them).  I've also added the the
changes to the bulid system to build my  changes into a libaudio as
well.

Everything builds fine, and the system starts up fine. There are
messages indicating my libaudio has been called and setup, ie:
*****************************************************************************************************
:~$ adb logcat AudioFlinger:V AudioService:V AudioHardware:V
AudioHardwareInterface:V AudioPolicyManagerBase:V *:S
--------- beginning of /dev/log/main
--------- beginning of /dev/log/system
D/AudioHardware( 1327): AudioHardware505() called. Opening RDONLY for
now
D/AudioHardware( 1327): AudioHardware505(): initialized.  REF_COUNT =
1
D/AudioHardware( 1327): initCheck() called.
D/AudioHardware( 1327): initCheck() called.
D/AudioHardwareInterface( 1327): setMode(NORMAL)
D/AudioHardware( 1327): setMasterVolume(1.000000) called
D/AudioHardware( 1327): openOutputStream(2, 0, 0, 0, 45224) called
D/AudioHardware( 1327): AudioStreamOut505() called
D/AudioHardware( 1327): set(0xb0c0, 2, 0, 0, 0) called
I/AudioFlinger( 1327): AudioFlinger's thread 0x13f88 ready to run
D/AudioHardware( 1327): setVoiceVolume(1.000000) called, NOT
IMPLEMENTED
D/AudioHardware( 1428): AudioHardware505() called. Opening RDONLY for
now
D/AudioHardware( 1428): AudioHardware505(): initialized.  REF_COUNT =
1
D/AudioHardware( 1428): initCheck() called.
D/AudioHardware( 1428): initCheck() called.
D/AudioHardwareInterface( 1428): setMode(NORMAL)
D/AudioHardware( 1428): setMasterVolume(1.000000) called
D/AudioHardware( 1428): openOutputStream(2, 0, 0, 0, 45224) called
D/AudioHardware( 1428): AudioStreamOut505() called
D/AudioHardware( 1428): set(0xb0c0, 2, 0, 0, 0) called
I/AudioFlinger( 1428): AudioFlinger's thread 0x13fb8 ready to run
D/AudioHardware( 1428): setVoiceVolume(1.000000) called, NOT
IMPLEMENTED
D/AudioHardware( 1428): setVoiceVolume(0.800000) called, NOT
IMPLEMENTED
D/AudioHardwareInterface( 1428): setMode(NORMAL)
W/AudioPolicyManagerBase( 1428): setPhoneState() setting same state 0
I/AudioService( 1448):   Remote Control
registerMediaButtonEventReceiver() for ComponentInfo{com.android.music/
com.android.music.MediaButtonIntentReceiver}
I/AudioService( 1448):  AudioFocus  requestAudioFocus() from
android.media.AudioManager@405a37b8com.android.music.MediaPlaybackService
$3@405a2618
I/AudioService( 1448):   Remote Control
registerMediaButtonEventReceiver() for ComponentInfo{com.android.music/
com.android.music.MediaButtonIntentReceiver}

*****************************************************************************************************


The issue is obviously I'm not getting any sound, but more
specifically I get messages that do not help debug when trying to play
a *.wav file with the native media player. For example:

*****************************************************************************************************
D/AndroidRuntime( 1756): >>>>>> AndroidRuntime START
com.android.internal.os.RuntimeInit <<<<<<
D/AndroidRuntime( 1756): CheckJNI is ON
D/dalvikvm( 1756): creating instr width table
D/AndroidRuntime( 1756): Calling main entry com.android.commands.am.Am
I/ActivityManager( 1448): Starting: Intent
{ act=com.android.music.PAYEBACK_VIEWER dat=file:///mnt/sdcard/
sine1000.wav flg=0x10000000
cmp=com.android.music/.MediaPlaybackActivity } from pid 1756
V/RenderScript_jni( 1553): surfaceDestroyed
D/AndroidRuntime( 1756): Shutting down VM
D/dalvikvm( 1756): GC_CONCURRENT freed 102K, 69% free 320K/1024K,
external 0K/0K, paused 0ms+0ms
D/jdwp    ( 1756): adbd disconnected
I/AudioService( 1448):   Remote Control
registerMediaButtonEventReceiver() for ComponentInfo{com.android.music/
com.android.music.MediaButtonIntentReceiver}
W/ASFDummyExtractor( 1428): ASF parser is not available
I/StagefrightPlayer( 1428): setDataSource('/mnt/sdcard/sine1000.wav')
D/AwesomePlayer( 1428): setDataSource_l(/mnt/sdcard/sine1000.wav)
E/MPEG4Extractor( 1428): both mdat,ftyp not found
I/AudioService( 1448):  AudioFocus  requestAudioFocus() from
android.media.AudioManager@405a37b8com.android.music.MediaPlaybackService
$3@405a2618
I/AudioService( 1448):   Remote Control
registerMediaButtonEventReceiver() for ComponentInfo{com.android.music/
com.android.music.MediaButtonIntentReceiver}
D/dalvikvm( 1448): GC_EXPLICIT freed 1277K, 47% free 4337K/8071K,
external 5268K/6579K, paused 43ms
I/gralloc ( 1448): Allocated 1024 x 600 fmt: 2 usage: 0x133
W/ASFDummyExtractor( 1428): ASF parser is not available
E/MPEG4Extractor( 1428): both mdat,ftyp not found
E/MetadataRetrieverClient( 1428): failed to extract an album art
W/ASFDummyExtractor( 1428): ASF parser is not available
E/MPEG4Extractor( 1428): both mdat,ftyp not found
E/MetadataRetrieverClient( 1428): failed to extract an album art
D/dalvikvm( 1728): GC_EXTERNAL_ALLOC freed 661K, 52% free 2861K/5959K,
external 2067K/2137K, paused 27m
*****************************************************************************************************


My best guess is that AudioService is not actually getting a request
to play the file, as I have debug messages in my libaudio that would
show up during a call through. This is confusing as I've made no
changes to the audio middleware other than swapping in a different
libaudio for interacting with the hardware. I would expect at the very
least some calls into my audio classes during an normal attempt to
play media.

Thanks for taking a look at this, and any help is greatly appreciated!


-kieran


-- 
unsubscribe: [email protected]
website: http://groups.google.com/group/android-porting

Reply via email to