- Moderator
- #71
I suspect logos might be a bit problematic on TVServer only machines, as they are made and kept client side.. Just my 2 cents
I suspect logos might be a bit problematic on TVServer only machines, as they are made and kept client side.. Just my 2 cents
I think that will be implemented- ability to get tv logos and recording thumbnails through webservice
Is part of a streaming component and not part of the tv server.- ability to download recordings with webservice (simple .net stream)
I already thought about it and yes it will be done.And then there's one more, can you add a method to get base epg program for channels? I'm currently implementing the epg view for android and downloading the whole day for more then 10 channels takes forever (since the full details are transferred for each program).
Are you sure it is a good idea to only allow one access at a time? Even downloading channel/program information can take quite some time for a client with a bad internet connection and this would block other clients that are e.g. in the lan and expect to get their info instantly.I also think that downloading recordings should be part of a streaming component instead of the webservice itself. The way the webservice is currently implemented allows only one thread to do the work inside the service. This means that if one client is downloading a recording, the whole webservice would be blocked. I'd have to change the WCF service to Concurrency=Multiple, but then we have to deal with making the code multi-thread safe (which depends on Gentle being multi-thread safe).
public Stream FS_GetRecording(string path)
{
if (System.IO.File.Exists(path))
{
FileStream fs = File.OpenRead(path);
return fs;
}
return null;
}
The suggestion on getting only basic program information for channels is very good, I'm working on that.
WebProgramBasic would contain only these properties: IdProgram, IdChannel, StartTime, EndTime, Title, Description, DurationInMinutes.
Are these enough?
Great that you guys are working on more updates, but I've one problem: till now each update changed the API, resulting in all client applications to be updated. Are you planning on stabilizing the API and keeping new releases backward-compatible (i.e. not removing/renaming functions and not removing properties from returned objects)?
Another thing: I've implemented a streaming module based on this API and MPWebServices's streaming code, which I'll release soon here. It doesn't support recordings yet, but that doesn't seem to hard to implement at a first look.
Yeah, it's still in the early stage but each time I upgrade it my whole TV stack breaks, which becomes a little annoying. The streaming code is bascially the code from MPWebServices, updated a little to get data from the TV4Home API and created an easy-installable TV server plugin which handles everything, but you can also run it under IIS. It supports transcoding and LiveTV, but I still've to create some working profiles and make it configurable instead of hardcoded. It also features a WCF service which you can pass a channelId and then you get the streaming URLGreat that you guys are working on more updates, but I've one problem: till now each update changed the API, resulting in all client applications to be updated. Are you planning on stabilizing the API and keeping new releases backward-compatible (i.e. not removing/renaming functions and not removing properties from returned objects)?
Another thing: I've implemented a streaming module based on this API and MPWebServices's streaming code, which I'll release soon here. It doesn't support recordings yet, but that doesn't seem to hard to implement at a first look.
Hehe, yeah I had the same problem but it's still in the early stage so this is ok imo. Do you have more information on the streaming code? Is there live transcoding? If yes, which profiles? Is live tv supported?
@DieBagger: I have thought about that too, and it is also a problem for groups with many channels that take a long time to load. The only thing I'm concerned about is whether Gentle is multi-thread safe, do you have any information about that?
The file stream should be fairly easy to implement, but I'm not sure how it behaves with the JSON endpoint.
DurationInMinutes is mainly to simplify MCML development, you'd have to write Converters etc. for calculating EndTime-StartTime otherwise.