Инструмент командной строки для записи метаданных flac, ogg vorbis и mp3 id3v2?

8053
burzum

Есть ли инструмент командной строки, который может написать все три формата / контейнеры? Я уже искал, но не мог найти ничего, что делает работу.

Пока что я использую vorbiscomment, metaflac и id3tool, и я действительно хотел бы заменить их одним инструментом, если это возможно.

Если нет инструмента, который мог бы написать их все, есть ли какое-нибудь предложение заменить id3tool чем-то, что может написать хотя бы теги id3v2 (v2.4)?

Я не ищу тэггер, а инструмент, который позволит мне записывать метаданные сценарием в различные аудиофайлы. Мой текущий статус таков, что у меня есть скрипт, который использует три инструмента (vorbiscomment, metaflac и id3tool), но потом я понял, что id3tool не может писать теги id3v2 ... Я автоматически создаю эти 3 аудиоформата из мастера wav и мне нужно чтобы иметь возможность автоматизировать запись метаданных в эти файлы.

6

4 ответа на вопрос

5
burzum

Удивительно, но я нашел хорошее решение после месяца: Ffmpeg.

ffmpeg -i out.mp3 -metadata title="The Title You Want" -metadata artist="" -metadata album="Name of the Album" -c:a copy out2.mp3 

Смотрите полную статью здесь http://jonhall.info/how_to/create_id3_tags_using_ffmpeg

Он даже работает с данными UTF8 и иностранными символами.

Вы должны также использовать опцию, такую ​​как `-c: копия`, до того, как будет указан выходной файл, чтобы ffmpeg копировал поток, а не перекодировал его, иначе вы потеряете качество. realgeek 7 лет назад 0
0
ephemient

omptagger предоставляет унифицированный интерфейс для маркировки всех трех требуемых форматов файлов.

Я не ищу тегер. Уточняю мои вопросы, но спасибо за разъяснение, что есть тегеры, которые я не хочу. ;) burzum 12 лет назад 0
@burzum Я не уверен, что понимаю разницу? Вы можете написать отдельные теги с помощью `omptagger -s name = value file`. ephemient 12 лет назад 0
Хорошо, заметки заставили меня думать, что это невозможно, мне придется проверить это завтра, уже поздно здесь, и у меня Linux только на работающей виртуальной машине. Если бы существовал бинарный файл Windows, он был бы идеальным, потому что это моя основная операционная система. Я собираюсь просмотреть этот инструмент и пометить ваш ответ как правильный, если он сработает для меня. burzum 12 лет назад 0
0
rkv

Это работает для меня:

http://id3v2.sourceforge.net/

Он доступен в репозитории Debian, если это актуально.

- подождите, это пример «тегера», который вы не ищете? Боюсь, я не совсем понимаю ваш вопрос тогда ..

Есть программы «Taggers», которые просто переименовывают файлы на основе заданных данных или просто читают имя файла как строку и записывают данные оттуда в метаданные файла. Мои файлы просто uuids без расширений и пустых метаданных. Мне нужно что-то, что будет просто записывать метаданные в файлы. Собираюсь проверить и этот инструмент. burzum 12 лет назад 0
Как и id3tag, который поставляется с id3lib, он, похоже, перемешивает большинство не-ASCII символов. user495470 11 лет назад 1
0
user243282

libsndfile will do all that ffmpeg does and much more elegantly.

For example, when you run $ sndfile-metadata-set --help, you can see the usage:

 sndfile-metadata-set [options] <file> sndfile-metadata-set [options] <input file> <output file> Where an option is made up of a pair of a field to set (one of the 'bext' or metadata fields below) and a string. Fields are as follows : --bext-description Set the 'bext' description. --bext-originator Set the 'bext' originator. --bext-orig-ref Set the 'bext' originator reference. --bext-umid Set the 'bext' UMID. --bext-orig-date Set the 'bext' origination date. --bext-orig-time Set the 'bext' origination time. --bext-coding-hist Set the 'bext' coding history. --bext-time-raf Set the 'bext' Time ref. --str-comment Set the metadata comment. --str-title Set the metadata title. --str-copyright Set the metadata copyright. --str-artist Set the metadata artist. --str-date Set the metadata date. --str-album Set the metadata album. --str-license Set the metadata license. There are also the following arguments which do not take a parameter : --bext-auto-time-date Set the 'bext' time and date to current time/date. --bext-auto-time Set the 'bext' time to current time. --bext-auto-date Set the 'bext' date to current date. --str-auto-date Set the metadata date to current date. 

Most of the above operations can be done in-place on an existing file. If any operation cannot be performed, the application will exit with an appropriate error message.

Using libsndfile-1.0.25.

sndfile-metadata-set, по-видимому, не поддерживает запись файлов Flac или Ogg: «Ошибка: невозможно открыть входной файл« 01_The_Fox.ogg »: Ошибка: этот формат файла не поддерживает режим чтения / записи». slinkp 10 лет назад 1

Похожие вопросы