Библиотека для кодирования формата .wav в .g729 GroovyCodecs - PullRequest
1 голос
/ 11 февраля 2020

Я пытаюсь использовать библиотеку:

https://github.com/jongoochgithub/GroovyCodecs/tree/master/G729

Не объясняется и не показывается, как она работает точно. У меня никогда не было контактов с форматированием аудио. И я не знаю, что я делаю неправильно.

Что я делаю:

byte[] buffer = new byte[60000];
...
G729Decoder decoder = new G729Decoder();
byte[] samples = decoder.Process(buffer);

G729Encoder encoder = new G729Encoder();
byte[] samples1 = encoder.Process(samples);

Я читаю файл с расширением .g729 и использую G729Decoder.Process, чтобы изменить его на .wav. Я могу сохранить этот файл и открыть аудио.

Но я не понимаю, почему, когда я декодирую и в следующем кодере этот файл, байт [] содержит другие байты. А сохранение этого файла приводит к повреждению звукового тракта.

Редактировать: Библиотека работает только при сжатии с потерями и массиве выглядит иначе. Я не допустил двух маленьких ошибок, когда мой код испортил полученные байты.

Совет: когда вы читаете .wav, пропустите 46 первых байтов. когда вы делаете l oop с кодировщиком и массив декодеров должен быть одинакового размера.

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