android - MediaPlayer audio streaming fails on Galaxy Tab -
i have issue playing streaming* audio on galaxy tab (works on htc desire hd , nexus one). when create mediaplayer object, produces error this:
02-09 02:21:39.088: verbose/mediaplayer-jni(9325): native_setup 02-09 02:21:39.088: verbose/mediaplayer(9325): constructor 02-09 02:21:39.088: verbose/mediaplayer(9325): setlistener 02-09 02:21:39.092: info/mediaplayer(9325): uri is:http://147.83.39.86:3200/osgi/files/tts/1297185775715.ogg 02-09 02:21:39.092: info/mediaplayer(9325): path null 02-09 02:21:39.092: debug/mediaplayer(9325): couldn't open file on client side, trying server side 02-09 02:21:39.092: verbose/mediaplayer-jni(9325): setdatasource: path http://147.83.39.86:3200/osgi/files/tts/1297185775715.ogg 02-09 02:21:39.092: verbose/mediaplayer(9325): setdatasource(http://147.83.39.86:3200/osgi/files/tts/1297185775715.ogg) 02-09 02:21:39.092: error/mediaplayerservice(2392): failed create player object 02-09 02:21:39.092: error/mediaplayer(9325): unable to create media player 02-09 02:21:39.104: debug/mediaplayer(9325): create failed: 02-09 02:21:39.104: debug/mediaplayer(9325): java.io.ioexception: setdatasource failed.: status=0x80000000 02-09 02:21:39.104: debug/mediaplayer(9325): @ android.media.mediaplayer.setdatasource(native method) 02-09 02:21:39.104: debug/mediaplayer(9325): @ android.media.mediaplayer.setdatasource(mediaplayer.java:745) 02-09 02:21:39.104: debug/mediaplayer(9325): @ android.media.mediaplayer.setdatasource(mediaplayer.java:675) 02-09 02:21:39.104: debug/mediaplayer(9325): @ android.media.mediaplayer.create(mediaplayer.java:611) 02-09 02:21:39.104: debug/mediaplayer(9325): @ android.media.mediaplayer.create(mediaplayer.java:592) 02-09 02:21:39.104: debug/mediaplayer(9325): @ com.vodafone.inredis.movil.interfazweb.inrediswebviewclient.shouldoverrideurlloading(inrediswebviewclient.java:37)
and how create mediaplayer object, nothing weird:
uri temppath = uri.parse(url); player = mediaplayer.create(interfazweb, temppath); if (player != null){ player.start(); } else { log.e(tag, "no se puede abrir el audio:" + url); } return true;
and provide more information, can tested url passed, , can download native browser , play normally. can play desktop browser.
has anyboedy experienced problem mentioned device?
thanks in advance.
######## edit ##############i haven't solved issue yet, i've been researching bit, i'm downloading file in separate thread, saving temp file , opening mediaplayer
. produces kind of error, i'm suspecting of file folders , permissions, i'm not sure yet.
so have temp files can play galaxy's native player, not 1 create in code, , different piece of log trace, gives me no hint.
02-10 01:36:36.945: verbose/mediaplayer-jni(8371): native_setup 02-10 01:36:36.945: verbose/mediaplayer(8371): constructor 02-10 01:36:36.945: verbose/mediaplayer(8371): setlistener 02-10 01:36:36.948: verbose/mediaplayer-jni(8371): setdatasource: path /sdcard/audiotmp360988.ogg 02-10 01:36:36.948: verbose/mediaplayer(8371): setdatasource(/sdcard/audiotmp360988.ogg) 02-10 01:36:36.952: verbose/mediaplayer(8371): prepare 02-10 01:36:36.952: error/mediaplayerservice(2394): client::notify in 02-10 01:36:36.952: error/mediaplayer(8371): message received msg=1, ext1=0, ext2=0 02-10 01:36:36.952: verbose/mediaplayer(8371): prepared 02-10 01:36:36.952: verbose/mediaplayer(8371): signal application thread 02-10 01:36:36.952: error/mediaplayer(8371): callback application 02-10 01:36:36.952: error/mediaplayer(8371): callback 02-10 01:36:36.952: verbose/mediaplayer(8371): prepare complete - status=0 02-10 01:36:41.437: verbose/mediaplayer-jni(8371): native_finalize 02-10 01:36:41.437: verbose/mediaplayer-jni(8371): release 02-10 01:36:41.437: verbose/mediaplayer(8371): setlistener 02-10 01:36:41.437: verbose/mediaplayer(8371): disconnect 02-10 01:36:41.437: verbose/mediaplayer(8371): destructor 02-10 01:36:41.437: verbose/mediaplayer(8371): disconnect
come on, can't one!
wav , ogg audio streaming mediaplayer not work on samsung galaxy tab (with froyo). i've been testing, , used api demo (8), piece of code @ /demos/src/com/example/android/apis/media/mediaplayerdemo_audio.java
:
private void playaudio(integer media) { try { switch (media) { case local_audio: /** * todo: set path variable local audio file path. */ // path = "http://upload.wikimedia.org/wikipedia/commons/a/a9/tromboon-sample.ogg"; // path = "http://www.robtowns.com/music/blind_willie.mp3"; path = "http://www.nch.com.au/acm/8k16bitpcm.wav"; if (path == "") { // tell user provide audio file url. toast .maketext( mediaplayerdemo_audio.this, "please edit mediaplayer_audio activity, " + "and set path variable audio file path." + " audio file must stored on sdcard.", toast.length_long).show(); } mmediaplayer = new mediaplayer(); uri tempuri = uri.parse(path); try { mmediaplayer.setdatasource(this, tempuri); } catch (illegalstateexception e) { log.d(tag, "illegalstateexception: " + e.getmessage()); } catch (ioexception e) { log.d(tag, "ioexception: " + e.getmessage()); } catch (illegalargumentexception e) { log.d(tag, "illegalargumentexception: " + e.getmessage()); } catch (securityexception e) { log.d(tag, "securityexception: " + e.getmessage()); } mmediaplayer.setaudiostreamtype(audiomanager.stream_music); mmediaplayer.prepare(); mmediaplayer.start(); break; case resources_audio: /** * todo: upload audio file res/raw folder , provide * resid in mediaplayer.create() method. */ mmediaplayer = mediaplayer.create(this, r.raw.test_cbr); mmediaplayer.start(); } tx.settext("playing audio..."); } catch (exception e) { log.e(tag, "error: " + e.getmessage(), e); } }
i changed 3 lines defining path of file play, else on project. well, mp3 file play, both wav , ogg produce , exception similar 1 on question.
would else try? should assume there bug?
Comments
Post a Comment