Пользователи Linux, которые привыкли работать с музыкальными файлами из командной строки, могут уже использовать ffmpeg, но с помощью этого мощного инструмента трудно извлечь только длину файла. Есть несколько способов его использования, но есть и несколько других утилит, которые могут упростить процесс. В любом случае не составит труда найти продолжительность MP3 в командной строке Linux.
Вам нужно будет открыть приглашение, поэтому убедитесь, что вы либо ищете его в Unity Dash, либо запускаете его из системного меню в меню Whisker Xfce4 или из меню приложений LXDE, или, возможно, удерживайте клавиши Ctrl, Alt и T, чтобы открыть терминал. Хотя немногие редакторы MP3 будут использовать виртуальную консоль, эти приемы должны работать и на них.
Метод 1: Проверка продолжительности с mp3info
Скорее всего, у вас не будет установлен mp3info, даже если у вас есть все MP3-библиотеки без изменений, поэтому вам нужно использовать sudo apt-get install mp3info в дистрибутивах на основе Debian или Ubuntu, чтобы овладеть им. Это должно работать на любом из различных спинов Ubuntu, включая Xubuntu и Lubuntu. В связи с тем, что Fedora и Red Hat давно отказывают в поддержке технологии MP3 из-за их желания оставаться по-настоящему свободными, вам придется вручную загружать исходный код или двоичный файл i386 с http://www.ibiblio.org. / mp3info / page.
Новые установки Fedora должны поддерживать некоторые аспекты MP3, что означает, что вы можете в конечном итоге найти пакет в официальных репозиториях, но до этого вы можете скачать пакет mp3info-0.8.5a-1.i386.rpm и затем проверить его на вирусы. Если вы просматриваете файл в Nautilus после его загрузки, вы можете нажать клавишу F4, чтобы открыть командную строку прямо в этом каталоге. В противном случае откройте командную строку, как обычно, и используйте CD ~ / Загрузки перейти в каталог, в котором вы сохранили его, а затем запустить sudo yum установить mp3info-0.8.5a-1.i386.rpm если у вас активен файл sudoers. В противном случае вам нужно будет набрать су — и нажмите клавишу ввода, затем введите пароль перед запуском yum install mp3info-0.8.5a-1.i386.rpm, хотя вы также можете выбрать файл в Nautilus и посмотреть, сможете ли вы его установить. У пользователей Ubuntu и Debian вообще не должно быть никаких проблем, и одна команда sudo apt-get install должна автоматически обработать пакет.
После обработки пакета введите mp3info -p «% S» nameOfTrack.mp3 в командной строке и нажмите Enter, чтобы найти длину. Вам нужно заменить nameOfTrack.mp3 на имя файла, длина которого вам интересна. Если вы обнаружите, что ваша строка помещается в ту же строку, что и вывод, попробуйте mp3info -p «% S \ n» nameOfTrack.mp3 добавить новую строку там. Независимо от этого, это обычно возвращает время в секундах.
Пользователи FreeBSD, работающие с архитектурами x86 или x86_64, должны найти, что они могут скомпилировать исходный код для mp3info, но им также может быть интересно отметить, что версия программного обеспечения 0.8.5a теперь имеет официальный порт FreeBSD, который вы можете найти по адресу https: //svnweb.freebsd.org/ports/head/audio/mp3info/, если вы предпочитаете работать только с официальными пакетами.
Способ 2: определение продолжительности с помощью ffmpeg
Если вы уже установили ffmpeg и не хотите устанавливать mp3info, или если у вас установлена FreeBSD, где компиляция mp3info не подходит, то у вас все еще есть командный прием, который вы можете использовать для определения продолжительности легко с grep, но это может не всегда работать. Если нет других аргументов, то ffmpeg просто перечислит все, что он знает о любом файле MP3, который он передает. Предполагая, что вы хотите работать с файлом song.mp3, позвоните ffmpeg as ffmpeg -i song.mp3 2> 1 | grep Duration раздеть все, кроме длины музыки.
Возможно, вам придется поместить имя файла в кавычки, если оно содержит пробелы или другие символы. Хотя те, которые приходят из экосистемы Windows, OS X или iOS, могут не использоваться, имена файлов MP3 могут содержать двоеточия во многих файловых системах Linux и FreeBSD, поэтому вам, возможно, придется использовать кавычки и в этом случае.
Имейте в виду, что если у вас MP3 со средним битрейтом, то ffmpeg фактически оценит длину, и, таким образом, эта цифра может быть не совсем точной. Вы увидите «Оценка длительности по битрейту, это может быть неточно», если какие-либо оценки действительно имели место.
Способ 3: использование ExifTool
Если вы находитесь в дистрибутиве, где вы можете устанавливать программы, то вы можете попробовать sudo apt-get установить libimage-exiftool-perl если у вас есть доступ к менеджеру пакетов aptitude, например, в Ubuntu, Debian или Linux Mint. Вы не найдете этот пакет в полностью бесплатных дистрибутивах программного обеспечения, таких как Fedora или Red Hat, хотя он может появиться в ближайшем будущем.
Если у вас не было проблем с установкой, вы можете просто набрать exiftool filename.mp3, замените имя filename.mp3 тем файлом, который вас действительно заинтересовал. Помните, что вам может понадобиться заключать в кавычки имя, а не команду, если в имени файла есть двоеточие, косая черта, пробелы или что-то еще необычное. Иногда двоеточия используются для разделения имен исполнителей и названий альбомов в экосистеме Linux и FreeBSD.
Вы получите огромное количество информации, которая может зависеть от того, какую версию программного обеспечения установил ваш пакет, а также от того, был ли файл сделан профессионально или нет. Самая последняя строка будет перечислять время по слову Duration вместе с небольшим количеством информации о том, является ли продолжительность файла приблизительной или нет.
Вы также можете оформить exiftool filename.mp3 | grep Duration найти строку, в которой указывается продолжительность, без необходимости читать остальную часть материала, но это, как правило, только то, что вы хотели бы сделать, если бы работали со сценариями.