Comment 3 for bug 74540

Revision history for this message
Jason Gerard DeRose (jderose) wrote :

This same bug is still present under Hardy, hal 0.5.11~rc2-1ubuntu8.2.

I just re-ran my test on 7 different disc and it failed on 4 of them. The is_vcd, is_svcd, and is_videodvd properties are missing on audio CDs, blank CDR, blank CDRW, and blank DVDR.

Maybe I'm misunderstanding what "Mandatory" means in the HAL specification, but these missing properties make the API more difficult to use than it should be. I originally encountered this problem working on my DVD ripper (https://launchpad.net/kungfu), for which all I need to check is the is_videodvd property. Unless the check is wrapped in a try/except, my ripper crashes when certain discs are inserted.

I know this is kind of nit-picking, but it would be nice if it were fixed. If I have a chance, I'll take a look at it this weekend, but I'm totally unfamiliar with the HAL source, so no promises. ;)

Here is the test results:

# Audio CD: Fail
volume.disc.has_audio = 1
volume.disc.has_data = 0
volume.disc.is_vcd: No property
volume.disc.is_svcd: No property
volume.disc.is_videodvd: No property
volume.disc.is_appendable = 0
volume.disc.is_blank = 0
volume.disc.is_rewritable = 0
volume.disc.capacity = 511047680
volume.disc.type = cd_rom

# Video DVD: Okay
volume.disc.has_audio = 0
volume.disc.has_data = 1
volume.disc.is_vcd = 0
volume.disc.is_svcd = 0
volume.disc.is_videodvd = 1
volume.disc.is_appendable = 0
volume.disc.is_blank = 0
volume.disc.is_rewritable = 0
volume.disc.capacity = 8318572544
volume.disc.type = dvd_rom

# Data CD: Okay
volume.disc.has_audio = 0
volume.disc.has_data = 1
volume.disc.is_vcd = 0
volume.disc.is_svcd = 0
volume.disc.is_videodvd = 0
volume.disc.is_appendable = 0
volume.disc.is_blank = 0
volume.disc.is_rewritable = 0
volume.disc.capacity = 735051776
volume.disc.type = cd_r

# Data DVD: Okay
volume.disc.has_audio = 0
volume.disc.has_data = 1
volume.disc.is_vcd = 0
volume.disc.is_svcd = 0
volume.disc.is_videodvd = 0
volume.disc.is_appendable = 0
volume.disc.is_blank = 0
volume.disc.is_rewritable = 0
volume.disc.capacity = 964493312
volume.disc.type = dvd_r

# Blank CDR: Fail
volume.disc.has_audio = 0
volume.disc.has_data = 0
volume.disc.is_vcd: No property
volume.disc.is_svcd: No property
volume.disc.is_videodvd: No property
volume.disc.is_appendable = 0
volume.disc.is_blank = 1
volume.disc.is_rewritable = 0
volume.disc.capacity = 4706074624
volume.disc.type = dvd_r

# Blank CDRW: Fail
volume.disc.has_audio = 0
volume.disc.has_data = 0
volume.disc.is_vcd: No property
volume.disc.is_svcd: No property
volume.disc.is_videodvd: No property
volume.disc.is_appendable = 0
volume.disc.is_blank = 1
volume.disc.is_rewritable = 1
volume.disc.capacity = 735051776
volume.disc.type = cd_rw

# Blank DVDR: Fail
volume.disc.has_audio = 0
volume.disc.has_data = 0
volume.disc.is_vcd: No property
volume.disc.is_svcd: No property
volume.disc.is_videodvd: No property
volume.disc.is_appendable = 0
volume.disc.is_blank = 1
volume.disc.is_rewritable = 0
volume.disc.capacity = 4706074624
volume.disc.type = dvd_r