Main issue (i found out) is the first one I posted above, i.e. HAL doesn't 
set mixer controls as expected. 
And that I can't play the .mp3 I uploaded (I will try with a few other ones 
soon...). 

D/MediaPlaybackService(  632): Opening for playback: 
'content://media/external/audio/media/27'
V/MediaPlayerService(   75): Client(42) constructor
V/MediaPlayerService(   75): Create new client(42) from pid 632, uid 10013, 
V/MediaPlayerService(   75): setDataSource fd=14, offset=0, 
length=576460752303423487
V/MediaPlayerService(   75): st_dev  = 45831
V/MediaPlayerService(   75): st_mode = 32829
V/MediaPlayerService(   75): st_uid  = 1000
V/MediaPlayerService(   75): st_gid  = 1015
V/MediaPlayerService(   75): st_size = 3538496
V/MediaPlayerService(   75): calculated length = 3538496
V/MediaPlayerService(   75): player type = 3
V/MediaPlayerService(   75):  create StagefrightPlayer
V/AudioSink(   75): AudioOutput(4)
E/WVMExtractor(   75): Failed to open libwvm.so
V/MediaPlayerService(   75):  setDataSource
V/MediaPlayerService(   75): [42] setVideoSurfaceTexture(0x0)
V/MediaPlayerService(   75): [42] setAudioStreamType(3)
V/MediaPlayerService(   75): [42] prepareAsync
*V/MediaPlayerService(   75): [42] notify (0x2a020480, 100, 1, -2147483648)
E/MediaPlayer(  632): error (1, -2147483648)*

I can play .wav files, but to hear something I need to set the mixer 
controls manually using tinymix:

D/MediaPlaybackService(  632): Opening for playback: 
'content://media/external/audio/media/37'
V/MediaPlayerService(   75): [42] reset
V/MediaPlayerService(   75): Client(42) destructor pid = 632
V/MediaPlayerService(   75): disconnect(42) from pid 632
V/AudioSink(   75): close
V/MediaPlayerService(   75): Client(43) constructor
V/MediaPlayerService(   75): Create new client(43) from pid 632, uid 10013, 
V/MediaPlayerService(   75): setDataSource fd=13, offset=0, 
length=576460752303423487
V/MediaPlayerService(   75): st_dev  = 45831
V/MediaPlayerService(   75): st_mode = 32829
V/MediaPlayerService(   75): st_uid  = 1000
V/MediaPlayerService(   75): st_gid  = 1015
V/MediaPlayerService(   75): st_size = 1006528
V/MediaPlayerService(   75): calculated length = 1006528
V/MediaPlayerService(   75): player type = 3
V/MediaPlayerService(   75):  create StagefrightPlayer
V/AudioSink(   75): AudioOutput(4)
E/WVMExtractor(   75): Failed to open libwvm.so
V/MediaPlayerService(   75):  setDataSource
V/MediaPlayerService(   75): [43] setVideoSurfaceTexture(0x0)
V/MediaPlayerService(   75): [43] setAudioStreamType(3)
V/MediaPlayerService(   75): [43] prepareAsync
D/dalvikvm(  489): GC_CONCURRENT freed 397K, 9% free 6208K/6791K, paused 
3ms+4ms, total 54ms
V/MediaPlayerService(   75): [43] notify (0x2a020480, 5, 0, 0)
V/MediaPlayerService(   75): [43] notify (0x2a020480, 1, 0, 0)
V/MediaPlayerService(   75): setNextPlayer
...
[ playing song ]

Note the different "notify" messages for mp3, with respect to .wav
Will look into what they mean. If someone has a clue...

On Thursday, 14 February 2013 19:49:59 UTC+1, Glenn Kasten wrote:
>
> > I'd like to understand what PCM output is produced by the Android 
> MediaPlayer. Does it depend on the origin file being decoded (e.g. an 
> .mp3)? 
> > If it's not producing exactly what the PCM expects, I may get an error 
> from the player.
>
> Stagefright media framework decodes formats such as .mp3 to PCM, which is 
> passed to AudioFilnger via AudioTrack for sample rate conversion, 
> attenuation, and mixing.
> AudioFlinger then calls the HAL with mixed PCM.
> Due to AudioFlinger's involvement, the PCM seen by the HAL is not in 
> general exactly the same as the PCM that was decoded by Stagefright.
> However, it's still PCM, and is typically 44.1 or 48 kHz 16-bit signed 
> interleaved stereo for hardwired speakers/headphone out.
>
> On Thursday, November 8, 2012 5:42:21 AM UTC-8, ffxx68 wrote:
>>
>> Hi
>>
>> I'm trying to port a ICS implementation of ALSA audio to JB, or a tablet 
>> device, under this project:
>>
>> Mainly, I have the following to integrate (which I have the patch for 
>> ICS):
>>
>> external/alsa-lib
>> hardware/alsa_sound
>>
>> plus some other smaller fix around, but I want to understand first of all 
>> what to do with these two first. 
>>
>> For example, I have the some files with the same names in both 
>> hardware/alsa_sound and hardware/libhardware_legacy/
>> audio (from AOSP), but their content is very different in the two 
>> locations.
>>
>> If I keep the ones from hardware/alsa_sound, build fails.
>> If I copy them from hardware/libhardware_legacy/audio to 
>> hardware/alsa_sound, I can build but I get a crash during boot.
>>
>> Which one should I keep and compile? 
>> Once compiled, which libraries should I use from alsa_sound or 
>> libhardware_legacy/audio?
>>
>> Basically, I don't know the approach to follow, with the ALSA 
>> integration. I couldn't find any guide, or tutorial, so any help in that 
>> sense is welcome too.
>>
>> Thanks in advance
>> Fabio
>>
>

-- 
-- 
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-porting

--- 
You received this message because you are subscribed to the Google Groups 
"android-porting" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to android-porting+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to