Delphi: Как создать файл MP3 с определенным количеством секунд тишины? - PullRequest
2 голосов
/ 12 февраля 2009

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

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

Edit: Его не нужно заново вставлять в mp3, только один mp3-файл, который содержит тишины х секунд.

Ответы [ 2 ]

2 голосов
/ 12 февраля 2009

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

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

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

1 голос
/ 12 февраля 2009

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...