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. ;)
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 disc.has_ audio = 1 disc.has_ data = 0 disc.is_ svcd: No property disc.is_ videodvd: No property disc.is_ appendable = 0 disc.is_ blank = 0 disc.is_ rewritable = 0 disc.capacity = 511047680
volume.
volume.
volume.disc.is_vcd: No property
volume.
volume.
volume.
volume.
volume.
volume.
volume.disc.type = cd_rom
# Video DVD: Okay disc.has_ audio = 0 disc.has_ data = 1 disc.is_ videodvd = 1 disc.is_ appendable = 0 disc.is_ blank = 0 disc.is_ rewritable = 0 disc.capacity = 8318572544
volume.
volume.
volume.disc.is_vcd = 0
volume.disc.is_svcd = 0
volume.
volume.
volume.
volume.
volume.
volume.disc.type = dvd_rom
# Data CD: Okay disc.has_ audio = 0 disc.has_ data = 1 disc.is_ videodvd = 0 disc.is_ appendable = 0 disc.is_ blank = 0 disc.is_ rewritable = 0 disc.capacity = 735051776
volume.
volume.
volume.disc.is_vcd = 0
volume.disc.is_svcd = 0
volume.
volume.
volume.
volume.
volume.
volume.disc.type = cd_r
# Data DVD: Okay disc.has_ audio = 0 disc.has_ data = 1 disc.is_ videodvd = 0 disc.is_ appendable = 0 disc.is_ blank = 0 disc.is_ rewritable = 0 disc.capacity = 964493312
volume.
volume.
volume.disc.is_vcd = 0
volume.disc.is_svcd = 0
volume.
volume.
volume.
volume.
volume.
volume.disc.type = dvd_r
# Blank CDR: Fail disc.has_ audio = 0 disc.has_ data = 0 disc.is_ svcd: No property disc.is_ videodvd: No property disc.is_ appendable = 0 disc.is_ blank = 1 disc.is_ rewritable = 0 disc.capacity = 4706074624
volume.
volume.
volume.disc.is_vcd: No property
volume.
volume.
volume.
volume.
volume.
volume.
volume.disc.type = dvd_r
# Blank CDRW: Fail disc.has_ audio = 0 disc.has_ data = 0 disc.is_ svcd: No property disc.is_ videodvd: No property disc.is_ appendable = 0 disc.is_ blank = 1 disc.is_ rewritable = 1 disc.capacity = 735051776
volume.
volume.
volume.disc.is_vcd: No property
volume.
volume.
volume.
volume.
volume.
volume.
volume.disc.type = cd_rw
# Blank DVDR: Fail disc.has_ audio = 0 disc.has_ data = 0 disc.is_ svcd: No property disc.is_ videodvd: No property disc.is_ appendable = 0 disc.is_ blank = 1 disc.is_ rewritable = 0 disc.capacity = 4706074624
volume.
volume.
volume.disc.is_vcd: No property
volume.
volume.
volume.
volume.
volume.
volume.
volume.disc.type = dvd_r