News archive November 2007 - Koos van den Hout

Archive by year: 1999 | 2000 | 2001 | 2002 | 2003 | 2004 | 2005 | 2006 | 2007 | 2008 | 2009 | 2010 | 2011 | 2012 | 2013 | 2014 | 2015 | 2016 | 2017 | 2018 | 2019 | 2020 | 2021

2007-11-30 Comparing tvtime and XawTV 13 years ago
Some time ago I had time to really try tvtime. I've had a Linux system with a simple Win-TV card (brooktree 848 based) since 'forever' and I think I always used XawTV (maybe there was some predecessor I used in the beginning). After some really positive remarks about it from people I decided to give it a try.

The system I tried this on is a Dell Optiplex GX110 with a PIII-667 cpu named Turing. The tv-card is seen as:

0000:01:08.0 Multimedia video controller: Brooktree Corporation Bt848 Video Capture (rev 12)
        Flags: bus master, medium devsel, latency 64, IRQ 10
        Memory at fafff000 (32-bit, prefetchable) [size=4K]
From the kernel messages:
Linux video capture interface: v1.00
i2c-core.o: i2c core module version 2.6.1 (20010830)
i2c-algo-bit.o: i2c bit algorithm module
bttv: driver version 0.7.108 loaded
bttv: using 4 buffers with 2080k (8320k total) for capture
bttv: Bt8xx card found (0).
PCI: Found IRQ 10 for device 01:08.0
PCI: Sharing IRQ 10 with 00:1f.3
PCI: Sharing IRQ 10 with 00:1f.5
bttv0: Bt848 (rev 18) at 01:08.0, irq: 10, latency: 64, mmio: 0xfafff000
bttv0: using: MIRO PCTV [card=1,insmod option]
i2c-algo-bit.o: Adapter: bt848 #0 scl: 1  sda: 1 -- testing...
i2c-algo-bit.o:1 scl: 1  sda: 0 
i2c-algo-bit.o:2 scl: 1  sda: 1 
i2c-algo-bit.o:3 scl: 0  sda: 1 
i2c-algo-bit.o:4 scl: 1  sda: 1 
i2c-algo-bit.o: bt848 #0 passed test.
i2c-core.o: adapter bt848 #0 registered as adapter 0.
bttv0: i2c: checking for MSP34xx @ 0x80... not found
bttv0: miro: id=1 tuner=0 radio=no stereo=no
bttv0: using tuner=0
bttv0: i2c: checking for MSP34xx @ 0x80... not found
bttv0: i2c: checking for TDA9875 @ 0xb0... not found
bttv0: i2c: checking for TDA7432 @ 0x8a... not found
tvaudio: TV audio decoder + audio/video mux driver
tvaudio: known chips: tda9840,tda9873h,tda9874h/a,tda9850,tda9855,tea6300,tea6420,tda8425,pic16c54 (PV951),ta8874z
i2c-core.o: driver generic i2c audio driver registered.
i2c-core.o: driver i2c TV tuner driver registered.
tuner: chip found @ 0xc0
tuner(bttv): type forced to 0 (Temic PAL (4002 FH5)) [insmod]
tuner: type already set (0)
i2c-core.o: client [Temic PAL (4002 FH5)] registered to adapter [bt848 #0](pos. 0).
bttv0: registered device video0
bttv0: registered device vbi0
With a simple channel scan tvtime found all channels. And promptly put them on presets according to a channel numbering I couldn't understand. Casema Utrecht is ofcourse using PAL with a western European channel numbering, but I couldn't figure out the channel numbering. For example RTL-4 is on UHF channel 28 (Overview of channels on the Casema website in Dutch), tvtime calls this channel (and therefore preset) 99 and does not show UHF channel 28 anywhere in the userinterface. I was able to move the channels around using the userinterface of tvtime but it was a lot of work. This felt 'American' to me: programmable presets aren't used as much there as we are used to, so a station can advertise being on channel 99 and it will be on channel 99 on most of the television sets. In the Netherlands a TV station has hard work convincing their viewers that they need to be on a certain preset (preferrably below 10 so it's a single button press).

To change names of TV stations (now I had RTL-4 in position 4 but it was still named '99') I had to quit tvtime and directly edit the stationlist.xml file.

The other thing I really noticed is that with the default settings tvtime uses up all cpu on the PIII-667. By changing the deinterlacing settings I was able to fix this. But: 'no deinterlacing' was not an option, I just had to find out which one uses less cpu. I used XawTV before on a pentium-90 with cycles to spare.

Comparing the two


+ neat userinterface, all on-screen
+ scriptable, I can send messages to the screen from other applications
- 'american' way of channel numbering
- having to edit an xml file to name stations
- deinterlacing uses a lot of cpu and can't be disabled


+ 'original' channel numbers visible in the userinterface
+ light on the cpu
- no deinterlacing, which gets very visible in fullscreen mode

My final conclusion

None yet: at the moment there is no TV-cable up to a PC so I don't use tv-watching on a PC. I'm not sure which software would see regular use.

Tags: , ,
2007-11-27 From VIDEO_TS to working video DVD in Linux 13 years ago
A friend created a video dvd in the form of a VIDEO_TS subdir with some files, so I finally had to find out how to create a working DVD from that. Using Linux, ofcourse. And using the command-line.

This is the subject of several dozen howto's on the web, all differing in opinion on certain subjects.

From VIDEO_TS to .iso

First, converting the VIDEO_TS to a correct dvd image. You need to have the VIDEO_TS data in a subdir(!!) from the root of the future dvd. Start with an empty dir:
$ mkdir dvd
$ cd dvd
Put the VIDEO_TS data in a VIDEO_TS subdir. Indeed: with capital letters.
$ ls
Creating the dvd image with mkisofs with the -dvd-video commandline flag.
$ mkisofs -dvd-video -o ../dvd.iso .
INFO:   UTF-8 character encoding detected by locale settings.
        Assuming UTF-8 encoded filenames on source filesystem,
        use -input-charset to override.
Unknown file type (unallocated) ./.. - ignoring and continuing.
  0.70% done, estimate finish Mon Nov 26 15:31:25 2007
  1.40% done, estimate finish Mon Nov 26 15:31:25 2007
  2.09% done, estimate finish Mon Nov 26 15:31:25 2007
  2.79% done, estimate finish Mon Nov 26 15:32:00 2007

 99.03% done, estimate finish Mon Nov 26 15:32:52 2007
 99.72% done, estimate finish Mon Nov 26 15:32:52 2007
Total translation table size: 0
Total rockridge attributes bytes: 0
Total directory bytes: 2158
Path table size(bytes): 26
Max brk space used 0
716987 extents written (1400 MB)
Now you have a dvd-video ready iso file:
$ cd ..
$ ls -lh dvd.iso
-rw-r--r--  1 koos users 1.4G Nov 26 15:32 dvd.iso
To be sure, you can check it:
$ isoinfo -l -i dvd.iso 

Directory listing of /
d---------   0    0    0            2048 Nov 26 2007 [    275 02]  . 
d---------   0    0    0            2048 Nov 26 2007 [    275 02]  .. 
d---------   0    0    0            2048 Nov 26 2007 [    276 02]  VIDEO_TS 

Directory listing of /VIDEO_TS/
d---------   0    0    0            2048 Nov 26 2007 [    276 02]  . 
d---------   0    0    0            2048 Nov 26 2007 [    275 02]  .. 
----------   0    0    0            8192 Nov 22 2007 [    281 00]  VIDEO_TS.BUP;1 
----------   0    0    0            8192 Nov 22 2007 [    277 00]  VIDEO_TS.IFO;1 
----------   0    0    0           36864 Nov 22 2007 [ 479292 00]  VTS_01_0.BUP;1 
----------   0    0    0           36864 Nov 22 2007 [    285 00]  VTS_01_0.IFO;1 
----------   0    0    0       980969472 Nov 22 2007 [    303 00]  VTS_01_1.VOB;1 
----------   0    0    0           30720 Nov 22 2007 [ 716821 00]  VTS_02_0.BUP;1 
----------   0    0    0           30720 Nov 22 2007 [ 479310 00]  VTS_02_0.IFO;1 
----------   0    0    0       486391808 Nov 22 2007 [ 479325 00]  VTS_02_1.VOB;1 

Burning the .iso

This needs to be done as root (not too much of a surprise as this requests low-level access to the dvd-burner).
# growisofs -dvd-compat -Z /dev/hdc=dvd.iso 
Executing 'builtin_dd if=dvd.iso of=/dev/hdc obs=32k seek=0'
/dev/hdc: "Current Write Speed" is 16.4x1385KBps.
         0/1468389376 ( 0.0%) @0x, remaining ??:??
         0/1468389376 ( 0.0%) @0x, remaining ??:??
         0/1468389376 ( 0.0%) @0x, remaining ??:??
         0/1468389376 ( 0.0%) @0x, remaining ??:??
         0/1468389376 ( 0.0%) @0x, remaining ??:??
   4063232/1468389376 ( 0.3%) @0.9x, remaining 138:08
  35028992/1468389376 ( 2.4%) @6.5x, remaining 17:43
  66486272/1468389376 ( 4.5%) @6.7x, remaining 10:32

1344405504/1468389376 (91.6%) @10.0x, remaining 0:13
1392017408/1468389376 (94.8%) @10.1x, remaining 0:08
1440120832/1468389376 (98.1%) @10.2x, remaining 0:03
builtin_dd: 716992*2KB out @ average 6.6x1385KBps
/dev/hdc: flushing cache
/dev/hdc: closing track
/dev/hdc: closing disc
The result: a fresh video dvd. And it works in the DVD-player at home (which is from way back when DVD-players weren't given away with laundry soap).

Making dvd stuff in Linux

From source to video_ts is a different process. I'm not active in that area yet.

Tags: ,
2007-11-25 (#) 13 years ago
Caught the cat who lives across from the back of our house on camera recently: Achterbuurkat 1 foto Achterbuurkat 2.

Tags: , ,
2007-11-23 (#) 13 years ago
Updates to the logic behind the weather maps at and updates to the stations list. Data is now fetched from multiple sources and with a lot of searching I found the locations of a number of stations such as EHFS (Vlissingen), EHSC (Lichteiland Goeree) and EHKV (oilplatform K14-FA-1C). Starting tomorrow morning the updates will be visible in the generated maps.

Tags: , , ,
2007-11-22 (#) 13 years ago
Weer een avondje audio-bewerking gedaan voor het Asterisk belspel. De eerste functie werkt: de variant de computer gaat nu kijken of u de juiste beller bent. Heel veel sprongetjes en stukjes extensions.conf om allemaal verschillende paden te hebben die uiteindelijk weer terugkomen bij helaas u heeft niet gewonnen en we proberen het nog een keer. Al met al hang je 50 seconden aan de lijn voor je de eerste keer verloren hebt! De belspellen van televisie achter 09xx nummers zijn trouwens nu helemaal gestopt dus dit idee op zich is niet commercieel toepasbaar meer, maar nog steeds een leuke gimmick voor demonstraties Asterisk (hoop ik!)

Tags: ,
2007-11-19 (#) 13 years ago
Old meets new: XS4ALL now offers UUCP over IPv6. Still with the separation in the DNS, but maybe this can be the first candidate to end this distinction?

Tags: ,
2007-11-14 (#) 13 years ago
Peter Ludlow has written 95 Theses on the Religious Right discussing the way the religious right (in the US) abuses and misinterprets the bible and religion.

Tags: ,
2007-11-13 (#) 13 years ago
I created my own Geo::METAR page and the module is ready for uploading to CPAN (just some final sanity checks).

Tags: , ,
2007-11-13 (#) 13 years ago
The weather keeps me interested and I have been working on processing weather data (ofcourse using Geo::METAR). Roger Burton West did a lot of work on visualizing weather data and I updated the result for Geo::METAR. Resulting maps now available on Stuff to add: caching, getting data from several sources (at least one metar for the Netherlands isn't available via the US national weather service) or using different sources.

Tags: , , , ,
2007-11-12 ELMS integrated user verification in PHP 13 years ago
Work decided to change the distribution of msdn-aa software (MSDN academic alliance) to a system where we do the verification whether a person is authorized to access the download and e-academy does the rest using ELMS (e-academy License Management System). This requires some setup in the webserver and the documentation from e-academy wasn't very clear (a whole stack of paper with lots of bits explained but a simple explanation was hard to find). But, with the sample pseudo code in the documentation I managed to build something. Checking usernames and passwords is left to the webserver (quite good at that bit), initializing user data and validating the session is done in php after which control is returned to the e-academy server. And I added an error-page especially for this script explaining which username/password to use.

I decided to throw the results online so others can borrow from the sample and implement their own. Directly copying the sample will never work as a lot of the data is really local.

Webserver config

The elms system insists on a secure webserver with https:// urls. We insist on that too for anything which asks for user names and passwords, so that matches nicely.

The webserver is configured to require auth on the verification url. I could do this with a login form in php, but the webserver is configured for ldap queries anyway so I copied that bit.

# for msdnaa verification

        AuthName "Informatica medewerkers en studenten"
        AuthType Basic
        AuthLDAPURL ldap://,dc=uu,dc=nl?uid
        AuthBasicProvider ldap
        AuthzLDAPAuthoritative off
        require valid-user
        ErrorDocument 401 /msdnaa/error.php

The php script verify.php just checks carefully whether it is called with the right parameters and with an authenticated user. It then queries ldap for the user data and does the call back to the e-academy server to validate the session and set the userdata.

When all that goes well and e-academy shows no error a redirect is given back to the server (the user never sees a page from our server when all goes well).

Tags: , ,
2007-11-07 (#) 13 years ago
It is a coming and going of birds in our garden at the moment (resulting in a lot of comments from the cats).
img_5765 Sparrow in our backyard
Photographing them is hard as they move around a lot.

Tags: , ,
2007-11-05 (#) 13 years ago
On friday evening we went snowboarding for the first time this season. After shopping for new coats we went to Snowworld in Zoetermeer and tried our turns again for a while. For me the right feeling of snowboarding had to come from way deep but after a few tries I made it down at reasonable speeds. It would be really nice to have an indoor piste closer to home.

Tags: ,

IPv6 check

Running test...
, reachable as PGP encrypted e-mail preferred. PGP key 5BA9 368B E6F3 34E4 local copy PGP key 5BA9 368B E6F3 34E4 via keyservers

Meningen zijn die van mezelf, wat ik schrijf is beschermd door auteursrecht. Sommige publicaties bevatten een expliciete vermelding dat ze ongevraagd gedeeld mogen worden.
My opinions are my own, what I write is protected by copyrights. Some publications contain an explicit license statement which allows sharing without asking permission.
Other webprojects: Camp Wireless, wireless Internet access at campsites, The Virtual Bookcase, book reviews
This page generated by $Id: morenews.cgi,v 1.50 2020/12/31 15:36:31 koos Exp $ in 0.026130 seconds.