SageTV Community

SageTV Community (http://forums.sagetv.com/forums/index.php)
-   SageTV v7 Customizations (http://forums.sagetv.com/forums/forumdisplay.php?f=47)
-   -   Android application: taSageTV (http://forums.sagetv.com/forums/showthread.php?t=47852)

Fonceur 04-17-2010 08:50 AM

Quote:

Originally Posted by brewston (Post 418294)
I didn't actually mean launch them in parallel, I just meant the entry screen for the app *just* shows Server or Client and pressing Server gets you to Media Centrer, Recordings etc or pressing Client gets you its Remote.

Oh I see... So you had me cut "one step/touch/tap" to reach the Remote control faster, and now want to add and extra step/touch/tap to reach the other areas... I fail to see the point... ;)

Besides, in .49 I made it so that tapping the Server text will actually bring you to the Server configuration. Same for the Client text if you're not actually connected.

Fonceur 04-17-2010 08:57 AM

Quote:

Originally Posted by Fuzzy (Post 418299)
I can browse the recordings, click on a recording, and get the detailed informatino screen on it, but it doesn't have any option to watch. Browsing music shows a "Play" button, but all it does is launch the playback on the client.

Actually, I have only enabled that testing for the Video section, not the Recording one... You would see an extra button similar to the Play button.

Quote:

Originally Posted by Fuzzy (Post 418300)
Also, another observation, the text on the droid is extremely small. I'm not sure if it's a screen res issue, but you SHOULD be able to test that by running with the 854x480 res in the emulator.

Right, I haven't looked at any kind of multi-resolution handling. I was hoping things would get rescaled automatically, but I guess not... ;)

Fuzzy 04-17-2010 09:00 AM

Quote:

Originally Posted by Fonceur (Post 418305)
Actually, I have only enabled that testing for the Video section, not the Recording one... You would see an extra button similar to the Play button.

I see.. the other problem is my video section is not being populated by anything at this moment. Not sure where teh hangup on that one is. Music and Pictures both show items, but video is a blank screen.
Quote:

Originally Posted by Fonceur (Post 418305)
Right, I haven't looked at any kind of multi-resolution handling. I was hoping things would get rescaled automatically, but I guess not... ;)

Ahh... Not sure, as I've never done any android dev'in, but I'm guessing theres a way to define fonts as a relative size, that way they are scaled. either way, there's only so many different android rez's out there, so it shouldn't be much work to do the selection (even if it's a manual config option).

Fonceur 04-17-2010 09:22 AM

Quote:

Originally Posted by Fuzzy (Post 418306)
I see.. the other problem is my video section is not being populated by anything at this moment.

Right, getting a few reports like that. I will need some log to figure out where it's choking (Android or SageTCPServer side).

Quote:

but I'm guessing theres a way to define fonts as a relative size, that way they are scaled.
Yes there must be. From a quick search, it seems I want to use scale-independent pixels (sp) or density-independent pixels (dip) instead of points (pt)... Or if that doesn't apply to text, something similar.

brainbone 04-17-2010 09:26 AM

Quote:

Originally Posted by Fonceur (Post 418126)
the lack of a Mac for development purposes is a big stumbling block... ;)

If you're using 64bit windows and an Intel cpu with VT-x, you could always install vmware player and then google for "osx 10.6.2 vmware player".

Fuzzy 04-17-2010 09:32 AM

Or just stick to android development.. ;-)

Fonceur 04-17-2010 10:23 AM

For the ones having video sync issues... If you are using a popular metadata extractor that puts a 12k+ characters description on each of your movies, which includes the whole credits and all, that is a problem... The newest SageTCPServer (1.2.5) should reduce some of those issues (i.e. it cuts at "Written by"). Another possibility is that you have a very big list (Photo would do the same), which will only be addressed once I break down the display like the Music list...

brewston 04-17-2010 03:06 PM

Fonceur

I dropped in SageTCPServer 1.2.5 as per your last post and tried accessing bits in the app. Still no joy. log file is attached

Power button works ok and I like the quick access to the remote..

<edit> log file not attached, its 8MB - I will PM you a link to it </edit>

Fonceur 04-17-2010 04:47 PM

Quote:

Originally Posted by brewston (Post 418355)
I dropped in SageTCPServer 1.2.5 as per your last post and tried accessing bits in the app. Still no joy. log file is attached

Well, that log file is with version 1.1.0, so it's sending the lists as XML strings while taSageTV is expecting JSON strings... So I suspect that you didn't stop SageTV and its service to upgrade... If you zip the log file, it might be possible to attach it to a post.

Fonceur 04-17-2010 04:55 PM

Version 0.50

- The text should scale better with the resolution.
- The streaming test and video playback is now available for the Recorded shows.

brewston 04-18-2010 01:23 AM

Quote:

Originally Posted by Fonceur (Post 418362)
Well, that log file is with version 1.1.0, so it's sending the lists as XML strings while taSageTV is expecting JSON strings... So I suspect that you didn't stop SageTV and its service to upgrade... If you zip the log file, it might be possible to attach it to a post.

I definitely stopped the service to get debug logging turned on ;) I pulled the the SageTCPServe.JAR file from self extracting .exe on the WIKI - is there another source for it ?

I will zip it next time

Tim

Fonceur 04-18-2010 02:22 AM

Quote:

Originally Posted by brewston (Post 418385)
I pulled the the SageTCPServe.JAR file from self extracting .exe on the WIKI - is there another source for it ?

I attached it to the post before yours just to be sure...

matt91 04-18-2010 10:08 AM

Just install v0.50, and it looks pretty neat. I primarily wanted to see if any of the streaming worked on my moto Droid, but doesn't look like it does at this point.

I get the "stream" button when I select a recording, and when i hit it, VLC definitely kicks off on the server. However, there is NO ACTIVITY in the server log for this.

I do get activity for other things:
Code:

Sun 4/18 11:42:06.521 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: Now listening for client connection requests.
Sun 4/18 11:42:06.525 [Thread-7@13d36ad] [[SageTCPServer-SageServer(local:9250)]]: Now listening for client connection requests.
Sun 4/18 11:42:07.299 [Thread-7@13d36ad] [[SageTCPServer-SageServer(local:9250)]]: Connected to client, waiting for messages...
Sun 4/18 11:42:07.300 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: Connected to client, waiting for messages...
Sun 4/18 11:42:14.744 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: Now listening for client connection requests.
Sun 4/18 11:42:14.745 [Thread-7@13d36ad] [[SageTCPServer-SageServer(local:9250)]]: Now listening for client connection requests.
Sun 4/18 11:42:26.918 [Ministry@17e89da] Ministry is waiting for 180 sec
Sun 4/18 11:42:36.668 [Thread-27@1cc7108] SJQ: Checking state of daemon threads...
Sun 4/18 11:42:46.143 [Thread-7@13d36ad] [[SageTCPServer-SageServer(local:9250)]]: Connected to client, waiting for messages...
Sun 4/18 11:42:46.146 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: Connected to client, waiting for messages...
Sun 4/18 11:44:36.666 [Thread-27@1cc7108] SJQ: Checking state of daemon threads...
Sun 4/18 11:44:43.488 [AsyncWatch@bd7a55] VideoFrame.watch(A[1621481,504590,"1984",0@1017.18:17,3])
Sun 4/18 11:44:43.488 [AsyncWatch@bd7a55] watchThisFile=MediaFile[id=504589 A[1621481,504590,"1984",0@1017.18:17,3] host=house-server encodedBy= format=MP3 0:03:31 128 kbps [#0 Audio[MP3 44100 Hz 2 channels 128 kbps]] C:\MP3s\Van Halen\1984\Van Halen 03 Panama.mp3, Seg0[Sat 10/17 18:17:46.864-Sat 10/17 18:21:18.660]]
Sun 4/18 11:44:43.489 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: EXCEPTION java.lang.NullPointerException AT gkusnick.sagetv.api.WidgetAPI$List.size(WidgetAPI.java:1776)

Sun 4/18 11:44:43.489 [AsyncWatch@bd7a55] Watch airing is a file & over, do that instead dvd=false
Sun 4/18 11:44:43.489 [Thread-8@bd33ec] java.util.AbstractList$Itr.hasNext(Unknown Source)

Sun 4/18 11:44:43.489 [AsyncWatch@bd7a55] PooledThread ended w/ an exception: java.lang.NullPointerException
Sun 4/18 11:44:43.489 [Thread-8@bd33ec] gkusnick.sagetv.api.WidgetAPI.FindWidget(WidgetAPI.java:486)

Sun 4/18 11:44:43.490 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: Show ID: 504589
Sun 4/18 11:45:04.288 [AsyncWatch@1daec48] VideoFrame.watch(A[1621481,504590,"1984",0@1017.18:17,3])
Sun 4/18 11:45:04.288 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: EXCEPTION java.lang.NullPointerException AT gkusnick.sagetv.api.WidgetAPI$List.size(WidgetAPI.java:1776)

Sun 4/18 11:45:04.288 [AsyncWatch@1daec48] watchThisFile=MediaFile[id=504589 A[1621481,504590,"1984",0@1017.18:17,3] host=house-server encodedBy= format=MP3 0:03:31 128 kbps [#0 Audio[MP3 44100 Hz 2 channels 128 kbps]] C:\MP3s\Van Halen\1984\Van Halen 03 Panama.mp3, Seg0[Sat 10/17 18:17:46.864-Sat 10/17 18:21:18.660]]
Sun 4/18 11:45:04.288 [Thread-8@bd33ec] java.util.AbstractList$Itr.hasNext(Unknown Source)

Sun 4/18 11:45:04.289 [AsyncWatch@1daec48] Watch airing is a file & over, do that instead dvd=false
Sun 4/18 11:45:04.289 [Thread-8@bd33ec] gkusnick.sagetv.api.WidgetAPI.FindWidget(WidgetAPI.java:486)

Sun 4/18 11:45:04.289 [AsyncWatch@1daec48] PooledThread ended w/ an exception: java.lang.NullPointerException
Sun 4/18 11:45:04.289 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: Show ID: 504589
Sun 4/18 11:45:16.611 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: EXCEPTION java.lang.NullPointerException AT gkusnick.sagetv.api.WidgetAPI$List.size(WidgetAPI.java:1776)

Sun 4/18 11:45:16.611 [AsyncWatch@ad7a43] VideoFrame.watch(A[1621481,504590,"1984",0@1017.18:17,3])
Sun 4/18 11:45:16.611 [Thread-8@bd33ec] java.util.AbstractList$Itr.hasNext(Unknown Source)

Sun 4/18 11:45:16.612 [AsyncWatch@ad7a43] watchThisFile=MediaFile[id=504589 A[1621481,504590,"1984",0@1017.18:17,3] host=house-server encodedBy= format=MP3 0:03:31 128 kbps [#0 Audio[MP3 44100 Hz 2 channels 128 kbps]] C:\MP3s\Van Halen\1984\Van Halen 03 Panama.mp3, Seg0[Sat 10/17 18:17:46.864-Sat 10/17 18:21:18.660]]
Sun 4/18 11:45:16.612 [Thread-8@bd33ec] gkusnick.sagetv.api.WidgetAPI.FindWidget(WidgetAPI.java:486)

Sun 4/18 11:45:16.612 [AsyncWatch@ad7a43] Watch airing is a file & over, do that instead dvd=false
Sun 4/18 11:45:16.612 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: Show ID: 504589
Sun 4/18 11:45:16.612 [AsyncWatch@ad7a43] PooledThread ended w/ an exception: java.lang.NullPointerException
Sun 4/18 11:45:22.769 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: EXCEPTION java.lang.NullPointerException AT gkusnick.sagetv.api.WidgetAPI$List.size(WidgetAPI.java:1776)

Sun 4/18 11:45:22.769 [Thread-8@bd33ec] java.util.AbstractList$Itr.hasNext(Unknown Source)

Sun 4/18 11:45:22.769 [AsyncWatch@c8774] VideoFrame.watch(A[491090,491089,"01 Symphony No. 9 (Scherzo)",0@1013.17:27,1])
Sun 4/18 11:45:22.769 [Thread-8@bd33ec] gkusnick.sagetv.api.WidgetAPI.FindWidget(WidgetAPI.java:486)

Sun 4/18 11:45:22.770 [AsyncWatch@c8774] watchThisFile=MediaFile[id=491088 A[491090,491089,"01 Symphony No. 9 (Scherzo)",0@1013.17:27,1] host=house-server encodedBy= format=Quicktime 0:01:22 126 kbps [#0 Audio[AAC 44100 Hz 2 channels  idx=0 und]] C:\MP3s\iTunes\iTunes Music\Ludwig van Beethoven, composer. Seattle\Unknown Album\01 Symphony No. 9 (Scherzo).m4a, Seg0[Mon 10/13 17:27:34.518-Mon 10/13 17:28:56.718]]
Sun 4/18 11:45:22.770 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: Show ID: 491088
Sun 4/18 11:45:22.770 [AsyncWatch@c8774] Watch airing is a file & over, do that instead dvd=false
Sun 4/18 11:45:22.770 [AsyncWatch@c8774] PooledThread ended w/ an exception: java.lang.NullPointerException
Sun 4/18 11:45:26.915 [Ministry@17e89da] Ministry is waiting for 180 sec
Sun 4/18 11:45:41.688 [Thread-7@13d36ad] [[SageTCPServer-SageServer(local:9250)]]: Now listening for client connection requests.
Sun 4/18 11:45:41.689 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: Now listening for client connection requests.
Sun 4/18 11:45:42.312 [Thread-7@13d36ad] [[SageTCPServer-SageServer(local:9250)]]: Connected to client, waiting for messages...
Sun 4/18 11:45:42.320 [Thread-8@bd33ec] [[SageTCPServer-SageServer(001d6a4cf6b9:9260)]]: Connected to client, waiting for messages...

I left the default streaming options, and selected Http and a port of 8000. I don't recall setting these anywhere on the phone, though, so not sure if I missed something.

thanks
matt

Fonceur 04-18-2010 10:34 AM

Quote:

Originally Posted by matt91 (Post 418420)
I get the "stream" button when I select a recording, and when i hit it, VLC definitely kicks off on the server.

You could launch another instance of VLC on your network and using the "open a network stream" check if it's streaming fine there. Just use http://MachineIP:8000 or rtsp://MachineIP:8000/stream.sdp as appropriate.

Quote:

However, there is NO ACTIVITY in the server log for this.
Could you zip and post the whole log please? If VLC is being launched, you probably missed that part in the log...

Quote:

EXCEPTION java.lang.NullPointerException AT gkusnick.sagetv.api.WidgetAPI$List.size(WidgetAPI.java:1776)
You seem to have a lot of those, what is the timestamp on your gkusnick.jar file?

Quote:

I left the default streaming options, and selected Http and a port of 8000. I don't recall setting these anywhere on the phone, though, so not sure if I missed something.
They are being provided by SageTCPServer, so you don't need to set them up yourself.

matt91 04-18-2010 12:10 PM

1 Attachment(s)
Quote:

Originally Posted by Fonceur (Post 418426)
You could launch another instance of VLC on your network and using the "open a network stream" check if it's streaming fine there. Just use http://MachineIP:8000 or rtsp://MachineIP:8000/stream.sdp as appropriate.

Yup, sure enough it's streaming on that port.

Quote:

Could you zip and post the whole log please? If VLC is being launched, you probably missed that part in the log...
Sure, attached.

Quote:

You seem to have a lot of those, what is the timestamp on your gkusnick.jar file?
Monday, December 28, 2009, 9:47:00 PM

Quote:

They are being provided by SageTCPServer, so you don't need to set them up yourself.
OK, thanks.

Fonceur 04-18-2010 02:12 PM

Quote:

Originally Posted by matt91 (Post 418439)
Yup, sure enough it's streaming on that port.

OK, so it is available on the network. On the Android phone, can you open up the Media Player directly and select a network stream or such for testing?

Quote:

Sure, attached.
Unfortunately you have the debug turned off, so that's why you couldn't see anything of interest... ;) Shutdown SageTV (and service), then edit sage.properties to have the line:

sageTCPServer/debugOn=true

Then if you could retry the streaming test please. You should probably try both the http and rstp streaming, in case one works but not the other. You might want to install "Log collector" or such on the Android to see if it complains about anything in regard to the stream...

brewston 04-18-2010 02:56 PM

Hello Fonceur

I'm making progress now :)

Using 1.2.5 of Server & .50 client (I also cleaned out the old versions from my JARS directory) :

Media Center shows my Albums (defaults to grouping via genre - any plans to group via artist or title ?) Once I clicked on a genre, I would have preferred to have seen all albums in that genre rather than the index system - Android allows for really quick scrolling. Any chance of a "play all" when I click on an album. Pictures showed my photo title but I have heaps of DSCxxxx.jpg so its not that interesting. I suspect its still indexing them which is which I have nothing under Videos yet.

Recordings shows my recordings which is cool but when I press play, it plays in the preview window not full screen (I'm using SageMC if that matters)

Schedule works fine although it reports the channel number rather than name

TV Guide works fine too but is there a reason you separate the lineups ? It would make more sense to merge them like the main GUI does...

Cheers

Tim

Fonceur 04-18-2010 04:16 PM

Quote:

Originally Posted by brewston (Post 418465)
Media Center shows my Albums (defaults to grouping via genre - any plans to group via artist or title ?)

Yes, there will be more choices at some point.

Quote:

Once I clicked on a genre, I would have preferred to have seen all albums in that genre rather than the index system
The issue is the very limited memory available on those devices... One tester has 16k+ songs in 5k+ albums, so the app runs out of memory... Same thing with his 12k photos, or video library...

Quote:

Recordings shows my recordings which is cool but when I press play, it plays in the preview window not full screen (I'm using SageMC if that matters)
Yes, that's the part I hate about the Sage UI, the hooks become UI sensitive when people don't use the standard one...

Quote:

TV Guide works fine too but is there a reason you separate the lineups ? It would make more sense to merge them like the main GUI does...
I guess I could look into it...

Fonceur 04-18-2010 08:06 PM

Quote:

Originally Posted by brewston (Post 418465)
Schedule works fine although it reports the channel number rather than name

Some channel names would take the whole line, which is why I was going for a compact version...

Quote:

It would make more sense to merge them like the main GUI does...
I have added the item "All the channels", for people with more than 1 lineup.

brewston 04-19-2010 01:54 PM

Quote:

Originally Posted by Fonceur (Post 418480)
Yes, there will be more choices at some point.

Artists A-Z would be my vote for the next one :-)
Quote:

Originally Posted by Fonceur (Post 418480)
Yes, that's the part I hate about the Sage UI, the hooks become UI sensitive when people don't use the standard one...

I will try turning off the preview window to see if it changes anything

Is there any disadvantage to quitting the app. rather than pressing home button ? ie does it need to re-sync each time it starts up ?


A couple of other suggestions if I may :

a 'delete' button under recordings would be handy
a 'record' button under TV guide would be useful too


All times are GMT -6. The time now is 03:00 AM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2022, vBulletin Solutions Inc.
Copyright 2003-2005 SageTV, LLC. All rights reserved.