Создание функции записи компакт-дисков для музыкального проигрывателя на основе Java - PullRequest
1 голос
/ 21 марта 2010

Я пытаюсь создать функцию записи компакт-дисков для музыкального проигрывателя на основе Java для моего школьного проекта. Поскольку я новичок в программировании в реальной жизни (я только научился писать коды на уровне AP Computer Science A), я не знаю, как я могу применить концепции, которые я выучил из APCS A, к этой задаче.

Мой друг, который изучает информатику в аспирантуре, сказал мне «посмотреть функции управления проигрывателем компакт-дисков и добавить методы в эти классы для чтения данных, которые вы хотите записать на компакт-диск, записи в буфер». записать все в буфере на сам компакт-диск, очистить буфер и затем записать новый фрагмент данных в буфер ", но я не совсем понимаю, что это значит, и сейчас очень трудно связаться с ней, потому что она занята работает над своей диссертацией. Может кто-нибудь из этого форума, пожалуйста, проведите меня и объясните общие понятия? Спасибо!

Ответы [ 3 ]

1 голос
/ 21 марта 2010

Более простое решение - написать интерфейс для cdrtools с открытым исходным кодом.

1 голос
/ 27 января 2014

JIIC: Java ISO Image Creator

JIIC является реализацией Java 9660 на основе потоковой передачи Java для создания образов файловой системы CD-ROM («образов ISO») с расширениями El Torito, Joliet и Rock Ridge. Он основан на потоковом API SABER и предоставляет задачу Ant для простой интеграции в процессы сборки на основе Java. ISO 9660

Стандарт ISO 9660 от 1988 года описывает файловую систему, которая будет использоваться для CD-ROM. ECMA-119 (2-е издание) полностью эквивалентно ISO 9660. Применяется несколько ограничений, включая наборы символов, глубокое вложение каталогов и длину файлов. В результате были разработаны такие расширения, как El Torito (загрузочные CD-ROM), Joliet (Unicode, более длинные имена файлов) и Rock Ridge (поддержка характеристик файловой системы UNIX). SABER

Простой API для двоичных представлений (SABER) был разработан Майклом Хартлом в Дармштадтском технологическом университете, Германия. Он представляет API потоковой передачи на основе Java для обработки двоичных данных (в отличие от текстовых представлений, таких как XML) через набор модулей, действующих в качестве конвейера. Прочитайте статью для деталей или посетите ее веб-сайт. JIIC

JIIC является результатом практической части моей дипломной работы в Дармштадтском технологическом университете, факультет компьютерных наук, Telecooperation Group. Дипломная работа под руководством профессора доктора Макса Мюльхойзера и Михаэля Хартла, разработчика SABRE.

JIIC и SABER предоставляются в виде набора классов Java 1.4, упакованных вместе в файлы JAR. Исходный код JIIC и SABER лицензируется в соответствии с LGPL. JIIC доступен от CVS, SABRE от SourceForge. Загрузки JIIC 1.1.2

All-in-one package
Updated test suite

JIIC 1.1.1

All-in-one package
Updated test suite

JIIC 1.1

All-in-one package

JIIC 1.0

ISO9660 JAR
SABRE JAR
ISOtest class
Test suite

Changelog

JIIC 1.1.2
    added support for long Joliet file names (up to 103 Unicode characters instead of 64, disabled by default) like mkisofs's -joliet-long option, as requested by Nigel Tamplin
JIIC 1.1.1
    fixed Joliet file name length check bug, reported by Alessandro Premoli and Christof Nef
JIIC 1.1 "JNode edition"
    Incorporated a patch by Gilles "Wooden" Duboscq for adding support for patching the El Torito boot image (like mkisofs -boot-info-table) and padding the ISO image to 150 sectors (like mkisofs -pad). See build.xml for the new options.
1 голос
/ 21 марта 2010

Возможно, вы захотите найти хорошую библиотеку для записи компакт-дисков, такую ​​как или любую другую, - просто убедитесь, что она работает в любой операционной системе, для которой вы собираетесь это делать. Вы, вероятно, не сможете сделать это напрямую из Java (по крайней мере, я не знаю ни одного способа записи на CD изначально в Java), но вы можете сделать это, например, в C ++, а затем использовать JNI чтобы позвонить. JNI позволит вам вызывать код C ++ из Java.

...