2009-02-12 2 views
2

Мне нужно создать mp3-файл с определенным количеством секунд молчания?Delphi: Как создать MP3-файл с определенным количеством секунд молчания?

Какой способ сделать это программно?

Редактировать: Его не нужно вставлять в mp3, просто один mp3-файл, содержащий молчание в течение нескольких секунд.

ответ

1

Кодировать очень короткий (~ 40 мс) волновой файл безмолвия и помещать полученный в качестве блока в качестве исходного кода в исходный код. Этот блок может быть закодирован со скоростью 32 Кбит (что является наименьшим возможным битрейтом iirc).

В качестве альтернативы вам придется ссылаться на любую mp3-библиотеку кодирования (например, LAME) и подавать молчание на то, чтобы вывести результат.

2

Вы просто хотите, чтобы MP3 длился X секунд, что просто тишина, или вы хотите ввести тишину в существующий MP3?

Это немного сложнее. В Windows XP по умолчанию установлен кодек кодирования MPEG низкого качества. Вы можете найти информатора о encoding to an MP3 with Delphi на той же странице, если вы пролистаете нижнюю часть информации о волновых файлах. Некоторые из ссылок сломаны.

Это двухэтапный процесс, вам необходимо сгенерировать сигнал, а затем закодировать этот сигнал в файл MP3. MP3-файлы имеют заголовок и блоки, поэтому вы не можете просто зацикливать 40 мс mp3 несколько раз.

+0

Мне просто нужно получить один файл с x секунд молчания, я не вставляю его/и не кодирую. Спасибо. –

+0

Затем вам нужно сгенерировать сигнал молчания и закодировать его с помощью указанной мной ссылки. Вы можете вызвать кодек, встроенный в XP, или связать его с вашим приложением. BTW, имейте в виду, что есть лицензионные сборы за использование MP3 в вашем приложении. –

+0

Я ничего не смог найти на этом сайте, ссылки сломаны ?! –

Смежные вопросы