|
From: Roger <rog...@gm...> - 2013-11-07 00:17:25
Attachments:
BDR-Support-20131106.patch
|
If I'm not mistaken, these are handled with dvd+rw tools. Albeit, I've only used these massive sized discs for video which required UDF for my uses around here. (And, only takes four or so bash commands to create the container and write, again using dvd+rw-tools.) As far as integrating support for BD/Blu-ray discs into cdw, I've found most of the definitions for creating BD-R/BDRE support, but am now finding cdio only still returns type CD and type DVD, and no BD type is returned using /usr/include/cdio/cd_types.h. However, I've found /usr/include/cdio/mmc_util.h does have some code for handling BD-R/BD-RE media. I'll attach the patches I have so far for historical purposes here. Stumped at simple_type_label within disc_and_drive/cdw_cdio.h & disc_and_drive/cdw_cdio.c -- Roger http://rogerx.freeshell.org/ |
|
From: Roger <rog...@gm...> - 2013-11-07 00:26:43
|
See section "Media models and profiles" http://www.gnu.org/software/libcdio/libcdio.html#models_002dprofiles -- Roger http://rogerx.freeshell.org/ |
|
From: Roger <rog...@gm...> - 2013-11-07 01:27:28
|
CD-INFO of an unformated/unused BD-R DL $ cd-info [...SNIP...] Disc mode is listed as: No information ++ WARN: error in ioctl CDROMREADTOCHDR: Input/output error cd-info: Can't get first track number. I give up. CD-INFO of a formated and used BD-RE DL (ie. BD DL Rewritable) $ cd-info [...SNIP...] Disc mode is listed as: CD-DATA (Mode 1) CD-ROM Track List (1 - 1) #: MSF LSN Type Green? Copy? 1: 00:02:00 000000 data false no 170: 00:02:00 000000 leadout (0 bytes(0 KB raw, 0 bytes0 KB formatted) Media Catalog Number (MCN): not available Last CD Session LSN: 0 __________________________________ CD Analysis Report CD-ROM with unknown filesystem -- Roger http://rogerx.freeshell.org/ |
|
From: Roger <rog...@gm...> - 2013-11-07 01:47:55
|
Aside from dvd+rw-tools supporting BD-R/RE media, xorriso also handles BD-R/RE
media.
Here's a quick debug log from cdw, specifying xorriso to hand writing type CD media.
--- Snip ---
cdw_string_count_lines():921: INFO: returning 1 for "Getting disc info with xorriso"
cdw_string_get_line_len():721: INFO: returning 30 on len < chars_max ("Getting disc info with xorriso")
cdw_string_get_line_len():686: INFO: returning 0 for empty string
cdw_string_count_lines_new():949: INFO: returning 1 for "Getting disc info with xorriso"
cdw_string_get_line_len():721: INFO: returning 30 on len < chars_max ("Getting disc info with xorriso")
cdw_string_get_line_len():686: INFO: returning 0 for empty string
cdw_string_wrap():825: INFO: returning 1 lines in " Getting disc info with xorriso "
cdw_drive_get_drive_fullpath():711: INFO: selecting cdio drive path 0 = "/dev/sr0"
cdw_libburn_get_meta_info():80: INFO: speed #0 = 8992 -> 51
cdw_libburn_get_meta_info():80: INFO: speed #1 = 8992 -> 51
cdw_libburn_get_meta_info():97: INFO: might do tao
cdw_libburn_get_meta_info():101: INFO: might do sao
cdw_libburn_get_meta_info():140: INFO: disc is formatted, size of readable data:
cdw_libburn_get_meta_info():149: INFO: 24438784 sectors / 47732.000000 MB
cdw_drive_get_drive_fullpath():711: INFO: selecting cdio drive path 0 = "/dev/sr0"
cdw_xorriso_create_command_media_info():377: INFO: xorriso command string for media info: "/usr/bin/xorriso -indev /dev/sr0 -toc "
cdw_regex_caller():335: INFO: stderr: dispatching to xorriso
[... repeated ...]
cdw_regex_caller():335: INFO: stderr: dispatching to xorriso
cdw_xorriso_handle_media_status():458: INFO: disc is written
cdw_xorriso_handle_media_status():471: INFO: disc is closed
cdw_regex_caller():335: INFO: stderr: dispatching to xorriso
[... repeated ...]
cdw_regex_caller():335: INFO: stderr: dispatching to xorriso
cdw_disc_resolve_type_label():1147: INFO: disc type label 0 resolved as "unknown"
cdw_disc_resolve():990: WARNING: disc in drive is of type "unknown"
cdw_disc_debug_print_disc():1254: CURRENT DISC: simple type = "CD"
cdw_disc_debug_print_disc():1255: CURRENT DISC: type = "unknown" (0)
cdw_disc_debug_print_disc():1256: CURRENT DISC: state empty = "CDW_UNKNOWN"
cdw_disc_debug_print_disc():1257: CURRENT DISC: state writable = "CDW_UNKNOWN"
cdw_disc_debug_print_disc():1258: CURRENT DISC: type writable = "CDW_UNKNOWN"
cdw_disc_debug_print_disc():1259: CURRENT DISC: type erasable = "CDW_UNKNOWN"
cdw_disc_debug_print_disc():1262: CURRENT DISC CAPACITY: used = 0 (0.000 MB)
cdw_disc_debug_print_disc():1268: CURRENT DISC: file system: = "(null)"
cdw_ofs_is_iso():464: INFO: file system 0 / "none" is not ISO9660
cdw_disc_debug_print_disc():1274: CURRENT DISC: -1 write speed(s):
cdw_disc_resolve_type_label():1147: INFO: disc type label 0 resolved as "unknown"
cdw_disc_resolve():990: WARNING: disc in drive is of type "unknown"
--- Snip ---
--
Roger
http://rogerx.freeshell.org/
|
|
From: Kamil I. <ac...@wp...> - 2013-11-10 22:14:30
|
On 07.11.2013 02:47, Roger wrote: > Aside from dvd+rw-tools supporting BD-R/RE media, xorriso also handles BD-R/RE > media. > > Here's a quick debug log from cdw, specifying xorriso to hand writing type CD media. > > --- Snip --- > --- Snip --- > Hello Roger, Thank you for the information about BD and Blu-ray. If memory servers me well, then it wouldn't be *very* hard to add code for support of these media in cdw. If libcdio doesn't fully support them then perhaps some library from libburnia does.I'm also confident that both xorriso and dvd+rw-tools support these media as well. The hard part of the problem would be testing the new functionality added to cdw. I remember that when testing correctness of support of CDs and DVDs in cdw, I've burned literally tens of CDs and DVDs to cover as many use cases as possible: - creating ISO image and then burning the ISO image to disc; - burning files directly to disc; - creating multi-session discs; - creating single-session discs; - trying to create some error states/situations when burning CDs/DVDs; - burning with different speeds; - burning with verification; - burning with different options enabled and disabled; - a mix of the above. As I've said, I had to use tens of discs of different types to be sure that cdw can be released as useful, practical application. The cost of the discs wasn't a major issue for me. What was problematic was time needed to do the testing. I've spent many hours looking at the progress bar during the burning process. This can't be automated. This can't be sped up. Testing how 4.5 GB of data is burned to a disc, and how it is verified, is an exercise in patience. Can you imagine what it would be to test burning 25 GB of data? :D I've seen an opinion that it is easy for FOSS developers to write shiny and easy applications, but it's harder to do the boring, grunt work that is necessary to create a really useful piece of code. I'm afraid that until now cdw has suffered the same kind of problem, and implementing proper support for DVDs was all I could take. But maybe it's time to face the challenge :) Right now I'm finishing work on some other project (unixcw), and doing a next dev cycle on another (cwdaemon). After that perhaps I would take a look at cdw and see if - after 2 years from last release - it still compiles :) Maybe then I could make some moves towards adding support for DB *or* Blu-ray. Tell me please - does anyone use these types of discs? Is there any real need for supporting them in cdw? I've got impression that optical media in general is slowly becoming a technology of the past, and BD/Blu-ray never became as popular as CDs/DVDs (at least as medium for storing data). Best regards, Kamil |
|
From: Roger <rog...@gm...> - 2013-11-11 01:02:38
|
> On Mon, Nov 11, 2013 at 12:10:22AM +0100, Kamil Ignacak wrote: >On 07.11.2013 02:47, Roger wrote: >> Aside from dvd+rw-tools supporting BD-R/RE media, xorriso also handles BD-R/RE >> media. >> >> Here's a quick debug log from cdw, specifying xorriso to hand writing type CD media. >> >> --- Snip --- >> --- Snip --- >> >I've seen an opinion that it is easy for FOSS developers to write shiny and >easy applications, but it's harder to do the boring, grunt work that is >necessary to create a really useful piece of code. > >I'm afraid that until now cdw has suffered the same kind of problem, and >implementing proper support for DVDs was all I could take. But maybe >it's time to face the challenge :) I've taken time to add code to an old C project to turn it to apply to different hardware (ie. sctl -> dsctl), so I'm quite aware of the time required for programming in C. My biggest problem is taking time to trace the code, to find what each function does. As in your cdw, I ran into a line of uncommented code containing three functions. I'm a commenter at heart, and sometimes over comment in an attempt to make code reading or tracing as easy as writing a book. It's one thing to conquer reserving memory space when coding C, it's another step to conquer using Structures. But even if it's written in some scripting, I still rarely ever like retracing my own old scripting code! Yup. Overall, time consuming. About the only method I know of making it easier, is to comment every line of code, to make converting code to English (or your native language) more easier. For me to integrate those few definitions, it took roughly four hours, or about a day or so of tracing code. I would consider learning Python programming language, as I now have a faster computer, but learned Python has severe issues within being backwards compatibility with each major version! Due to this, I realized this is a likely severe issue with the designing or engineering of Python, and have to speculate as to the overall stability of future path of Python. (ie. Just because everybody jumps off a bridge, should I too? ;-) >Right now I'm finishing work on some other project (unixcw), and doing a >next dev cycle on another (cwdaemon). After that perhaps I would take a >look at cdw and see if - after 2 years from last release - it still >compiles :) Maybe then I could make some moves towards adding support >for DB *or* Blu-ray. > >Tell me please - does anyone use these types of discs? Is there any real >need for supporting them in cdw? I've got impression that optical media >in general is slowly becoming a technology of the past, and BD/Blu-ray >never became as popular as CDs/DVDs (at least as medium for storing data). So far, I see the massive amount of space Blu-ray provides as only really a demand for people archiving video. And with this thought, video disks minimally require udftools if they're just (legally) copying them. So I use a few commands to perform this: $ truncate --size=50GB ./test.udf $ mkudffs --lvid="MY_LEGAL_VIDEO" --utf8 ./test.udf $ sudo mount -oloop,rw ./test.udf /mnt/tmp/ $ chown -R roger.roger /mnt/tmp/* $ chmod -R a+rX /mnt/tmp/* $ rsync -ax --delete /Some/Files/ /mnt/tmp/ $ sudo umount /mnt/tmp Disable pre-formating with use-the-force-luke=spare:none, saving 256MB. (This 256MB space is used for safer or validated writing during the burn, and isn't necessary.) # dvd+rw-format -ssa=none /dev/sr0 # growisofs -use-the-force-luke=spare:none -dvd-compat -speed=4 -Z /dev/sr0=test.udf I state in the above, "legal video" as there are currently problems with Linux users being able to watch or enjoy their legally purchased Blu-ray encrypted movies or other encrypted media within Linux, as Blu-ray has no public (legal) implementation for enjoying Blu-ray Movies. Or, having something similar to libdvdcss providing encrypted DVD playback. (Too further mention, the already known Blu-ray aacs keys were recently revoked.) Due to this, I do not see Blu-ray media being as popular as DVD, as only Windows users can enjoy the Blu-ray content. To further mention, most Blu-ray content is still produced using similar bitrates as DVD content. (If you've noticed, producers have been selling DVD+Blu-ray media sets, as there are people smart enough not to invest in Blu-ray. ;-) I have used Blu-ray (BD-R, BD-RE) for performing a mass system backup as well here. (Containing pretty much all of my "/home/roger" folder, which has grown significantly since 1997.) However, I've only performed this once or twice a year. I perform more regular backups using a USB/Firewire connected hard drive, as it is much faster. Remote attached hard drives is usually the method I use when my operating system dumps or, files get lost or damaged. I use USB flash media for sporadic file transfers when traveling on foot, or once in a while I test a LiveCD on USB flash media. USB flash media is extremely unreliable in my opinion for backups, as it only takes one little bit of static electricity to almost effectively damage or erase files. I'm constantly see USB flash media here getting corrupted! I still burn live install CD/DVD ISO images for distributions, as the LiveCD optical media just works and is less tedious to do so then trying to install to USB media. In short, optical is still an extremely reliable choice. But for unknownledgeable users, they choose the quickest and cheapest method versus reliability usually. Because of the Blu-ray and/or HDMI spec fiascals, to include performance issues with their implementation, the Blu-ray method seems to be significantly frowned upon within the FOSS community. For example. For me to be able to enjoy any Blu-ray Movie for which I legally purchased, I have to first decrypt the stupid thing and make a backup copy. For which under US Law, it is legal to do so from when I was last briefed on the copyright laws awhile ago. Albeit, it's questionable and likely strongly criticized, but since I have no kids, it's not much of a issue as the unencrypted media will not go outside of this house or be shared. For those with kids, or friends who do not practice an honest lifestyle, this will be an obvious problem. I find it's a ridiculous waste of time and waste of resources, to copy the Blu-ray videos, as I've only done so with my purchased DVD Movies *only* once the DVD Movie becomes damaged! To have to un-encrypt and copy a Blu-ray Movie just to watch here is dumb. (I'm ranting here, but I'm trying to explain a sensible point of view from an ordinary consumer trying to follow the Law, while still being able to enjoy a Movie once they've paid for the product. ;-) So from this, you can see the strong will of the FOSS as well as many others, not to invest into Blu-ray media. Blu-ray media also has been compared to SVCD media, but I think Blu-ray is here to stay. Blu-ray just will not do well at all until the engineers of Blu-ray and HDMI make their products usable by honest users. HDMI is another issue, with the HDMI specifications requiring interleaved video with sound in order for it be used. In other words, a user typically cannot stream only audio over HDMI without a video signal. This is an issue with audiophiles or those wanting to save energy of not wanting their displays wasting energy. Also, many bugs are present within the HDMI coding, causing further problems with performance. In my opinion, HDMI is just another p headache and I just use S/PDIF Toslink. (S/PDIF Toslink has already been stated to have engineered HDMI quality signals, the specifications are just not yet implemented by the major hardware manufacturers.) Bottom line, I just had some free time and decided to do some code reading. Or, just didn't really feel like getting-up and doing work on the house, for which I've been a slave to for the past few years due to others not living an honest living. Eh. My main interests are just to learn some C/NCurses with free time during Winter, as their still likely the de-facto of coding per my previously stated comments. -- Roger http://rogerx.freeshell.org/ |
|
From: Kamil I. <ac...@wp...> - 2013-11-12 22:19:33
|
> I've taken time to add code to an old C project to turn it to apply to > different hardware (ie. sctl -> dsctl), so I'm quite aware of the time required > for programming in C. My biggest problem is taking time to trace the code, to > find what each function does. As in your cdw, I ran into a line of uncommented > code containing three functions. I'm a commenter at heart, and sometimes over > comment in an attempt to make code reading or tracing as easy as writing a > book. It's one thing to conquer reserving memory space when coding C, it's > another step to conquer using Structures. But even if it's written in some > scripting, I still rarely ever like retracing my own old scripting code! > > Yup. Overall, time consuming. About the only method I know of making it > easier, is to comment every line of code, to make converting code to English > (or your native language) more easier. There is a risk involved in that method: sooner or later you won't update some comment, and will end up with code saying one thing, and comment saying something else. For some critical lines of code its better to have no comment than to have a comment that is misleading (IMHO). > I would consider learning Python programming language, as I now have a faster > computer, but learned Python has severe issues within being backwards > compatibility with each major version! Due to this, I realized this is a > likely severe issue with the designing or engineering of Python, and have to > speculate as to the overall stability of future path of Python. (ie. Just > because everybody jumps off a bridge, should I too? ;-) Personally I'm torn between wanting to learn Python (supposed ease of use and elegance) and wanting to learn C++ (an ugly and powerful tool that still is in demand). Decisions, decisions... >> Tell me please - does anyone use these types of discs? Is there any real >> need for supporting them in cdw? I've got impression that optical media >> in general is slowly becoming a technology of the past, and BD/Blu-ray >> never became as popular as CDs/DVDs (at least as medium for storing data). > > So far, I see the massive amount of space Blu-ray provides as only really a > demand for people archiving video. And with this thought, video disks > minimally require udftools if they're just (legally) copying them. So I use a > few commands to perform this: > [...] > I have used Blu-ray (BD-R, BD-RE) for performing a mass system backup as well > here. I'm not a big consumer of movies, and I've never tried to add to cdw anything directly related to Video DVD. If I ever attempt to add support for new media, I think that it would be only for data storage. Using libs and tools that are available in Debian's "main" should keep me on the safe side when it comes to "legality" of Blu-ray. > My main interests are just to learn some C/NCurses with free time during > Winter, as their still likely the de-facto of coding per my previously stated > comments. One thing that I've learned from my projects is that C and ncurses are only tools, not the goals in themselves. The unixcw project required doing some code in awk, so I did it. It also forced me to learn a bit of C++/Qt4, so I did this as well. Of course I understand the need for learning a particular language or library, but it's always easier to do so (better motivation) when your pet project (or a project that is vital to you) is using said language or library. Best regards, Kamil |
|
From: Roger <rog...@gm...> - 2013-11-13 00:25:28
|
Ditto. Well said, and don't think I can add anymore. Agree as well as keeping the tools for data orientated. Eh. Just waiting for somebody to now also complain there's too much morse code in the open, and morse code also needs to be encrypted. -- Roger http://rogerx.freeshell.org/ |