I've been running into the stuttering problem with my Samsung Vibrant (Galaxy S) running a custom 2.2 ROM (Bionix-v-1.3.1). I've had the stuttering issue with every ROM (Official 2.1 and many Unofficial 2.2) that I have tried. I checked and the read ahead on this ROM is set for 128 already and has Stagefright enabled by default. I did a logcat while streaming a song, the stutter seems to happen right around the DRM_E_FILEREADERROR:
Here it is:
I/FileUtil( 9567): Serialized object to /data/data/net.sourceforge.subsonic.andr
oidapp/cache/downloadstate.ser
I/DownloadServiceImpl( 9567): IDLE -> DOWNLOADING (DownloadFile (Intro))
I/DownloadServiceImpl( 9567): Buffering /mnt/sdcard/subsonic/music/0-F/Boris/200
3 Akuma no Uta/01-Intro.128.partial.mp3 (0/165120, false)
I/ActivityManager( 2973): Starting activity: Intent { cmp=net.sourceforge.subson
ic.androidapp/.activity.DownloadActivity }
I/XXXX ( 9567): 0 x 0
I/AudioService( 2973): Remote Control registerMediaButtonEventReceiver() for
ComponentInfo{net.sourceforge.subsonic.androidapp/net.sourceforge.subsonic.andr
oidapp.receiver.MediaButtonIntentReceiver}
D/RESTMusicService( 9567): Connections in pool: 5
I/RESTMusicService( 9567): Using URL
http://dls.endofinternet.net:1999/rest/getC
overArt.view?u=droid&p=enc:64726f6964&v=1.2.0&c=android&id=643a5c6d656469615c6d7
57369635c302d465c426f7269735c3230303320416b756d61206e6f205574615c466f6c6465722e6
a7067&size=288
D/dalvikvm( 9567): GC_EXTERNAL_ALLOC freed 13183 objects / 765264 bytes in 49ms
I/ActivityManager( 2973): Displayed activity net.sourceforge.subsonic.androidapp
/.activity.DownloadActivity: 359 ms (total 359 ms)
W/PowerManagerService( 2973): Timer 0x7->0x3|0x0
I/PowerManagerService( 2973): Ulight 7->3|0
I/DownloadServiceImpl( 9567): Buffering /mnt/sdcard/subsonic/music/0-F/Boris/200
3 Akuma no Uta/01-Intro.128.partial.mp3 (270336/165120, false)
I/DownloadServiceImpl( 9567): DOWNLOADING -> IDLE (DownloadFile (Intro))
D/MediaPlayerService( 2613): getPlayerType : url = /mnt/sdcard/subsonic/music/0-
F/Boris/2003 Akuma no Uta/01-Intro.128.partial.mp3, filePath = /mnt/sdcard/subso
nic/music/0-F/Boris/2003 Akuma no Uta/01-Intro.128.partial.mp3
E/MediaPlayerService( 2613): create PVPlayer
I/DownloadServiceImpl( 9567): IDLE -> PREPARING (DownloadFile (Intro))
E/ ( 2613): DRM_E_FILEREADERROR
E/ ( 2613): DRMTOOLS_OpenASF_File( inFileName, &((*in_oToolContext)->oMed
iaFile ))
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=19968
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=19968
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=19968
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=19968
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=19968
E/MediaPlayer( 9567): message received msg=200, ext1=1, ext2=44
W/MediaPlayer( 9567): info/warning (1, 44)
E/MediaPlayer( 9567): callback application
E/MediaPlayer( 9567): back from callback
I/MediaPlayer( 9567): Info (1,44)
E/MediaPlayer( 9567): message received msg=1, ext1=0, ext2=0
E/MediaPlayer( 9567): callback application
E/MediaPlayer( 9567): back from callback
I/DownloadServiceImpl( 9567): PREPARING -> PREPARED (DownloadFile (Intro))
E/PlayerDriver( 2613): Command PLAYER_GET_TRACK_FORMAT completed with an error o
r info -5
E/AudioSink( 2613): AudioOutput::open get audioFlinger!!
E/AudioSink( 2613): AudioOutput::open new R2VS!!
I/AudioR2VS( 2613): [R2VS] InitR2VS initBit[0xf]
I/DownloadServiceImpl( 9567): PREPARED -> STARTED (DownloadFile (Intro))
I/DownloadServiceLifecycleSupport( 9567): Serialized currentPlayingIndex: 0, cur
rentPlayingPosition: 0
D/ ( 2613): After GetDurationFromCompleteScan: clipDuration=19983
D/ ( 2613): Returning from GetDuration : duration=19983
D/AudioHardwareALSA( 2613):
D/AudioHardwareALSA( 2613): ALSA OPEN mode 0,device 2
I/AudioHardwareALSA( 2613): Try to open ALSA PLAYBACK device AndroidPlayback_Spe
aker_normal
I/AudioHardwareALSA( 2613): Initialized ALSA PLAYBACK device AndroidPlayback_Spe
aker_normal
D/AudioHardwareALSA( 2613): Set PLAYBACK PCM format to S16_LE (Signed 16 bit Lit
tle Endian)
D/AudioHardwareALSA( 2613): Using 2 channels for PLAYBACK.
D/AudioHardwareALSA( 2613): Set PLAYBACK sample rate to 44100 HZ
D/AudioHardwareALSA( 2613): Buffer size: 2048
D/AudioHardwareALSA( 2613): Latency: 46439
I/FileUtil( 9567): Serialized object to /data/data/net.sourceforge.subsonic.andr
oidapp/cache/downloadstate.ser
D/CancellableTask( 9567): Stopping thread for BufferTask (DownloadFile (Intro))
I/DownloadFile( 9567): Downloaded 841 KB of Intro
D/KIPC ( 2608): KIPC_SendMessage: len = 4, socket = 13
D/KIPC ( 2608): Sent 4 bytes
D/KIPCapp (10271): doSocketRead returning 2 bytes
D/KIPCapp (10271): Attempt to read 4 bytes
D/KIPCapp (10271): calling recv(40)
D/KIPCapp (10271): doSocketRead returning 4 bytes
D/KIPCapp (10271): Issuing MsgInd callback, len = 4
D/KIPCapp (10271): READ FD = 40
D/KIPCapp (10271): calling recv(40)
I/Kineto::main(10271): Kineto: WifiAppStatusCallback Enter ganMode: 80
D/LocationMasfClient( 2973): getNetworkLocation(): Returning cache location with
accuracy 48.0
I/DownloadFile( 9567): Downloaded 1.75 MB of Intro
D/WifiService( 2973): releaseWifiLockLocked: WifiLock{NetworkLocationProvider ty
pe=2 binder=android.os.Binder@485ba0d8}
I/DownloadFile( 9567): Downloaded 2.70 MB of Intro
I/DownloadFile( 9567): Downloaded 3.65 MB of Intro
I/DownloadFile( 9567): Downloaded 4.65 MB of Intro
I/DownloadFile( 9567): Downloaded 5.58 MB of Intro
W/PowerManagerService( 2973): Timer 0x3->0x1|0x0
I/PowerManagerService( 2973): Ulight 3->1|0
I/PowerManagerService( 2973): Setting target 2: cur=41.0 target=20 delta=-1.9090
909 nominalCurrentValue=41
I/PowerManagerService( 2973): Scheduling light animator!
I/PowerManagerService( 2973): Light Animator Finished curIntValue=20
E/MediaPlayer( 9567): message received msg=2, ext1=0, ext2=0
E/MediaPlayer( 9567): callback application
E/MediaPlayer( 9567): back from callback
I/DownloadServiceImpl( 9567): STARTED -> COMPLETED (DownloadFile (Intro))
I/DownloadServiceImpl( 9567): Requesting restart from 19969 of 581000
D/CancellableTask( 9567): Cancelling BufferTask (DownloadFile (Intro))
I/DownloadServiceImpl( 9567): COMPLETED -> IDLE (DownloadFile (Intro))
D/CancellableTask( 9567): Starting thread for BufferTask (DownloadFile (Intro))
I/DownloadServiceImpl( 9567): IDLE -> DOWNLOADING (DownloadFile (Intro))
I/DownloadServiceImpl( 9567): Buffering /mnt/sdcard/subsonic/music/0-F/Boris/200
3 Akuma no Uta/01-Intro.128.partial.mp3 (6856704/7021824, false)
I/DownloadFile( 9567): Downloaded 6.57 MB of Intro
I/DownloadServiceImpl( 9567): Buffering /mnt/sdcard/subsonic/music/0-F/Boris/200
3 Akuma no Uta/01-Intro.128.partial.mp3 (7176192/7021824, false)
I/DownloadServiceImpl( 9567): DOWNLOADING -> IDLE (DownloadFile (Intro))
D/MediaPlayerService( 2613): getPlayerType : url = /mnt/sdcard/subsonic/music/0-
F/Boris/2003 Akuma no Uta/01-Intro.128.partial.mp3, filePath = /mnt/sdcard/subso
nic/music/0-F/Boris/2003 Akuma no Uta/01-Intro.128.partial.mp3
E/MediaPlayerService( 2613): create PVPlayer
I/DownloadServiceImpl( 9567): IDLE -> PREPARING (DownloadFile (Intro))
E/ ( 2613): DRM_E_FILEREADERROR
E/ ( 2613): DRMTOOLS_OpenASF_File( inFileName, &((*in_oToolContext)->oMed
iaFile ))
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=453120
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=453120
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=453120
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=453120
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=453120
E/MediaPlayer( 9567): message received msg=200, ext1=1, ext2=44
W/MediaPlayer( 9567): info/warning (1, 44)
E/MediaPlayer( 9567): callback application
E/MediaPlayer( 9567): back from callback
E/MediaPlayer( 9567): message received msg=1, ext1=0, ext2=0
E/MediaPlayer( 9567): callback application
E/MediaPlayer( 9567): back from callback
I/DownloadServiceImpl( 9567): PREPARING -> PREPARED (DownloadFile (Intro))
I/DownloadServiceImpl( 9567): Restarting player from position 19969
E/AudioSink( 2613): AudioOutput::open get audioFlinger!!
E/AudioSink( 2613): AudioOutput::open new R2VS!!
I/AudioR2VS( 2613): [R2VS] InitR2VS initBit[0xf]
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=453120
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=453120
E/PlayerDriver( 2613): Command PLAYER_GET_TRACK_FORMAT completed with an error o
r info -5
D/ ( 2613): After GetDurationFromRandomScan: clipDuration=453120
E/MediaPlayer( 9567): message received msg=200, ext1=1, ext2=44
I/DownloadServiceImpl( 9567): PREPARED -> STARTED (DownloadFile (Intro))
W/MediaPlayer( 9567): info/warning (1, 44)
E/MediaPlayer( 9567): callback application
E/MediaPlayer( 9567): back from callback
E/MediaPlayer( 9567): message received msg=4, ext1=0, ext2=0
E/MediaPlayer( 9567): callback application
E/MediaPlayer( 9567): back from callback
I/DownloadServiceLifecycleSupport( 9567): Serialized currentPlayingIndex: 0, cur
rentPlayingPosition: 19969
I/FileUtil( 9567): Serialized object to /data/data/net.sourceforge.subsonic.andr
oidapp/cache/downloadstate.ser
I/MediaPlayer( 9567): Info (1,44)
I/MediaPlayer( 9567): Info (1,44)
D/CancellableTask( 9567): Stopping thread for BufferTask (DownloadFile (Intro))
D/dalvikvm( 9493): GC_EXPLICIT freed 401 objects / 13960 bytes in 45ms
D/ ( 2613): After GetDurationFromCompleteScan: clipDuration=453120
D/ ( 2613): Returning from GetDuration : duration=453120
I/DownloadFile( 9567): Downloaded 7.60 MB of Intro