Active Topics

 



Notices


Poll: Preferred runtime language for mediaserv
Poll Options
Preferred runtime language for mediaserv

Reply
Thread Tools
Jaffa's Avatar
Posts: 2,535 | Thanked: 6,681 times | Joined on Mar 2008 @ UK
#1
Hi,

Many of you will be aware of my mediaserv on-demand video converter.

Currently it's pretty much limited to Unix-like OSes such as Linux and (apparently) Mac OS X.

This is because it's written in Perl, and Perl's threading is a bit ropey on, say, Windows. Unfortunately, it's a bit ropey on everything and I'm not quite happy with it.

So, I'm thinking of rewriting the mediaserv bit in another language with a more robust multi-threaded implementation. tablet-encode would stay in Perl.

The disadvantage of a rewrite would be that it becomes trickier to install (potentially): the same dependencies you need for tablet-encode are not sufficient for mediaserv.

So, the poll above is to garner input from the users here. The choices are:
  1. Do nothing. Carry on polishing the existing Perl version, but it works fine for you and don't need it on Windows (because you don't use it or you have better options such as TVersity)
  2. Java. Very powerful threading, implementations on many OSes, easy to ship and install an application containing all its dependencies. Most likely to be my choice, but then I have Java runtimes on all my boxes.
  3. Python. Seems to have better threading than Perl.
  4. C/D/Vala. Probably the latter two. Possibly even Vala. Not sure how well it works for non-Windows apps. Lack of docs for Vala. D is possibly too esoteric.
  5. C#. Would run on Linux under Mono, but I've no burning desire to learn it.
  6. Ruby. I've got "Programming Ruby" on my bookshelf. Not sure how good its thread implementation is.

Remember, this is for the server component; the UI would still be through Media Player/mplayer, the web browser and RSS feeds.

Anything I'm missing?
__________________
Andrew Flegg -- mailto:andrew@bleb.org | http://www.bleb.org
 
Bundyo's Avatar
Posts: 4,708 | Thanked: 4,649 times | Joined on Oct 2007 @ Bulgaria
#2
I would prefer native language since it runs better. Voted for D, but FreePascal/Lazarus is nicely cross-platform too and also does a single executable.
 
Jaffa's Avatar
Posts: 2,535 | Thanked: 6,681 times | Joined on Mar 2008 @ UK
#3
Originally Posted by Bundyo View Post
I would prefer native language since it runs better. Voted for D, but FreePascal/Lazarus is nicely cross-platform too and also does a single executable.
Thanks for the input. Jumping from Delphi to FreePascal/Lazarus shouldn't be too hard - but Pascal's not a language I like too much. I'll look into Lazarus further, though.

D/Vala are both obvious choices for a native language version, but I'm not sure why you says "it['ll] run better". mediaserv doesn't do much which requires CPU power, off-loading all the heavy lifting to mencoder.

The key requirements, therefore, are: maintainability; robustness/reliability; ease of use for end-user.

Native language wins on all three counts to a degree, coming out miles ahead of anything else on the last point.
__________________
Andrew Flegg -- mailto:andrew@bleb.org | http://www.bleb.org
 
Bundyo's Avatar
Posts: 4,708 | Thanked: 4,649 times | Joined on Oct 2007 @ Bulgaria
#4
Lazarus is closer to Delphi than was before, and easy interface design beats the other C group. However, you won't need too much on the interface part to judge on that

If i'm not mistaken you have a scanner there and also the actual server - more speed will help with large collections, but the native languages should run as CGI, so you will lose from request startup time. Something with apache module will fare better for serving. Unless you want to do a whole web server.

Easiest for the user will be a stand-alone installation that will get them all the functionality without messing with config files at all, small IDE for choosing a directory and eventually a tray icon. I think i just described Orb
 
Posts: 393 | Thanked: 112 times | Joined on Jul 2007
#5
Native C please.

I run an NSLU2 and I'd need to save as many clock cycles as possible
 
Posts: 882 | Thanked: 1,310 times | Joined on Mar 2007
#6
Ah, a subject close to my heart. I'm really not sure Windows users need more programs for streaming video as they have Orb and Tversity. Mediaserv seemed to work fine when I tried it, not sure it needs to be more optimized, because I don't think it needs to serve more than few video at a time. And the program doing the transcoding is what consumes cpu. What I would like to see is more features. More media formats like dvd-images and live-tv, subtitles, seeking etc.
 

The Following User Says Thank You to ukki For This Useful Post:
Bundyo's Avatar
Posts: 4,708 | Thanked: 4,649 times | Joined on Oct 2007 @ Bulgaria
#7
Oh, yes, LiveTV

But i don't see a problem with the subs - they should transcode just fine...
 
luca's Avatar
Posts: 1,137 | Thanked: 402 times | Joined on Sep 2007 @ Catalunya
#8
Originally Posted by yabbas View Post
Native C please.

I run an NSLU2 and I'd need to save as many clock cycles as possible
Freepascal fits that bill too. (edit: besides, I doubt you could do transcoding on the nslu2)

Last edited by luca; 2008-03-17 at 12:06.
 
luca's Avatar
Posts: 1,137 | Thanked: 402 times | Joined on Sep 2007 @ Catalunya
#9
I second Bundyo suggestion (fpc is not your grandfather's pascal), but, what about incorporating to mediaserv the patches for vdr recordings that I sent you a while ago?

Last edited by luca; 2008-03-17 at 12:06.
 
Jaffa's Avatar
Posts: 2,535 | Thanked: 6,681 times | Joined on Mar 2008 @ UK
#10
Originally Posted by luca View Post
I second Bundyo suggestion (fpc is not your grandfather's pascal), but, what about incorporating to mediaserv the patches for vdr recordings that I sent you a while ago?
That's where this came from :-)

This weekend development should be picking up again.
__________________
Andrew Flegg -- mailto:andrew@bleb.org | http://www.bleb.org
 
Reply


 
Forum Jump


All times are GMT. The time now is 23:34.