Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 1
Регистрация: 12.12.2012
Сообщений: 76

Где взять исходники голосовых кодеков?

01.06.2015, 16:04. Показов 1338. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Обращаюсь ко всем форумчанам с такой проблемой: для диплома нужно записывать, передавать через интернет и воспроизводить речь в реальном времени, если можно подскажите пожалуйста где можно взять исходный код кодеков G723 или подобных на java для сжатия голоса, потому что, все что попадалось, либо готовые реализации либо платные исходные коды, а платить деньги за одноразовое использование не вижу смысла. Заранее спасибо за помощь.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.06.2015, 16:04
Ответы с готовыми решениями:

Где взять исходники stl?
Не заголовочные файлы, а реализации. Слышал что в gcc где-то есть, но не нашел.

Где взять исходники mingw?
Кто-нибудь знает? Желательно ссыль на более или менее официальный сайт, сам я здесь ничё не могу найти, всё перерыл уже.

Где взять исходники ядра?
Здравствуйте все! Поставил с образа ArchLinux, но заранее скажу что дистрибутив не играет роли в моем вопросе. Вот она поставилась, однако...

3
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
01.06.2015, 16:22
а ты там большие какие то арии петь собрался? Обычная запись голоса в Джава в wav-файл не так уж и много занимает по меркам современного интернета.
0
0 / 0 / 1
Регистрация: 12.12.2012
Сообщений: 76
01.06.2015, 19:30  [ТС]
да нет арии петь не собираюсь, просто нужно по условиям задания передавать речь в режиме реального времени, без записи в файл, сделать что - то похожее на скайп
0
 Аватар для raxper
10237 / 6615 / 498
Регистрация: 28.12.2010
Сообщений: 21,154
Записей в блоге: 1
01.06.2015, 20:36
где можно взять исходный код кодеков G723 или подобных на java для сжатия голоса
кодеки на JAVA не пишутся.

А взять, начать можно из материалов Мастрюкова Димы. К его книге прилагались примеры, например:
что-то с форматированием
[C]/*-----------------------------------------------------------
Алгоритм компандирования 8-битовых звуковых файлов.
Демонстрационная программа.
Данный текст не представляет собой plug-and-play объект. Он
не поддерживает реальных форматов звуковых файлов и
подразумевает работу только с данными дискретизации, не включая
заголовка файла.
*/
#include <stdio.h>
#include <math.h>
/*-----------------------------------------------------------
Процедура сжатия выполняет три шага:
инициализация выходного потока,
построение таблицы перекодировки,
кодирование данных
*/

void CompressFile( FILE *input, BIT_FILE *output, int bits )
{
int table[256];
int steps, value;
int i, j;
int c;

/*
* Сначала в выходной поток выдается количество битов, которые
* будет использовать компандер, и размер несжатых данных.
*/
steps = ( 1 << ( bits - 1 ) );
OutputBits( output, (unsigned long) bits, 8 );
OutputBits( output, (unsigned long) get_file_length( input ), 32 );
/*
* Построение таблицы кодирования. Каждому значению уровня сигнала
* ставится в соответствие выходной код, при этом используется
* экспоненциальная функция.
*/
for ( i = steps ; i > 0; i-- )
{
value = (int)( 128.0 *
( pow ( 2.0, (double)i/steps ) - 1.0 ) + 0.5 );
for ( j = value ; j > 0 ; j-- )
{
table[j + 127] = i + steps - 1;
table[128 - j] = steps - i;
}
}
/*
* Далее следует простое перекодирование.
*/
while ( ( c = getc( input ) ) != EOF )
OutputBits( output, (unsigned long) table[ c ], bits );
}

/*-----------------------------------------------------------
Процедура декодирования выполняет три шага:
получение количества битов кода и длины исходного файла,
построение таблицы перекодировки,
декодирование данных
*/

void ExpandFile ( BIT_FILE *input, FILE *output )
{
int steps, bits, value, last_value;
int i, c;
int table[256];
long count;

/* Получение количества битов кода */
bits = (int) InputBits( input, 8 );

/* Заполнение таблицы перекодировки */
steps = ( 1 << ( bits - 1 ) );
last_value = 0;
for ( i = 1; i <= steps; i++ )
{
value = (int)
( 128.0 * ( pow ( 2.0, (double)i/steps ) - 1.0 ) + 0.5 );
table[steps+i-1] = 128 + ( value + last_value ) / 2;
table[steps-i] = 127 - ( value + last_value ) / 2;
last_value = value;
}
/* Получение длины исходного файла и декодирование */
for ( count = InputBits( input, 32 ); count > 0 ; count-- )
{
c = (int) InputBits( input, bits );
putc ( table
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
, output );
   }
}
 
/*-----------------------------------------------------------
* Измерение длины файла
*/
 
long get_file_length ( FILE *file )
{
   long marker;
   long eof_ftell;
 
   marker = ftell( file );
   fseek( file, 0L, SEEK_END );
   eof_ftell = ftell( file );
   fseek( file, marker, SEEK_SET );
   return( eof_ftell - marker );
}


А вообще, вот вам три открытых + тему Алгоритм сжатия аудио ! почитать (третий там).

для диплома нужно записывать, передавать через интернет и воспроизводить речь в реальном времени
А. Уколов. Прототип VoIP телефона. - ПРОграммист, 2010, №3.
Вложения
Тип файла: zip faad2-2_0-rc3.zip (958.6 Кб, 5 просмотров)
Тип файла: zip открытый кодек _cedocida_0.1.6.zip (188.9 Кб, 6 просмотров)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.06.2015, 20:36
Помогаю со студенческими работами здесь

Где взять исходники реального проекта
Пишу программку скромную (для себя\хобби), но с перспективой, если вдруг сложится устраиваться на должность связанную с программированием...

Подскажите пожалуйста где можно взять исходники для интернет магазина?
Народ, не подскажете ссылку , где можно скачать файлы с кодами, конфигурацией и.т.д. для интернет магазина, созданного на ASP.NET? Дело...

Где найти исходники калькулятора на VB?
Подскажите кто может. Где найти исходники калькулятора на VB Самому долго писать - времени нет.

Где достать исходники вирусов?
В чисто образовательных целях хочу изучить какой нибудь вирус Меня атаковал papadu.exe Но похоже я его уже везде затер Где бы...

Где можно найти исходники на С#?
Чтобы посмотреть на использование циклов, массивов, методов, классов и т.п.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru