каков наилучший способ объединить mp3 файлы?

<p>у меня есть много-много mp3-файлов, которые я хотел бы объединить в один файл. я использовал метод командной строки</p><pre><code>copy /b 1.mp3+2.mp3 3.mp3 </code></pre><p>но это - боль, когда их много, и их названия противоречивы. время, кажется, тоже не подходит.</p>

<p>как отметил томас оуэнс, простое объединение файлов приведет к разбросу нескольких заголовков id3 по всему полученному объединенному файлу, поэтому информация о времени/битрейте будет в корне неверной.</p><p>вам нужно будет использовать инструмент, который может объединить аудио данные для вас.</p><p> <a href="http://mp3wrap.sourceforge.net/">mp3wrap</a> идеально подходит для этого - он предназначен для объединения файлов mp3 без необходимости декодировать + перекодировать данные (что приведет к потере качества звука), а также будет работать с id3 метки разумно.</p><p>полученный файл также можно разделить на его составные части с помощью инструмента mp3splt - mp3wrap добавляет информацию в комментарий idv3, чтобы разрешить это.</p>

<p> <a href="https://stackoverflow.com/a/62762/3195477">ответ дэвида</a> верно, что только при объединении файлов теги id3 будут разбросаны внутри (хотя это обычно не влияет на воспроизведение, поэтому вы можете сделать "copy/b" или в unix "cat a.mp3 b .mp3> комбинированный .mp3 "в крайнем случае).</p><p>тем не менее, mp3wrap - не совсем подходящий инструмент для объединения нескольких mp3 в один "чистый" файл. вместо того, чтобы использовать id3, он фактически вставляет свой собственный <a href="http://mp3wrap.sourceforge.net/mp3wrap-format.html">пользовательский формат данных</a> в кадры mp3 (часть "обтекание"), что вызывает проблемы с воспроизведением, особенно на itunes и ipod. хотя файл <em> будет </em> воспроизводиться нормально, если вы просто дадите им запускаться от начала до конца (потому что проигрыватели пропустят это произвольно не в формате mpeg), файл длительность и битрейт будут сообщены неверно, что нарушает поиск. кроме того, mp3wrap уничтожит все ваши метаданные id3, включая обложку, и не сможет обновить заголовок vbr с правильной длиной файла.</p><p> <a href="http://tomclegg.net/mp3cat">mp3cat</a> сам по себе создаст хороший файл объединенных данных (лучше, чем mp3wrap), но он также удаляет теги id3 и не может обновить заголовок vbr с правильной длиной присоединяемого файла.</p><p>вот <a href="http://lyncd.com/2011/03/lossless-combine-mp3s/">хорошее объяснение</a> этих проблем и метод (фактически два) для объединения файлов mp3 и получения "чистого" конечного результата с сохранением оригинальных метаданных - это командная строка, поэтому работает на mac/linux/bsd и т. д. он использует:</p><ul> <li> <a href="http://tomclegg.net/mp3cat">mp3cat</a> чтобы объединить кадры данных mpeg только в непрерывный файл, затем</li> <li> <a href="http://id3lib.sourceforge.net/">id3cp</a> скопировать все метаданные в объединенный файл и, наконец,</li> <li> <a href="http://home.gna.org/vbrfix/">vbrfix</a> чтобы обновить заголовок vbr.</li> </ul><p>для инструмента с графическим интерфейсом windows взгляните на <a href="http://www.shchuka.com/software/mergemp3/">merge mp</a> - он обо всем позаботится. (vbrfix также поставляется в форме графического интерфейса, но он не выполняет присоединение.)</p>

<p>используйте ffmpeg или аналогичный инструмент для преобразования всех ваших mp3-файлов в согласованный формат, например,.</p><pre><code>ffmpeg -i originala.mp3 -f mp3 -ab 128kb -ar 44100 -ac 2 intermediatea.mp3 ffmpeg -i originalb.mp3 -f mp3 -ab 128kb -ar 44100 -ac 2 intermediateb.mp3 </code></pre><p>затем во время выполнения объедините ваши файлы:</p><pre><code>cat intermediatea.mp3 intermediateb.mp3 > output.mp3 </code></pre><p>наконец, запустите их через инструмент <strong> <a href="http://mp3val.sourceforge.net/">mp3val</a> </strong>, чтобы исправить любые ошибки потока без принудительного полного перекодирования:</p><pre><code>mp3val output.mp3 -f -nb </code></pre>

<p>проблема времени связана с заголовками id3 файлов mp3, что не учитывается вашим методом при копировании всего файла.</p><p>у вас есть язык, который вы хотите использовать, или это не имеет значения? это повлияет на то, какие библиотеки доступны, которые поддерживают операции, которые вы хотите.</p>

<p><em> я действительно хотел, чтобы графический интерфейс переупорядочил их и вывел их в виде одного файла </em></p><p> <a href="http://www.playlistproducer.com/">playlist producer</a> делает именно это, декодируя и перекодируя их в комбинированный mp3. он предназначен для создания смешанных лент или простых подкастов, но вы можете найти его полезным.</p><p>(раскрытие: я написал программное обеспечение, и мне выгодно, если вы купите pro edition. lite версия - это бесплатная версия с несколькими ограничениями).</p>

<p>mp3-файлы имеют заголовки, которые вы должны уважать.</p><p>вы можете использовать библиотеку наподобие <a href="http://osalp.sourceforge.net/">open source audio library project</a> и написать инструмент вокруг нее. или вы можете использовать инструмент, который понимает mp3-файлы, такие как <a href="http://audacity.sourceforge.net/">audacity</a> .</p>

<p>если вы хотите что-то <strong> <em> бесплатно </em> </strong> с простым пользовательским интерфейсом, который делает <strong> полностью чистый </strong> mp3 я рекомендую <a href="http://mp3joiner.net/">mp3 joiner</a> .</p><p><strong> особенности: </strong></p><ul> <li>удаляет данные id3 (как id3v1, так и id3v2.x) и не добавляет свои собственные (в отличие от mp3wrap)</li> <li>соединение без потерь (не декодирует и не перекодирует .mp3s). нет кодеков требуется.</li> <li>простой пользовательский интерфейс (см. ниже)</li> <li>низкое использование памяти (использует потоки)</li> <li>очень быстро (по сравнению с mp3wrap)</li> <li>я написал это :) - так что вы можете запросить функции, и я добавлю их.</li> </ul><p><img src="https://i.stack.imgur.com/tgvyh.png" alt="mp3 joiner app"></p><p>ссылки:</p><ul> <li>сайт mp3 joiner: <a href="http://mp3joiner.net/">здесь</a> </li> <li>последний установщик: <a href="http://bytesoftly.com/download/apps/1/1.0/mp3joinersetup.exe">здесь</a> </li> </ul>

<p>как говорит дэвид, <a href="http://mp3wrap.sourceforge.net/">mp3wrap</a> это путь. однако я обнаружил, что он не исправляет заголовок длины звука, поэтому itunes отказалась воспроизводить весь файл, даже если все данные были там. (я объединил три 7-минутных файла, но он видел только первые 7 минут.)</p><p>я выкопал <a href="http://lyncd.com/2009/02/how-to-merge-mp3-files/">этот пост в блоге</a> , который объясняет, как это исправить, а также как скопировать теги id3 из исходных файлов (самостоятельно, mp3wrap удаляет ваши теги id3). или просто скопировать теги (используя id3cp из <a href="http://id3lib.sourceforge.net/">id3lib</a> ), выполните:</p><pre><code>id3cp original.mp3 new.mp3 </code></pre>

<p>я не слышал о mp3wrap раньше. выглядит отлично. я предполагаю, что кто-то где-то тоже превратил это в графический интерфейс. но, просто чтобы ответить на оригинальный пост, я написал графический интерфейс, который использует метод copy/b. итак, под покровом ничего нового под солнцем нет, но программа предназначена для того, чтобы сделать процесс менее болезненным, если у вас много файлов для слияния ... и вы не хотите перекодировать и каждый набор файлов для слияния используются одинаковые битрейты. если у вас это есть (и вы работаете в windows), проверьте mp3merge по адресу: <a href="http://www.leighweb.com/david/mp3merge">http://www.leighweb.com/david/mp3merge</a> и посмотрите, ищите ли вы это.</p>

<p>я бы использовал winamp, чтобы сделать это. создайте список воспроизведения файлов, которые вы хотите объединить в один, выберите плагин вывода disk writer, выберите имя файла, и все готово. файл, который вы получите, будет правильным файлом mp3, вы можете установить битрейт и т.д.</p>

<p>лично я бы использовал что-то вроде mplayer с опцией пропуска аудио, например, -oac copy.</p>

<p>вместо использования командной строки, чтобы сделать</p><blockquote> <p>копия/б 1.mp3 + 2.mp3 3.mp3</p> </blockquote><p>вместо этого вы можете использовать <a href="http://www.softempire.com/the-rename-downloads.html">"переименовать"</a> , чтобы переименовать все фрагменты mp3 в последовательность имен, которые расположены по порядку на основе некоторого счетчика. тогда вы можете просто использовать тот же формат командной строки, но немного изменить его на:</p><blockquote> <p>copy/b * .mp3 output\_name.mp3</p> </blockquote><p>это предполагает, что вы скопировали все эти фрагменты mp3 одновременно, и у них одинаковые настройки звука. отлично работал для меня, когда я конвертировал аудио книгу, которую я имел в .aa, в один .mp3. мне пришлось записать все файлы .aa на 9 компакт-дисков, затем скопировать все 9 компакт-дисков, а затем у меня осталось около 90 mp3. на самом деле боль в а55.</p>