[mythtv] Interesting Comparison

mythtv at zacglen.com.au mythtv at zacglen.com.au
Fri Mar 3 08:44:22 UTC 2006


I have just completed my web-based equivalent of MythTV.

The only things missing at this stage are all the extras (which
I can hardly see myself using since I have a computer) like phone,
browser, etc.

It is interesting to make a comparison.
MythTV has about 112,792 lines of code.
My implementation has about 1731 lines of Perl.

Additionally, my implementation has the following features:

	- the only interface is via browser (which I didn't have to write)
	- there is no database, only plain text files
	- there is no XML
	- it is fast
	- it is highly configurable with all configuration in plain files
	- the recording format can be whatever anyone chooses

Some of the implementation details which have helped keep it simple are:

	- Hardware contention is only resolved at record time.
	  I use a simple lockfile containing pid and priority.
	  When a conflict occurs a lower priority job can preempt running job.
	  Or a higher priority job will lock out a lower priority job, but
	  it will still possibly run for a reduced duration.
	  At scheduling time there is absolutely no possibility of conflict.
	
	- Instead of XML the program guide information is in simple
	  column-delimited format, with first line being the column definitions.
	  Times are in UTC. That is all that is needed.

	- All configuration data is simple "name = value" expressions.
	  But to allow 1:n relationships I simply look for plural names.
	  So that "guides = fta-%Y%m%d other-%Y%m%d", for example,
	  generates a Perl array.
	  Wont work for foreign languages but I reckon it would have
	  been simpler for the whole world to convert to English rather
	  that have every programmer die in agony anyhow.

I intend to add a few more features, mainly with respect to the automated
recording selection plus some alternate tv guide sources.

KISS to all you MythTV developers.



More information about the mythtv-dev mailing list