Client does not start/stop playlist at scheduled time

Asked by Shahid

First off, thanks for creating this possibly revolutionary project!

Test environment specs:
Xubuntu 8.10 server running XAMPP
XP SP3 client PC, firewall disabled

Really this is a 2 part question:

1) The client does not always connect to the server and start playback when scheduled. (with the client running)
2) The client doesn't stop playback at the "end time" and keeps playing media.

Are these normal behaviors or am I doing something wrong? My process is upload media > design layout > schedule display with layout.
And are all media "streamed" from the server or do they copy locally to the client?

Thanks again,
Shahid

Question information

Language:
English Edit question
Status:
Solved
For:
Xibo Edit question
Assignee:
No assignee Edit question
Solved by:
Shahid
Solved:
Last query:
Last reply:
Revision history for this message
Dan Garner (dangarner) said :
#1

Hi Shahid,

Glad you like Xibo and thanks for posting feedback.

As for your questions:

1) The client will attempt to connect to the server on a timer (which can be set in options). Each time it connects it will ask for a list of the files it needs to play upcoming layouts and a schedule of what it should currently be playing.

2) The client is designed to if possible always keep something on the screen. There is a default layout that you set on the display in the server interface which the client should revert to once it has nothing else scheduled to play.

3) All the media is copied to the client a period of time before it is needed. In addition the client is designed to continue playing the current schedule if it cannot connect to the server for some reason. You can therefore use the client in an "offline" mode once the schedule has been downloaded.

The current client is limited in that it only asks "what do I currently need to be playing?" rather than "what is my schedule?". The effect of this is that if the client were to loose connection at 8pm and at that time there was layout 1 scheduled it would play layout 1 until it could reconnect to the server - even if layout 2 was already scheduled for 8:30pm last time it connected.

You can make the client stick to the schedule in a more "real time" fashion by lowering the collection period in the client options.

I should also say that this is something that has been on my list to improve for a while now - I am sure this will be improved in the JClient (maybe Alex can confirm).

If you need more info - or what I have said doesn't quite fit with what you are experiencing then just let me know!

Cheers,
Dan

Revision history for this message
Shahid (smalik-albion) said :
#2

Thanks Dan,

So if I have layout "A" scheduled between 8-8:30 and layout "B" scheduled at 8:31-9 with a collection interval of "60" (for bench testing),
it should switch to playing layout "B" at 8:30, correct?
My problem is that at 8:31, layout "A" is still playing and "B" never activates. If this is inherent in the clients design, that's just fine as I'm just stress testing the robustness of the app and can use a single layout method.

And yes, I noticed my original question was in fact, 4 parts...

Revision history for this message
Alex Harrington (alexharrington) said :
#3

Hi Shahid

My understanding is in that scenario, it should do as you describe (play A from 8-8:30 and B from 8:30 onwards). Note though that layout A must be "complete" at 8:30 (ie the duration for all media items may not be longer than 30 minutes, and all items must have played through their complete duration once) otherwise it will continue to play layout A until all the items have reached their duration at least once.

For example, if I schedule a movie of length 3 minutes, the client will show that layout for a minimum of three minutes. Had I scheduled another layout 1 minute after the first layout, which lasted for 2 minutes it may never be shown.

Dan will be able to confirm or deny that though. :D

Cheers

Alex

Revision history for this message
Dan Garner (dangarner) said :
#4

Shahid,
In your scenario the client should be playing layout A until 8:30. Once 8:30 passes the next time the client calls the server it should all change to layout B (regardless of where you are in layout A).

I would imagine that in your set up you should see layout B at no later than 8:32. I will try to set up a test for this on a box tomorrow - it is possible there is a bug.

Could you confirm whether you have "interleave default" set on the display - and if Layout A or Layout B are also your default layout for that display. Thanks.

Alex,
You are sort of right.
Case 1: Layout A at 8:00 and layout B at 8:30 but layout A was an hour long then in this case layout A would be cut and layout B would start at 8:30.

Case 2: Layout A and B start at 8:00 and end at 8:30. Layout A is an hour long and starts first. Layout B would never be shown.

Hope this helps,
Dan

Revision history for this message
Dan Garner (dangarner) said :
#5

Shahid,

I haven't been able to recreate this with my pre release rc3 version of the server and client.

We are hoping to release rc3 tomorrow (14th) - once we do that there is a lot more debugging available from the client (there were also some bugs fixed) - so if you are available we can investigate this further then.

Cheers,
Dan

Revision history for this message
JohnGrunder (jgrunder) said :
#6

Hi Alex and Dan,

Thanks for creating this wonderful project! We are a small graduate school with limited IT funds, and the president asked if we could set up digital signs around our campus in Monterey, California. Imagine my surprise when I found this open source gem, that could replace Scala at around $15,000 for a single server/player setup.

Test environment specs:
Windows 2003 server running IIS on VMware.
Vista SP1 client PC, firewall enabled

Just a few questions to add to the above:

1. You mentioned setting the client "Collection Interval for Content" to a lower value. The installed default is 900. What does 900 represent? 900 seconds? 900minutes? Other?

I have noticed in the manual that there are a lot of references to durations (as you have mentioned above) but these time increments are also not defined in the manual.

2. Are the Xibo time increments all defined at seconds? Other?

It would help a lot if these could be defined in the manual, with possibly an explanation of what the duration fields are for in the layout design and when loadting basic library items.

3. Can you explain what the duration fields are for? Do the durations need to coordinate with the scheduled time slots in some way?

Like Shahid, I probably have more questions packed into this post than I started out to ask. Sorry about that!

Thanks,
John

Revision history for this message
Alex Harrington (alexharrington) said :
#7

Hi John

All the durations in Xibo are in seconds.

The duration on each media item is how long it should be shown for on each layout. Each layout is shown for the time it takes each media item to be shown in sequence. If there is more than one region, it is the longest of all the regions.

eg
If you have a layout with two regions. In region one, you have an RSS Ticker duration 60 seconds and an image duration 30 seconds. In region 2, you have a video duration 95 seconds. What happens is the video is shown, and the rss ticker. At 60 seconds, the RSS ticker is replaced with the image. At 90 seconds, the image is replaced by the ticker again. At 95 seconds, the video has finished playing.

What happens next depends on the status of the display. If there is another layout scheduled to show as well, then it will change at that point to the next layout. If there's nothing else to show, it will show the same layout again.

It's also possible that a layout could be interrupted in the middle of running if the layout schedule comes to an end and something else is scheduled to replace it.

Sorry that's not really clear - it's hard to explain without showing you!

We're releasing 1.0.0-rc3 tomorrow - if all goes to plan - which fixes some timezone issues you'll no doubt come across, so I'd recommend you upgrade to that version.

Cheers

Alex

Revision history for this message
JohnGrunder (jgrunder) said :
#8

Hi Alex and Dan,

Just one more question. You mentioned that the Xibo client picks up new information based on the duration field in the client options. I have set this down to the minimum of 60 and waited to see if this would solve the same problem Shahid is having. It did not.

I have fixed the timezone problem on the schedular so that the timezone matches my location (America/Los_Angeles) and have created a basic layout.

I did try to add a ticker to this layout. Can you tell me if there is a faulty region on the layout you are trying to display on the client, could this faulty region prevent the whole layout from displaying?

Also, does the client re-registered once you change the time zone on the server? Or does the client simply use the time zone of the PC it is running on?

Just trying to get one test client working to show as demo to my boss.

Thanks,

John

Revision history for this message
Alex Harrington (alexharrington) said :
#9

This might need some more investigation then. Both Dan and I (UK Timezone) cannot reproduce this at all.

I have a server on America/New_York time, but haven't managed to get round to running a client on that TZ too.

We're looking to get 1.0.0-rc3 out the door tomorrow. If that doesn't solve things then we'll look further. We're aware we need to change the date/time fields to show non-EU date formats (there's a blueprint for that) so that would be a natural time to address these issues if, as we suspect, they are timezone related.

Cheers

Alex

Revision history for this message
Alex Harrington (alexharrington) said :
#10

Ok - I have a client on EST (America/New_York) and I can reproduce this.

If you are desperate to get a box running for now, you'll need to set server and client to use Europe/London while we investigate this.

I'll convert to a bug.

Alex

Revision history for this message
Alex Harrington (alexharrington) said :
#11

This is now fixed in a new bzr branch, and will be included in 1.0.0-rc3.

Thanks for reporting the issue!

Alex

Revision history for this message
Shahid (smalik-albion) said :
#12

Thanks guys, like John above I am a tech admin for a college in the US so forgive me if during my questions I disappear for days at a time! I'll give RC3 a go today!

Revision history for this message
Alex Harrington (alexharrington) said :
#13

Shahid: No problem. I work for a school in the UK so I know what it's like :D

Alex

Revision history for this message
JohnGrunder (jgrunder) said :
#14

Alex: I have installed RC3 and the client seems to be running fine so far. The time zones now show up in the settings area. Thanks for working on this issue.

FYI: I did manage to get the display working last week, once I set the schedule to 24-7 over a number of days going forward, but I had to unregister the display and then go through the process to register it to make it work. Not sure if that info is useful or not.

Now I am working on a background image to make the display a little nicer for the demo on campus. The durations are still giving a bit of trouble, as if set too short this seems to make the screen "blink out" and then the layout regions come back up fairly slowly. I am running the display on a Dell workstation with plenty of memory and processing power, so not quite sure why there is so much lag time in rebuilding the display regions each time.

I am also having a bit of a time adding an image to the layout regions. I managed to get a logo, but no other region seems to be accepting these. Maybe I am just not doing this right.

John

Revision history for this message
Alex Harrington (alexharrington) said :
#15

Hi John

It would probably be best to start a new question for each specific issue.

Durations: I don't generally have anything set less than about 10 seconds. We're aware that the regions take a little while to display, and that's a limitation of how the .net client is coded. The thing to do is ensure that something on each layout is set to the duration you want the layout to show for before refreshing. eg I tend to have a video, powerpoint or something as the main feature, and the layout switches on to the next one as soon as that finishes playing. I agree we could do better here.

Our plans are not to support the .net client beyond v1.0 (ie v1.1 will have a completely new client, possibly written in Java - we have one about 60% written already - or possibly in Python running libavg). I would anticipate any new version to redraw regions significantly faster.

Dan did identify one bottleneck in the .net client that we might be able to improve upon as a quick fix - but I'd not like to make any promises yet.

That said, I have the client running 1366x768 on a VIA EPIA 1 GHz Mini-ITX box and I'd say the performance is acceptable. It depends alot on what the regions are as to how much overhead there is in loading them.

Adding an image should be straightforward.

On the layout, double click the region you want to put the image in. That should bring up the timeline. You can now choose either "Library" to add something you've already uploaded, or "Image" to upload a new image.

Assuming it's a new image, Click "Add Image" then browse for the file on your computer. Give the image a name and duration and click "Save". That image is then automatically added to the region.

Cheers

Alex

Revision history for this message
JohnGrunder (jgrunder) said :
#16

Alex: Sorry about the extended question. I will try to create an new track on these. Thanks