Tuesday, October 25, 2011

Android MediaPlayer crash

Problem

Ever wondered why your app isn't able to stream a radio stream on eg. HTC EVO 3D but works on almost every other android phone?
Does the following error message seem familiar?

10-20 10:47:03.024: INFO/NuHTTPDataSource(28325): connect to RADIO_URL
10-20 10:47:03.024: INFO/NuHTTPDataSource(28325): [Stagefright] RADIO_URL is not localhost
10-20 10:47:03.024: INFO/NuHTTPDataSource(28325): [Stagefright] do not use http proxy
10-20 10:47:04.556: INFO/TelephonyRegistry(257): notifyServiceState: 0 home TDC MOBIL (N/A) 23801 0 HSDPA CSS not supported -1 -1RoamInd: -1DefRoamInd: -1EriInd: -1EriMode: -1RadioPowerSv: falseEmergOnly: false
10-20 10:47:04.586: INFO/TelephonyRegistry(257): notifyDataConnection: state=2 isDataConnectivityPossible=true reason=null interfaceName=rmnet0 networkType=8
10-20 10:47:04.586: DEBUG/TelephonyRegistry(257): notifyDataConnection() state=2isDataConnectivityPossible()true, reason=null
10-20 10:47:04.586: DEBUG/TelephonyRegistry(257): broadcastDataConnectionStateChanged() state=CONNECTEDtypes=default,hipri,dun,supl, interfaceName=rmnet0, apn=wap
10-20 10:47:04.586: DEBUG/StatusBarPolicy(371): onDataConnectionStateChanged , state= 2, networkType= 8
10-20 10:47:04.586: DEBUG/StatusBarPolicy(371): mPhoneState = 0
10-20 10:47:04.586: DEBUG/StatusBarPolicy(371): onDataConnectionStateChanged , SystemProperties.get("net.gprs.data.connected")= 1
10-20 10:47:04.596: DEBUG/AutoSetting(539): receiver - intent: android.intent.action.SERVICE_STATE
10-20 10:47:04.596: DEBUG/AutoSetting(539): receiver - flag: Service state 0
10-20 10:47:04.616: DEBUG/AutoSetting(539): service - onStartCommand() action: com.htc.app.autosetting.timezoneupdate
10-20 10:47:04.616: DEBUG/AutoSetting(539): service - onStartCommand() Service state: 0
10-20 10:47:04.676: DEBUG/MobileDataStateTracker(257): replacing old mInterfaceName (rmnet0) with rmnet0 for supl
10-20 10:47:04.676: DEBUG/MobileDataStateTracker(257): replacing old mInterfaceName (rmnet0) with rmnet0 for dun
10-20 10:47:04.676: DEBUG/MobileDataStateTracker(257): replacing old mInterfaceName (rmnet0) with rmnet0 for hipri
10-20 10:47:04.766: INFO/HTTPStream(28325): GET /radio HTTP/1.1
10-20 10:47:04.766: INFO/HTTPStream(28325): Host: RADIO_URL
10-20 10:47:04.766: INFO/HTTPStream(28325): User-Agent: HTC Streaming Player htc_europe / 1.0 / htc_shooteru / 2.3.4
10-20 10:47:04.766: INFO/HTTPStream(28325):
10-20 10:47:05.076: WARN/NuHTTPDataSource(28325): Server did not give us the content length!
10-20 10:47:05.386: DEBUG/dalvikvm(28635): GC_CONCURRENT freed 430K, 49% free 2978K/5767K, external 0K/0K, paused 4ms+4ms
10-20 10:47:09.640: DEBUG/dalvikvm(26246): GC_EXPLICIT freed 30K, 53% free 3861K/8135K, external 2168K/4193K, paused 48ms
10-20 10:47:14.715: DEBUG/dalvikvm(410): GC_EXPLICIT freed 51K, 49% free 4704K/9223K, external 9341K/11368K, paused 104ms
10-20 10:47:18.679: WARN/MediaPlayer(28635): info/warning (1, 902)
10-20 10:47:18.699: DEBUG/MediaPlayer(28635): start() in
10-20 10:47:18.699: DEBUG/MediaPlayer(28635): [ 10-20 10:47:18.699 28325:0x6f4b F/AwesomePlayer ]
10-20 10:47:18.699: DEBUG/MediaPlayer(28635): frameworks/base/media/libstagefright/AwesomePlayer.cpp:1023 success
10-20 10:47:18.809: INFO/DEBUG(138): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
10-20 10:47:18.809: INFO/DEBUG(138): Build fingerprint: 'htc_europe/htc_shooteru/shooteru:2.3.4/GRJ22/105308.2:user/release-keys'
10-20 10:47:18.809: INFO/DEBUG(138): pid: 28325, tid: 28491 >>> /system/bin/mediaserver <<< 10-20 10:47:18.809: INFO/DEBUG(138): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr deadbaad 10-20 10:47:18.809: INFO/DEBUG(138): r0 00000027 r1 deadbaad r2 a0000000 r3 00000000 10-20 10:47:18.809: INFO/DEBUG(138): r4 00000001 r5 00000000 r6 a2f59309 r7 00000000 10-20 10:47:18.809: INFO/DEBUG(138): r8 40b27de4 r9 00022190 10 000003f5 fp 00006ea5 10-20 10:47:18.809: INFO/DEBUG(138): ip afd477a8 sp 40b27820 lr afd197e9 pc afd162b4 cpsr 60000030 10-20 10:47:18.809: INFO/DEBUG(138): d0 20333230313a7073 d1 632e726579616c75 10-20 10:47:18.809: INFO/DEBUG(138): d2 61747362696c2f63 d3 7468676972666563 10-20 10:47:18.809: INFO/DEBUG(138): d4 0061006900640065 d5 00790061006c0050 10-20 10:47:18.809: INFO/DEBUG(138): d6 0065005300720065 d7 0000000000760072 10-20 10:47:18.809: INFO/DEBUG(138): d8 0000000000000000 d9 0000000000000000 10-20 10:47:18.809: INFO/DEBUG(138): d10 0000000000000000 d11 0000000000000000 10-20 10:47:18.809: INFO/DEBUG(138): d12 0000000000000000 d13 0000000000000000 10-20 10:47:18.809: INFO/DEBUG(138): d14 0000000000000000 d15 0000000000000000 10-20 10:47:18.809: INFO/DEBUG(138): d16 3fe009b9c2ff0ecd d17 3ffff64a2c25e818 10-20 10:47:18.809: INFO/DEBUG(138): d18 4000000000000000 d19 3f636ba7b42fd0d8 10-20 10:47:18.809: INFO/DEBUG(138): d20 3f11566a863f87fd d21 bebbbd41844efd36 10-20 10:47:18.809: INFO/DEBUG(138): d22 3ff0000000000000 d23 3ff009b9c2ff0ecd 10-20 10:47:18.809: INFO/DEBUG(138): d24 3e66376972bea4d0 d25 0000000000000000 10-20 10:47:18.809: INFO/DEBUG(138): d26 0000000000000000 d27 0000000000000000 10-20 10:47:18.809: INFO/DEBUG(138): d28 0000000000000000 d29 0000000000000000 10-20 10:47:18.809: INFO/DEBUG(138): d30 0000000000000000 d31 0000000000000000 10-20 10:47:18.809: INFO/DEBUG(138): scr 60000010 10-20 10:47:18.890: INFO/DEBUG(138): #00 pc 000162b4 /system/lib/libc.so 10-20 10:47:18.890: INFO/DEBUG(138): #01 pc 00001462 /system/lib/liblog.so 10-20 10:47:18.890: INFO/DEBUG(138): #02 pc 000550da /system/lib/libstagefright.so 10-20 10:47:18.890: INFO/DEBUG(138): #03 pc 00055a16 /system/lib/libstagefright.so 10-20 10:47:18.890: INFO/DEBUG(138): #04 pc 0001a682 /system/lib/libmediaplayerservice.so 10-20 10:47:18.900: INFO/DEBUG(138): #05 pc 0001573e /system/lib/libmediaplayerservice.so 10-20 10:47:18.900: INFO/DEBUG(138): #06 pc 00039330 /system/lib/libmedia.so 10-20 10:47:18.900: INFO/DEBUG(138): #07 pc 00013828 /system/lib/libbinder.so 10-20 10:47:18.900: INFO/DEBUG(138): #08 pc 00016ace /system/lib/libbinder.so 10-20 10:47:18.900: INFO/DEBUG(138): #09 pc 00016f42 /system/lib/libbinder.so 10-20 10:47:18.900: INFO/DEBUG(138): #10 pc 0001c4a8 /system/lib/libbinder.so 10-20 10:47:18.900: INFO/DEBUG(138): #11 pc 0001d01c /system/lib/libutils.so 10-20 10:47:18.900: INFO/DEBUG(138): #12 pc 0001d572 /system/lib/libutils.so 10-20 10:47:18.900: INFO/DEBUG(138): #13 pc 00011e58 /system/lib/libc.so 10-20 10:47:18.900: INFO/DEBUG(138): #14 pc 00011a24 /system/lib/libc.so 10-20 10:47:18.900: INFO/DEBUG(138): code around pc: 10-20 10:47:18.900: INFO/DEBUG(138): afd16294 2c006824 e028d1fb b13368db c064f8df 10-20 10:47:18.900: INFO/DEBUG(138): afd162a4 44fc2401 4000f8cc 49124798 25002027 10-20 10:47:18.900: INFO/DEBUG(138): afd162b4 f7f57008 2106e9fc eb58f7f6 460aa901 10-20 10:47:18.900: INFO/DEBUG(138): afd162c4 f04f2006 95015380 95029303 eebef7f5 10-20 10:47:18.900: INFO/DEBUG(138): afd162d4 462aa905 f7f52002 f7f5eeca 2106e9e8 10-20 10:47:18.910: INFO/DEBUG(138): code around lr: 10-20 10:47:18.910: INFO/DEBUG(138): afd197c8 4a0e4b0d e92d447b 589c41f0 26004680 10-20 10:47:18.910: INFO/DEBUG(138): afd197d8 686768a5 f9b5e006 b113300c 47c04628 10-20 10:47:18.910: INFO/DEBUG(138): afd197e8 35544306 37fff117 6824d5f5 d1ef2c00 10-20 10:47:18.910: INFO/DEBUG(138): afd197f8 e8bd4630 bf0081f0 00028c58 ffffff64 10-20 10:47:18.910: INFO/DEBUG(138): afd19808 b086b570 f602fb01 9004460c a804a901 10-20 10:47:18.910: INFO/DEBUG(138): stack: 10-20 10:47:18.910: INFO/DEBUG(138): 40b277e0 afd43584 10-20 10:47:18.910: INFO/DEBUG(138): 40b277e4 0000c2d8 10-20 10:47:18.910: INFO/DEBUG(138): 40b277e8 000000b0 10-20 10:47:18.910: INFO/DEBUG(138): 40b277ec afd188b1 /system/lib/libc.so 10-20 10:47:18.910: INFO/DEBUG(138): 40b277f0 afd4362c 10-20 10:47:18.910: INFO/DEBUG(138): 40b277f4 afd435d8 10-20 10:47:18.910: INFO/DEBUG(138): 40b277f8 00000000 10-20 10:47:18.910: INFO/DEBUG(138): 40b277fc afd197e9 /system/lib/libc.so 10-20 10:47:18.910: INFO/DEBUG(138): 40b27800 00000001 10-20 10:47:18.910: INFO/DEBUG(138): 40b27804 40b27834 10-20 10:47:18.910: INFO/DEBUG(138): 40b27808 a2f59309 /system/lib/libstagefright.so 10-20 10:47:18.910: INFO/DEBUG(138): 40b2780c 00000000 10-20 10:47:18.910: INFO/DEBUG(138): 40b27810 40b27de4 10-20 10:47:18.910: INFO/DEBUG(138): 40b27814 afd18b0b /system/lib/libc.so 10-20 10:47:18.910: INFO/DEBUG(138): 40b27818 df002777 10-20 10:47:18.910: INFO/DEBUG(138): 40b2781c e3a070ad 10-20 10:47:18.910: INFO/DEBUG(138): #00 40b27820 40b2781c 10-20 10:47:18.910: INFO/DEBUG(138): 40b27824 00000001 10-20 10:47:18.910: INFO/DEBUG(138): 40b27828 a3053a76 /system/lib/libstagefright.so 10-20 10:47:18.910: INFO/DEBUG(138): 40b2782c 0000000e 10-20 10:47:18.910: INFO/DEBUG(138): 40b27830 40b2784c 10-20 10:47:18.910: INFO/DEBUG(138): 40b27834 fffffbdf 10-20 10:47:18.910: INFO/DEBUG(138): 40b27838 40b2784c 10-20 10:47:18.910: INFO/DEBUG(138): 40b2783c 40b2784c 10-20 10:47:18.910: INFO/DEBUG(138): 40b27840 a3053a76 /system/lib/libstagefright.so 10-20 10:47:18.910: INFO/DEBUG(138): 40b27844 afa01465 /system/lib/liblog.so 10-20 10:47:18.910: INFO/DEBUG(138): #01 40b27848 40b27c64 10-20 10:47:18.920: INFO/DEBUG(138): 40b2784c 6d617266 10-20 10:47:18.920: INFO/DEBUG(138): 40b27850 726f7765 10-20 10:47:18.920: INFO/DEBUG(138): 40b27854 622f736b 10-20 10:47:18.920: INFO/DEBUG(138): 40b27858 2f657361 10-20 10:47:18.920: INFO/DEBUG(138): 40b2785c 6964656d 10-20 10:47:18.920: INFO/DEBUG(138): 40b27860 696c2f61 10-20 10:47:18.920: INFO/DEBUG(138): 40b27864 61747362 10-20 10:47:18.920: INFO/DEBUG(138): 40b27868 72666567 10-20 10:47:18.920: INFO/DEBUG(138): 40b2786c 74686769 10-20 10:47:18.920: INFO/DEBUG(138): 40b27870 6577412f 10-20 10:47:18.920: INFO/DEBUG(138): 40b27874 656d6f73 10-20 10:47:18.920: INFO/DEBUG(138): 40b27878 79616c50 10-20 10:47:18.920: INFO/DEBUG(138): 40b2787c 632e7265 10-20 10:47:18.920: INFO/DEBUG(138): 40b27880 313a7070 10-20 10:47:18.920: INFO/DEBUG(138): 40b27884 20333230 10-20 10:47:18.920: INFO/DEBUG(138): 40b27888 63637573 10-20 10:47:18.920: INFO/DEBUG(138): 40b2788c 00737365 10-20 10:47:18.920: INFO/DEBUG(138): 40b27890 00022188 10-20 10:47:18.920: INFO/DEBUG(138): 40b27894 40b279b0 10-20 10:47:18.920: INFO/DEBUG(138): 40b27898 0002234c 10-20 10:47:18.920: INFO/DEBUG(138): 40b2789c 40b278a4 10-20 10:47:18.920: INFO/DEBUG(138): 40b278a0 a822424c 10-20 10:47:18.920: INFO/DEBUG(138): 40b278a4 00000000 10-20 10:47:18.920: INFO/DEBUG(138): 40b278a8 00000000 10-20 10:47:18.920: INFO/DEBUG(138): 40b278ac 00000000 10-20 10:47:18.930: INFO/DEBUG(138): 40b278b0 00000000 10-20 10:47:18.930: INFO/DEBUG(138): 40b278b4 00000000 10-20 10:47:18.930: INFO/DEBUG(138): 40b278b8 000003e8 10-20 10:47:18.930: INFO/DEBUG(138): 40b278bc 00000010 10-20 10:47:18.930: INFO/DEBUG(138): 40b278c0 00000004 10-20 10:47:18.930: INFO/DEBUG(138): 40b278c4 400110e4 10-20 10:47:18.930: INFO/DEBUG(138): 40b278c8 400110f4 10-20 10:47:18.930: INFO/DEBUG(138): 40b278cc ff76a836 10-20 10:47:18.930: INFO/DEBUG(138): 40b278d0 00000000 10-20 10:47:18.930: INFO/DEBUG(138): 40b278d4 00022188 10-20 10:47:18.930: INFO/DEBUG(138): 40b278d8 40b27980 10-20 10:47:18.930: INFO/DEBUG(138): 40b278dc 00000010 10-20 10:47:18.930: INFO/DEBUG(138): 40b278e0 00000000 10-20 10:47:18.930: INFO/DEBUG(138): 40b278e4 00000000 10-20 10:47:18.930: INFO/DEBUG(138): 40b278e8 00000002 10-20 10:47:18.930: INFO/DEBUG(138): 40b278ec 40b279b0 10-20 10:47:18.930: INFO/DEBUG(138): 40b278f0 40b27a3c 10-20 10:47:18.930: INFO/DEBUG(138): 40b278f4 a8216e7d /system/lib/libbinder.so 10-20 10:47:18.930: INFO/DEBUG(138): 40b278f8 00000002 10-20 10:47:18.930: INFO/DEBUG(138): 40b278fc 40b279b0 10-20 10:47:18.930: INFO/DEBUG(138): 40b27900 0000b9a0 10-20 10:47:18.930: INFO/DEBUG(138): 40b27904 40b2793c 10-20 10:47:18.930: INFO/DEBUG(138): 40b27908 40b2793c 10-20 10:47:18.930: INFO/DEBUG(138): 40b2790c a8115041 /system/lib/libutils.so 10-20 10:47:18.940: INFO/DEBUG(138): 40b27910 0000b990 10-20 10:47:18.940: INFO/DEBUG(138): 40b27914 0000b9a0 10-20 10:47:18.940: INFO/DEBUG(138): 40b27918 000271b0 10-20 10:47:18.940: INFO/DEBUG(138): 40b2791c 0000b1f0 10-20 10:47:18.940: INFO/DEBUG(138): 40b27920 00032420 10-20 10:47:18.940: INFO/DEBUG(138): 40b27924 0000a000 10-20 10:47:18.940: INFO/DEBUG(138): 40b27928 40b27a3c 10-20 10:47:18.940: INFO/DEBUG(138): 40b2792c a821cecc /system/lib/libbinder.so 10-20 10:47:18.940: INFO/DEBUG(138): 40b27930 40b27a04 10-20 10:47:18.940: INFO/DEBUG(138): 40b27934 afd13c11 /system/lib/libc.so 10-20 10:47:18.940: INFO/DEBUG(138): 40b27938 00000000 10-20 10:47:18.940: INFO/DEBUG(138): 40b2793c 40b279b0 10-20 10:47:18.940: INFO/DEBUG(138): 40b27940 40b27a04 10-20 10:47:18.940: INFO/DEBUG(138): 40b27944 a8213e89 /system/lib/libbinder.so 10-20 10:47:18.940: INFO/DEBUG(138): 40b27948 40b27a3c 10-20 10:47:18.940: INFO/DEBUG(138): 40b2794c afd14aed /system/lib/libc.so 10-20 10:47:18.940: INFO/DEBUG(138): 40b27950 00000000 10-20 10:47:18.940: INFO/DEBUG(138): 40b27954 a821ad41 /system/lib/libbinder.so 10-20 10:47:18.940: INFO/DEBUG(138): 40b27958 40b279b0 10-20 10:47:18.940: INFO/DEBUG(138): 40b2795c 00000001 10-20 10:47:18.940: INFO/DEBUG(138): 40b27960 00022188 10-20 10:47:18.940: INFO/DEBUG(138): 40b27964 40b279b0 10-20 10:47:18.950: INFO/DEBUG(138): 40b27968 40b27980 10-20 10:47:18.950: INFO/DEBUG(138): 40b2796c a821ada1 /system/lib/libbinder.so 10-20 10:47:18.950: INFO/DEBUG(138): 40b27970 40b279b0 10-20 10:47:18.950: INFO/DEBUG(138): 40b27974 a8217a4d /system/lib/libbinder.so 10-20 10:47:18.950: INFO/DEBUG(138): 40b27978 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b2797c ff76a836 10-20 10:47:18.950: INFO/DEBUG(138): 40b27980 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b27984 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b27988 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b2798c 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b27990 40b27c00 10-20 10:47:18.950: INFO/DEBUG(138): 40b27994 a921fb28 /system/lib/libmediaplayerservice.so 10-20 10:47:18.950: INFO/DEBUG(138): 40b27998 40b27b50 10-20 10:47:18.950: INFO/DEBUG(138): 40b2799c 40b27a3c 10-20 10:47:18.950: INFO/DEBUG(138): 40b279a0 40b27a98 10-20 10:47:18.950: INFO/DEBUG(138): 40b279a4 40b27c00 10-20 10:47:18.950: INFO/DEBUG(138): 40b279a8 40b27cf4 10-20 10:47:18.950: INFO/DEBUG(138): 40b279ac afd1a111 /system/lib/libc.so 10-20 10:47:18.950: INFO/DEBUG(138): 40b279b0 40b27c3c 10-20 10:47:18.950: INFO/DEBUG(138): 40b279b4 00027150 10-20 10:47:18.950: INFO/DEBUG(138): 40b279b8 0000001f 10-20 10:47:18.950: INFO/DEBUG(138): 40b279bc ffff0208 10-20 10:47:18.950: INFO/DEBUG(138): 40b279c0 40b27c00 10-20 10:47:18.950: INFO/DEBUG(138): 40b279c4 0000005b 10-20 10:47:18.950: INFO/DEBUG(138): 40b279c8 40b27a04 10-20 10:47:18.950: INFO/DEBUG(138): 40b279cc a8115041 /system/lib/libutils.so 10-20 10:47:18.950: INFO/DEBUG(138): 40b279d0 00010434 10-20 10:47:18.950: INFO/DEBUG(138): 40b279d4 0000bac8 10-20 10:47:18.950: INFO/DEBUG(138): 40b279d8 000014c0 10-20 10:47:18.950: INFO/DEBUG(138): 40b279dc 40002a00 10-20 10:47:18.950: INFO/DEBUG(138): 40b279e0 40b27a04 10-20 10:47:18.950: INFO/DEBUG(138): 40b279e4 40000020 10-20 10:47:18.950: INFO/DEBUG(138): 40b279e8 40b27a3c 10-20 10:47:18.950: INFO/DEBUG(138): 40b279ec afd294dd /system/lib/libc.so 10-20 10:47:18.950: INFO/DEBUG(138): 40b279f0 40b27a3c 10-20 10:47:18.950: INFO/DEBUG(138): 40b279f4 40b27a3c 10-20 10:47:18.950: INFO/DEBUG(138): 40b279f8 a921fb59 /system/lib/libmediaplayerservice.so 10-20 10:47:18.950: INFO/DEBUG(138): 40b279fc 40b27b50 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a00 40b27a3c 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a04 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a08 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a0c afd2955b /system/lib/libc.so 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a10 40b27a24 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a14 af906163 /system/lib/libcutils.so 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a18 afd4e708 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a1c a9216917 /system/lib/libmediaplayerservice.so 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a20 a921fb5d /system/lib/libmediaplayerservice.so 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a24 40b27b50 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a28 40b27af4 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a2c 40b27a98 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a30 40b27a3c 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a34 00027210 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a38 00000004 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a3c 2e332e32 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a40 00000034 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a44 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a48 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a4c 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a50 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a54 00000000 10-20 10:47:18.950: INFO/DEBUG(138): 40b27a58 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a5c 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a60 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a64 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a68 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a6c 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a70 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a74 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a78 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a7c 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a80 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a84 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a88 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a8c 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a90 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a94 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a98 5f637468 10-20 10:47:18.960: INFO/DEBUG(138): 40b27a9c 6f6f6873 10-20 10:47:18.960: INFO/DEBUG(138): 40b27aa0 75726574 10-20 10:47:18.960: INFO/DEBUG(138): 40b27aa4 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27aa8 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27aac 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ab0 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ab4 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ab8 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27abc 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ac0 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ac4 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ac8 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27acc 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ad0 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ad4 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ad8 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27adc 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ae0 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ae4 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27ae8 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27aec 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27af0 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27af4 00302e31 10-20 10:47:18.960: INFO/DEBUG(138): 40b27af8 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27afc 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b00 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b04 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b08 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b0c 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b10 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b14 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b18 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b1c 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b20 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b24 00000000 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b28 00000043 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b2c 000272c0 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b30 40011088 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b34 00000440 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b38 40b27bf4 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b3c 40b27bf0 10-20 10:47:18.960: INFO/DEBUG(138): 40b27b40 40b27c00 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b44 afd144ab /system/lib/libc.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b48 00000028 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b4c 00000027 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b50 40011088 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b54 40011088 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b58 40b27bf4 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b5c afd14ad1 /system/lib/libc.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b60 00026ff8 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b64 40b27bdc 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b68 40011088 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b6c a811a643 /system/lib/libutils.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b70 00026ff8 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b74 a811df1b /system/lib/libutils.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b78 00026fa0 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b7c 40b27bdc 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b80 00000000 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b84 40011088 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b88 40b27bdc 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b8c 40011088 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b90 0000b9b8 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b94 00000001 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b98 00000000 10-20 10:47:18.970: INFO/DEBUG(138): 40b27b9c a811a611 /system/lib/libutils.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27ba0 0000b9b8 10-20 10:47:18.970: INFO/DEBUG(138): 40b27ba4 40b27bdc 10-20 10:47:18.970: INFO/DEBUG(138): 40b27ba8 00000000 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bac a811d90b /system/lib/libutils.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bb0 40b27bdc 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bb4 a9227aa0 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bb8 00000000 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bbc a811d969 /system/lib/libutils.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bc0 40b27bdc 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bc4 a9214ed3 /system/lib/libmediaplayerservice.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bc8 00000000 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bcc a9217187 /system/lib/libmediaplayerservice.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bd0 0000002a 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bd4 00022190 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bd8 00000000 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bdc 40b27c0c 10-20 10:47:18.970: INFO/DEBUG(138): 40b27be0 0002f5c8 10-20 10:47:18.970: INFO/DEBUG(138): 40b27be4 40b27c08 10-20 10:47:18.970: INFO/DEBUG(138): 40b27be8 40b27c58 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bec 40b27de4 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bf0 40b27c0c 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bf4 a2f64739 /system/lib/libstagefright.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bf8 40b27c0c 10-20 10:47:18.970: INFO/DEBUG(138): 40b27bfc a2f64749 /system/lib/libstagefright.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27c00 40b27c0c 10-20 10:47:18.970: INFO/DEBUG(138): 40b27c04 a2f64969 /system/lib/libstagefright.so 10-20 10:47:18.970: INFO/DEBUG(138): 40b27c08 64757261 10-20 10:47:18.970: INFO/DEBUG(138): 40b27c0c 00000000 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c10 00000000 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c14 40b27c58 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c18 0002f5c0 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c1c 40b27c2c 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c20 40b27c5c 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c24 a2f64989 /system/lib/libstagefright.so 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c28 0002f5c0 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c2c 64757261 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c30 40b27c5c 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c34 40b27c70 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c38 a3084628 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c3c a2f59309 /system/lib/libstagefright.so 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c40 00000000 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c44 a2f64b8f /system/lib/libstagefright.so 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c48 40b27c54 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c4c ff76a836 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c50 40b27c80 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c54 0002db08 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c58 a3084628 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c5c a2f550dd /system/lib/libstagefright.so 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c60 a3054f35 /system/lib/libstagefright.so 10-20 10:47:18.980: INFO/DEBUG(138): 40b27c64 40b27c5c 10-20 10:47:19.520: WARN/HTTPStream(28325): HTTPStream::receive(): recv failed, errno = 4 (Interrupted system call) retry(0) 10-20 10:47:19.540: DEBUG/MediaPlayer(28635): start() out 10-20 10:47:19.540: INFO/MediaPlayer(28635): Info (1,902) 10-20 10:47:19.540: WARN/AudioSystem(28635): AudioFlinger server died! 10-20 10:47:19.540: WARN/IMediaDeathNotifier(28635): media server died 10-20 10:47:19.540: ERROR/MediaPlayer(28635): error (100, 0) 10-20 10:47:19.540: WARN/IMediaDeathNotifier(257): media server died 10-20 10:47:19.540: INFO/ServiceManager(135): service 'media.audio_flinger' died 10-20 10:47:19.540: INFO/ServiceManager(135): service 'media.player' died 10-20 10:47:19.540: INFO/ServiceManager(135): service 'media.camera' died 10-20 10:47:19.540: INFO/ServiceManager(135): service 'media.audio_policy' died 10-20 10:47:19.550: WARN/AudioSystem(257): AudioFlinger server died! 10-20 10:47:19.550: WARN/AudioSystem(257): AudioPolicyService server died! 10-20 10:47:19.600: ERROR/MediaPlayer(28635): Error (100,0)


Solution

After a lot of fiddling around I found that the key was the line
10-20 10:47:05.076: WARN/NuHTTPDataSource(28325): Server did not give us the content length!.
Even though it's just a warning, and even though it works on almost every phone, somehow the HTC EVO 3D fails to play sound.

So what can we do about this? Well there are 2 options.
  1. Add a content-length header on the server reply
  2. Add a custom header to the response and then feed it to MediaPlayer.

Since we already have loads of clients connected to our servers we didn't want them to suddenly break and thus creating more work for us, we decided to go with option 2. But how does one feed a header to MediaPlayer? Well we ended up using the idea of StreamProxy which basically is a local proxy which downloads the stream and is able to modify the headers which are then buffered and sent to the MediaPlayer. This way we also got a nice set of stream-bits that we could use to fetch the meta-data from without using multiple connections to the stream-server which should preserve some batteries as doing http requests is somewhat expensive on a phone. I haven't measured if and how much battery-life is gained by using 1 connection instead of polling form the server, but I sure do like that I now have full control of what goes into MediaPlayer!

Also as a sidenote to the content-header. I tried setting an 'unlimited' content-header eg. -1 or 0. The results were quite dissapointing.

Phone content-length = -1 content-length = 0 content-length = a_large_number
HTC 3D EVO Runs fine Stops at 0sec Runs fine
Other Android phones Doesn't run at all Stops at 0sec Runs fine


So your last question might be What is the maximun length of content-length?. Google told me 2TB, so I went with something around those numbers. FYI setting it to 3TB (I had to test) did in fact not work at all.

No comments:

Post a Comment