Version 0.5.4 [2024-05-05] - General * Updated libmediainfo to 24.04 - dkdiscinfo: * The --latest-timestamp option now outputs the latest timestamp even if parsing fails at some point. * Improved detection of disc system. * Added support for HD-DVD-5, HD-DVD-9, BD-5 and BD-9 to --media - dkdump: * Re-added cd dumping using cdrdao, --read-raw is used by default, also for pure ISO 9660 2048 byte sector CDs. * Now warns if an option on the command line is overwritten by another one, possibly by accident, e.g. when providing --mastering-code0 twice. - dkextract: * Merged dkiso2mkv into dkextract. Using dkextract on an ISO will extract all titles. * Updated options with DKM changes accordingly (and removed old ones): --with-type=TYPE/--without-type=TYPE - include/exclude extracting TYPE --videos/--no-videos - extract/don't extract videos --audio /--no-audio - extract/don't extract audio --images/--no-images - extract/don't extract images Extracting audio is currently a stub and will work in the future. It is currently treated just as with video. * Now automatically hot swaps tags of cucked ISOs with uncucked ones to not accidentally feed a cucked ISO to makemkv. In practical terms, if using dkextract on an ISO with .css. or .aacs. tag, it will look for an ISO with .nss. or .nacs. tag in the same directory. For DKM files, the tags of the referenced file will be hot swapped and the file will be checked out by size only. - [removed] dkiso2mkv: * Merged into dkextract - [renamed] dklist -> dklaunch (server): * Renamed to indicate the tool on the server side of dklaunch. In a future version this tool will deploy dklaunch (client) to the PS3. - dkm: * Removed --update option, updating an existing DKM file is now the default. Use --skip-if-existing if you don't want to update existing DKM files. * Optimized updating functionality, displaying updated objects with warning colors. * Moved 'dkm' object (containing version number etc.) before 'file_systems' so the latter can be deleted and rebuilt conveniently. * Generation of objects 'case' and 'rings' are now skipped none are provided. * Re-structured content layout, there are now 3 main content types, 'videos', 'audio' and 'images'. The content main type can be distinguished by a 'type' string object containing e.g. 'movie', 'episode', 'scene'. Previous string objects like 'movie', 'episode', etc. are now called 'tag'. Updated options with above changes accordingly (and removed old ones): --nvideos=N - generate N video content templates --naudio=N - generate N audio content templates --nimages=N - generate N image content templates --video-type=TYPE - set 'type' object for videos to TYPE --audio-type=TYPE - set 'type' object for audio to TYPE --image-type=TYPE - set 'type' object for images to TYPE --video-tag=TAG - set 'tag' object for videos to TAG --audio-tag=TAG - set 'tag' object for audio to TAG --image-tag=TAG - set 'tag' object for images to TAG * Now disables full checksums and file system checksums (files) if a '.readerror.' or '.arccos.' tag is encountered. Full checksums and FS parsing can be disabled or forced with new options: --disable-csum - Disables all checksums in the 'checksums' object --disable-full-csum - Disables full checksums, sha256_2m is kept --disable-fs - Disables parsing file systems completely --disable-fs-csum - Disables checksums for files in file systems --disable-fs-mediainfo - Disables mediainfo for files in file systems --force-full-csum - Force full checksums --force-fs-csum - Force checksums for files in file systems --force-fs-mediainfo - Force mediainfo for files in file systems * Added --template option, allows for pre-generating a DKM file without e.g. the disc. --fake-file is needed in addition. * Added --size and --system options for templates. - [new] dkm2csv: * Converts file systems in a DKM file to CSV format. Converted objects are offset, size, timestamp and checksums. CSV will be saved with a file system suffix tag e.g. '.iso9660.' or '.udf.'. - dkthumbnailer: * Fixed supporting hddvd5, hddvd9, bd5 and bd9 ISO tags. * Added .nfo files to thumbnailer, these are expected in the log directory Version 0.5.3 [2024-03-10] - General * Added proper EULA which needs to be signed by the user before usage. - dkdiscinfo: * Added option -w/--wasted-space to show the percentage wasted of a medium. Most applicaple to *-Video discs that could have used the space for better video quality. - dkdump: * Added a few missing options for dkm-passthrough - dkextract: * Added many --with-X/--without-X options to only extract when the extraction includes/excludes specified actors, keywords, codec, etc. See man page for details. * Added category 'memes' for extraction. - [new] dklock: * Locks disc device storage in memory, useful before generating metadata directly off a disc with dkm. - dkm: * Now saves the relative path found inside the system(medium) directory to the 'file' object, so e.g. dkextract finds the file where expected. * Added category 'memes' to extractions. - dkthumbnailer: * Added .mds files to thumbnailer, these are expected in the log directory next to the ISO(s). Version 0.5.2 [2024-02-26] - General: * Hotfix release with little new features - dkm: * Fix 'extractions' item being created outside of the *video object. * Fix a crash issue when using --update on video files * Added extraction type 'memes'. - dkextract: * --with-* Options now look for a case-sensitive match * Female/Male actors can now be extended with some additional information. e.g. "female_actors": ["Michaela Schaffrath (aka Gina Wild)"] Anything after a '(' and resulting trailing space will be ignored. * Added option --all-titles for discs to make makemkv output all titles at once before extracting, so makemkv doesn't need to be called multiple times with long startup time for each title. Version 0.5.1 [2024-02-25] - General: * Renamed sha256_1k (1k 2048 sectors) to sha256_2m (2 MiB) which fits better for normal files * Added support for BD-5, BD-9 and HD-DVD-5 and HD-DVD-9 discs. - dkdump: * Fixed some typo with options that passthrough to dkm. * Re-Implemented utilizing ddrescue for if readom fails. It is now disabled by default, enable with --enable-ddrescue. * Added option --remove-dump-after to remove the dump (after dkm). * Added option --remove-log-after to remove the log (after dkm). * Added option --remove-after to remove both (after dkm). - [new] dkeject: * Little utility that ejects DK_DRIVE or toggles it with -t. - dkextract: * Renamed default output directory from DK_CACHE/extracted to DK_CACHE/extractions * Added option --with-female-actors="Actor One,Actor Two,..." to only extract if the extraction contains specified female actors * Added option --with-male-actors="Actor One,Actor Two" to only extract if the extraction contains specified male actors * Added option --with-keywords="keyword1,keyword2,..." to only extract if the extraction contains specified keywords - dkm: * Updated libmediainfo to snapshot 24.01.20240224 which fixes issues with some files on BD-Video discs. * Changed the way files in memory are passed to libmediainfo, fixing issues with some information being absent from the mediainfo * Added option --no-barcode to not generate item 'ean_13'. * Added option --no-covers to not generate item 'covers'. * Added option --no-extractions to not generate item 'extractions'. * Added option --aspect-ratio to set 'aspect_ratio' for all extractions * Added option --vres-scan-fps to set 'vres_scan_fps' for all extractions * Added option --codec to set 'codec' for all extractions * Added option --skip-if-existing to no generate a DKM file if one already exists (autodetermined). * Added option --update to update items 'file\_system' and 'dkm' in an existing DKM file (autodetermined) with the new version. - dkserver: * Added description of upcoming premium features in the documentation. Version 0.5.0 [2024-02-05] - General: * Major re-structuring, all functionality is now contained in one monolithic disc-kuraudo binary, with 'dk'-prefixed programs calling it. No more bash. Some functionality is missing, which will be re-implemented asap. * Added man pages for every tool, available also online at https://disc-kuraudo.eu/man * DK_ROOT structure is changed, media is now contained in a 'media' subdirectory, see man-page disc-kuraudo(1) for an overview. * Configuration files are read from certain locations, see disc-kuraudo(1). * powerpc64 version removed for now since voidlinux-ppc64 discontinued. I don't think there is demand for this, also not a fully featured platform since makemkv is not ported for this architecture. If demand emerges, I might consider re-enabling this target platform on another distribution. * Various small changes. - [removed] dklink: * Functionality merged into dklist. - [removed] dkmpv: * No need for this wrapper. Functionality can be achieved with mpv configs. - [removed] dkvisor: * This tool will re-appear as a premium-only tool. - dkdump: * 'logs' directory is now renamed to 'log' * .readom log files are now renamed to .dkdump with more logging, containing the disc-kuraudo version and options provided on the command line. Old .readom files shall be renamed to .dkdump for proper thumbnailing. * Now shows and logs info of a recordable disc medium. * Will now show the percentage wasted space of Video discs. - dkextract: * Added options to extract only a type of extractions or exclude types of extractions. * --wildcard option is now called --regex * e.g. --female-actors-only option is now called --tag-female-actors-only (male-actors, no-actors analogous) - dklist: * dklink functionality merged. * No more symlinking will be done. The DK_ROOT/media directory will serve as the base for all ISOs and dkserver. * Does not require command line arguments anymore. A single call to dklist will now generate dklist.bin and dkcovers.bin - dkserver: * Now does not require a directory to be specified. The root directory of the server will always be DK_ROOT/media * Remaps media e.g. an ISO mounted as DVDISO will be remapped to DK_ROOT/media/dvd-video * Added --port and --whitelist command line options. Previously these were provided on the command line without proper context. - dkm: * Will now show the percentage wasted space of Video discs that could have been utilized for a better video quality. * Added top-level field 'wasted_space' in DKM files. - dklaunch: * Support for remote control added. * Added keybind L2/R2, skips 100 titles back/forth Version 0.4.0 [2023-09-18] - General: * Added powerpc64 release, built on voidlinux-ppc against glibc 2.32. * Restructured paths to disc media from using underscores '_' to dashes '-' e.g. 'dvd_video' is now 'dvd-video'. It just seems to suit it better. * Output of programs is now more colored, with variables and automated behavior highlighted. * Added .neroburningrom., .mactheripper., .drmp. tags to bwarez. - [removed] dkvideots2iso: * Removed dkvideots2iso, it will be replaced by a premium-only tool at some point in the future. Having to deal with directory releases of DVDs/HD-DVDs/BDs at all is so unnecessary that I decided managing these will be a premium feature. - [new] dkvisor: * A tool that is able to find files (e.g. disc images) from DKM files (and vice versa), checking size, sha256_1k and sha256 to be sure the right files are located. * This tool will soon be the core management tool to automatically manage disc images and more into the disc-kuraudo ecosystem. - dkextract: * Now uses dkvisor to find disc image referenced in DKM file. * Fixed an issue with extracting screenshots. - dkm: * Added generation of mediainfo metadata for media files inside disc images. * Added preliminary support for generating metadata of media files, e.g. .mp4, .avi files directly, soon to be supported by dkextract. * Fixed issues processing fragmented files on UDF file systems. * Added 'covers' variable for links to [f]ront, [b]ack, [i]nlay, [d]isc covers. - dkthumbnailer: * Optimized thumbnailing performance for directories, handling them first and picking what really needs to be sourced more. - dklaunch: * Fixed a crashing issue when flipping covers. Version 0.3.4 [2023-05-06] - General * Hotfix release. - dklink: * Fixed generation of dklist.txt. Version 0.3.3 [2023-05-05] - General: * Switched to a 'config.bashrc' instead of 'config.json'. Increasing performance a lot when frequently calling DK scripts. This is very notable for dkthumbnailer. * Reduced the amount of subshells called in bash scripts to increase performance where possible. * Moved specialized functionality like finding for icons to the tools. * Added .dvdshrink. tag to mark disc images that got screwed up with DVD Shrink. - dkdiscinfo: * Fixed parsing UDF timestamps in libudfread-dk. * Now parses the root directory for both ISO9660/UDF disc images to find the latest timestamp. - dkdump: * Now waits 5s with a remark when a timestamp on disc is more recent than a provided release tag to hit Ctrl+C to correct if desired. - dklaunch: * Not updated and kept at 0.3.2 - dklink: * Is a bit more verbose at startup in what it's doing and finding. - dkm: * Fixed incompletely parsing large directories in ISO 9660 disc images. * Fixed parsing UDF timestamps in libudfread-dk. * Now parses the root directory for both ISO 9660 and UDF disc images. * Now warns that parsing CDs (.cue, .toc) is not supported yet. - dkrename: * Properly renames front/back/inlay covers with the naming change from version 0.3.2. - dkthumbnailer: * Only sources disc-kuraudo.bashrc when needed to speed up directory thumbnailing. * Some corrections and optimizations. Version 0.3.2 [2023-04-21] - General: * Changed build systems so binaries work across a wide range of Linux distributions. Linux x86_64 build is now built against glibc >= 2.17. Linux aarch64 build is now built against glibc >= 2.28. * libudfread-dk.so is now shipped with the build. - [new] dkiso2mkv: * Extracts all titles from a DVD/HD-DVD/BD-Video ISO using makemkv. - dkextract: * Fixed screenshot extraction. * Added 'aspect_ratio' DKM variable for screenshots for anamorphic content. * Added support for extracting episodes. - dklaunch: * Changed button bindings Square -> flip cover L3 -> previous category R3 -> next category * Added example dkcovers.bin and dklist.bin with a few titles. - dklink: * Now looks for front and back covers with an .f., .b. suffix, respectively. e.g. for an ISO image 'studio.title.r2013.03.07.ntsc.dvd9.iso' it will look for 'studio.title.r2013.03.07.ntsc.dvd.f.png' * Stub for inlays, support for will be there soon. * Optimized generation of covers using pipes. - dklist: * Fixed a bug where the application could segfault. * New format of 'dklist.bin' to hold front, back covers and inlays. - dkm: * Added 'aspect_ratio' variable for screenhots. - dkpng2argb: * Added ability to read PNG from stdin and outputting ARGB to stdout. - dkthumbnailer: * Now looking for .f. suffixed covers. - dkvideots2iso: * Changed .warez. tag to .bwarez., indicating a B-Class of warez that have been tampered with. "B-Ware" in German ~ "B-stock". Version 0.3.1 [2023-04-01] - [new] dklabel: * Tries to find a disc label from a 'VIDEO_TS.IFO' file. - [new] dkvideots2iso: * dkvideots2iso generates an ISO, using mkisofs from cdrtools, with the provided VIDEO_TS and surroundings to '${DK_ROOT}/dvd_video/mkisofs'. * A 'dkmkisofs' fork invalidating all lost metadata for reproducible ISOs is planned for release 0.4.0. * ISOs have automated unique file names with a potential disc label from dklabel, 'VIDEO_TS.IFO' checksum, and a suffix containing .warez.mkisofs...iso - dklink: * Aspect ratios of converted covers are either the dimensions for DVD, BD or square, guessed from source aspect ratio. * Duplicate covers are now skipped. * Covers are converted into a 'dkcovers.bin' blob for better performance. HDD/SSD cover loads are both performant now. - dklist: * New format of 'dklist.bin'. - dklaunch: * Compatible with dklink and dklist changes. * Duplicate covers are rendered efficiently when being rendered in sequence. - Various little changes and fixes. Version 0.3.0 [2023-03-12] - [new] dklink: * Link all disc images into '${DK_ROOT}/srv', generate 'dklist.txt' for dklist. - [new] dklist: * Compile a 'dklist.bin' from 'dklist.txt' for dklaunch. - [new] dkmount: * Trigger mount of a disc image on a PS3. - [new] dkpng2argb: * Converts a .png cover to a raw .argb cover. - [new] dkserver: * dkserver - Server to stream disc images to your PS3. - Added PS3 GUI dklaunch as a replacement for slaunch - webMAN(-MOD) - dkm: * Fixed --mastering-code1 being linked to --mastering-code0 - dkextract: * Fixed wildcard extraction, was missing setting use_wildcard=1 Version 0.2.1 [2023-02-05] - Removed unready tools meant for next release Version 0.2.0 [2023-02-05] - General: * Added AArch64 architecture * Improved dkdump along with dkdiscinfo - more automated, more features, more stable. * Added Makefile for installation. * Renamed directory dvdvideo -> dvd_video, same with bd, hddvd. - [new] dkm: * Metadata generation tool. - [new] dkextract: * scene/clip/screenshot extraction based on metadata) tool. - [new] dkmpv: mpv wrapper to automatically deinterlace tagged videos. Version 0.1.0 [2022-12-16] - Initial release - Tools: dkdump, dkdiscinfo, dkrename, dkthumbnailer