UltraSonic for Android (1.2.0.7 / 2013/07/20)

Discussion for the UltraSonic App for Android

Moderator: moderators

Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/02/10

Postby archrival » Sun Feb 10, 2013 8:20 pm

Minor release: 3.9.9.19

Sorry for all of the updates today, I have some free time... :)

This just fixes the null reference exception experienced by psmorgan and binds lockscreen controls to media buttons in settings. If I can reproduce the hang or I get a logcat, I'll try to fix that issue today if I have enough time.
archrival
 
Posts: 173
Joined: Wed May 26, 2010 6:02 am

Re: Updated Android Client for ICS/JB (3.9.9.18 / 2013/02/10

Postby psmorgan » Sun Feb 10, 2013 9:11 pm

archrival wrote:
psmorgan wrote:Hi,

I am experiencing an app crash when clicking on the Library button.
Logcat: http://pastebin.com/uwerXeMr

Phone: Galaxy S 3 running Slimrom's 4.2.1 RC 2.
The Subsonic server is running on a Raspberry Pi.

This occurs with both the latest 3.9.9.18 and also the Subsonic Media Stream on Google Play.
It only seems to happen clicking the "Library" button, but I can use ones such as "Recently Added" to listen to music, etc.

Is there anything I can try to stop this happening?


I have a fix for the issue, but you wouldn't see any artists. For some reason the call is returning null. I added a null check so the app won't crash, but I'm not sure why it is getting null data back. I'll have that in the next release. What does your folder structure look like in the web app?


Hi,
The updated version no longer crashes, but as you've said there is nothing listed in the Library now.

The folders are:
Music - /media/tb/Music

In the Music folder it's just the album name and then the songs.
psmorgan
 
Posts: 2
Joined: Sun Feb 10, 2013 4:54 pm

Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/02/10

Postby daneren2005 » Sun Feb 10, 2013 9:31 pm

People have reported the same problem to me. As far as I can tell it is a server problem not a client one, but I have no clue what the root issue is.

Sent from my HTC One X using Tapatalk 2
Developer of DSub for Android
daneren2005
 
Posts: 1709
Joined: Fri Jul 06, 2012 7:52 pm

Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/02/10

Postby daneren2005 » Sun Feb 10, 2013 11:19 pm

Some thing I noticed when trying to use your StreamProxy implementation: it uses downloadService.getCurrentPlaying().getSong().getSize(). The problem is I'm pretty sure that getSize in that context will return the size of the original file and not the size of the file which is being downloaded. This makes it so that if you have a different bitrate set it will continually wait for a much bigger file then it should be. This makes it so that the next file you go to play will never start if everything is being routed through the StreamProxy which is still waiting for a previous one to finish.

Edit: And the Content-Length isn't filled out by the server, so I'm not sure if there really is any way to tell exactly what the expected file size is going to be.
Developer of DSub for Android
daneren2005
 
Posts: 1709
Joined: Fri Jul 06, 2012 7:52 pm

Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/02/10

Postby rubbersoul » Sun Feb 10, 2013 11:45 pm

Ok, I think I got it this time

http://pastebin.com/mq4MZGJi
rubbersoul
 
Posts: 127
Joined: Thu Aug 18, 2011 2:27 pm

Re: Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/0

Postby archrival » Mon Feb 11, 2013 12:00 am

daneren2005 wrote:Some thing I noticed when trying to use your StreamProxy implementation: it uses downloadService.getCurrentPlaying().getSong().getSize(). The problem is I'm pretty sure that getSize in that context will return the size of the original file and not the size of the file which is being downloaded. This makes it so that if you have a different bitrate set it will continually wait for a much bigger file then it should be. This makes it so that the next file you go to play will never start if everything is being routed through the StreamProxy which is still waiting for a previous one to finish.

Edit: And the Content-Length isn't filled out by the server, so I'm not sure if there really is any way to tell exactly what the expected file size is going to be.


Yes. Content Length is being set with the idea that it will never change. That is why I assumed transcoding wouldn't work with the code as is. Now I have something else to look at.

Sent from my HTC6435LVW using Tapatalk 2
archrival
 
Posts: 173
Joined: Wed May 26, 2010 6:02 am

Re: Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/0

Postby archrival » Mon Feb 11, 2013 12:01 am

rubbersoul wrote:Ok, I think I got it this time

http://pastebin.com/mq4MZGJi


Yes. That is definitely telling me what is going on. Thanks. I will try to look into it this evening.


Sent from my HTC6435LVW using Tapatalk 2
archrival
 
Posts: 173
Joined: Wed May 26, 2010 6:02 am

Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/02/10

Postby daneren2005 » Mon Feb 11, 2013 1:21 am

Also when I try it this way it basically runs the buffer to 100% before it actually starts playing. Have you been experiencing that? I thought it was only supposed to buffer a small amount before it starts playing?
Developer of DSub for Android
daneren2005
 
Posts: 1709
Joined: Fri Jul 06, 2012 7:52 pm

Re: Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/0

Postby archrival » Mon Feb 11, 2013 1:43 am

daneren2005 wrote:Also when I try it this way it basically runs the buffer to 100% before it actually starts playing. Have you been experiencing that? I thought it was only supposed to buffer a small amount before it starts playing?


I have noticed that on some of the devices I have tested on. My phone and my TouchPad work perfectly. You can see in my screenshot, that is my phone. My Galaxy Tab 2 and my wife's Galaxy SIII both appear to buffer everything before playing. I will dig a little deeper.

Sent from my HTC6435LVW using Tapatalk 2
archrival
 
Posts: 173
Joined: Wed May 26, 2010 6:02 am

Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/02/10

Postby alphawave7 » Mon Feb 11, 2013 1:57 am

daneren2005 wrote:Also when I try it this way it basically runs the buffer to 100% before it actually starts playing.


Ya mean that wasn't intentional? LOL! I thought that was one of your tweaks to prevent the playback dropouts! :lol:
alphawave7
 
Posts: 1042
Joined: Thu Feb 11, 2010 9:54 am

Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/02/10

Postby daneren2005 » Mon Feb 11, 2013 1:57 am

I thought guessing the file size better would help but it still buffers the whole thing first. I use bitRate * duration * 1000 / 8 and it gives a pretty close approximation for me. Still not perfect but it now is being "done" at like 98% instead of like 45% like before.

Sent from my HTC One X using Tapatalk 2
Developer of DSub for Android
daneren2005
 
Posts: 1709
Joined: Fri Jul 06, 2012 7:52 pm

Re: Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/0

Postby daneren2005 » Mon Feb 11, 2013 1:59 am

alphawave7 wrote:
daneren2005 wrote:Also when I try it this way it basically runs the buffer to 100% before it actually starts playing.


Ya mean that wasn't intentional? LOL! I thought that was one of your tweaks to prevent the playback dropouts! :lol:

I gave it as an option on my own fork. I mean that eve without it this new method is doing that ;)

Sent from my HTC One X using Tapatalk 2
Developer of DSub for Android
daneren2005
 
Posts: 1709
Joined: Fri Jul 06, 2012 7:52 pm

Re: Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/0

Postby alphawave7 » Mon Feb 11, 2013 2:01 am

daneren2005 wrote:
alphawave7 wrote:
daneren2005 wrote:Also when I try it this way it basically runs the buffer to 100% before it actually starts playing.


Ya mean that wasn't intentional? LOL! I thought that was one of your tweaks to prevent the playback dropouts! :lol:

I gave it as an option on my own fork. I mean that eve without it this new method is doing that ;)

Sent from my HTC One X using Tapatalk 2


Yep, It did it to me, and I thought,,'whoa...it cached fast enough to not really notice the delay' and playback was perfect. :)
alphawave7
 
Posts: 1042
Joined: Thu Feb 11, 2010 9:54 am

Re: Updated Android Client for ICS/JB (3.9.9.19 / 2013/02/10

Postby archrival » Mon Feb 11, 2013 4:28 am

It appears someone else has noticed different devices buffering more before starting playback. They also created a bug with Google about it. :evil:
archrival
 
Posts: 173
Joined: Wed May 26, 2010 6:02 am

Re: Updated Android Client for ICS/JB (3.9.9.20 / 2013/02/10

Postby archrival » Mon Feb 11, 2013 4:44 am

Minor release: 3.9.9.20

Probably the last release for the day.

I decided to add an option to use StreamProxy and make the default false. Feel free to enable it if it works for you, but I will leave the default false until I feel it is more stable. That being said, I've done quite a bit to make it more stable and I would love some more feedback about these most recent changes. I was able to set a max bitrate and streaming works just fine. Transcoding hopefully will work in most cases as well. I've tried 5 different devices, all of them show slightly different behavior.

    HTC Droid DNA [Jelly Bean 4.1.1]
    HTC Evo 3D [Jelly Bean 4.2.1]
    HP TouchPad [Jelly Bean 4.1.2]
    Samsung Galaxy Tab 2 [Ice Cream Sandwich 4.0.4]
    Samsung Galaxy SIII [Jelly Bean 4.1.1]
    Toshiba Thrive [Jelly Bean 4.1.2]

I have tested this code on everything except the Thrive. My DNA performs the best and behaves like I would expect it to. Everything else works, just not the same as the DNA. Gotta love Android fragmentation...
archrival
 
Posts: 173
Joined: Wed May 26, 2010 6:02 am

PreviousNext

Return to UltraSonic for Android

Who is online

Users browsing this forum: No registered users and 3 guests