Как вы редактируете теги MP4 ID3 в Java?

Некоторое время назад я задавал аналогичный вопрос, но с python, и с тех пор решил переключиться на Java, потому что, похоже, было больше ресурсов для такого рода вещей. По сути, мне нужна какая-то библиотека, идея или инструкции, которые позволили бы мне редактировать теги ID3 в файле MP4, подобные тем, которые можно найти в iTunes. Если кто-то что-то знает, буду очень признателен за вашу помощь.

До сих пор я сделал следующее:

  1. Я нашел этот вопрос/ответ на очень похожую проблему: Как редактировать теги видео ID3v2 в Java (в нем описывается, как использовать библиотеку, предназначенную для аудиофайлов, называемую JID3, для редактирования тегов видео ID3), но я не могу понять, как на самом деле импортировать его в проект eclipse и используйте его. Я в основном распаковал его и добавил все пакеты в проект, но один раз, когда это сработало, впоследствии файл фильма стал нечитаемым для любого медиаплеера. Если у кого-то есть конкретные знания о том, как импортировать и использовать JID3, это было бы здорово.

  2. Я нашел этот сайт: http://willcode4beer.com/parsing.jsp?set=mp3ID3 который имеет, казалось бы, неплохой код для чтения и записи тегов ID3, к сожалению, он не работает должным образом, постоянно возвращая строки вопросительных знаков или сообщая мне, что файла нет спонтанно (он буквально сработает один раз, а затем не сработает в другой раз без изменений). Тем не менее, мне нравится идея просто читать байты или ASCII файла и таким образом находить/редактировать тег ID3, поэтому, если кто-нибудь знает, что для этого делать, это было бы здорово.

Заранее спасибо.


person RedHack    schedule 20.05.2011    source источник
comment
вы просматривали id3.org?   -  person MJB    schedule 21.05.2011


Ответы (2)


Метаданные в MP4 не обязательно имеют формат ID3. Есть возможность использовать ID3, но он не получил широкого распространения. Затем байты ID3 находятся в поле /moov/meta/id32. Файлы iTunes содержат свою метаинформацию в /moov/udta/... есть несколько полей, таких как '@cmt', '@nam', '@des', '@cpy', каждое из которых содержит строку для (в данном случае ) комментарий, название, описание, авторские права. Взгляните на http://code.google.com/p/mp4parser/, чтобы визуализировать , анализировать и записывать файлы MP4.

person Sebastian Annies    schedule 14.07.2011

Если я вас правильно понимаю, вы хотите иметь возможность редактировать такие метаданные, как: исполнитель, трек, обложка и т. д., а затем иметь возможность видеть свои изменения в iTunes или QuickTime.

В этом случае вы можете взглянуть на новый API, доступный в JCodec (org.jcodec.movtool.MetadataEditor). Он также имеет интерфейс командной строки (org.jcodec.movtool.MetadataEditorMain).

Вот основное использование:

# Changes the author of the movie
./metaedit -f -si ©ART=New\ value file.mov

или то же самое через Java API:

MetadataEditor mediaMeta = MetadataEditor.createFrom(new
    File("file.mp4"));
Map<Integer, MetaValue> meta = mediaMeta.getItunesMeta();
meta.put(0xa9415254, MetaValue.createString("New value")); // fourcc for '©ART'
mediaMeta.save(false); // fast mode is off

Полную документацию можно найти здесь: http://jcodec.org/docs/working_with_mp4_metadata.html

person Stanislav Vitvitskyy    schedule 29.09.2017