какой кодек выбрать для VoIP

uniqueman
Уже с Приветом
Posts: 2013
Joined: 16 Mar 2002 10:01
Location: New York City

какой кодек выбрать для VoIP

Post by uniqueman »

Вопрос тем, кто имеет дело со звуковыми кодеками и в частности с VoIP.

В данный момент сжатие голосового потока на сервере и раскодирование на клиенте происходит через GSM 6.10 кодек. Качество звука при этом приемлимое, но хочется лучше.

Одна из проблем, с которой мы сталкиваемся сейчас это то, что в GSM 6.10 не могу найти silence suppression механизм. И когда человек, который вещает в эфир, молчит, то у клиентов слышен шорох на клиенте. По идее кодек должен просекать что уровень звука уменьшился до некоторого уровня и должен отсекать такой шум. Допустим проект vovida (WinRTP) сечет это. GSM 6.10 не сечет это видать...

Вообщем подскажите какие кто кодеки использует и тогда дальше поговорим :mrgreen:
- Чай, кофе не предлагаю...
- Спасибо, мы уже пиво выпили
User avatar
Kycb-Kycb
Уже с Приветом
Posts: 224
Joined: 16 Nov 2002 15:36
Location: New York

Post by Kycb-Kycb »

Мы пользуемся g.711, g.723.1 и g.729.
Лучшее качество, понятное дело, у g.711, но это 64 kb/s
g.723.1 есть в двух вариациях 5.6/6.3 kb/s
g.729 берет чуть больше - 8 kb/s, но дает качество получше и кажется легче переживает потерю пакетов.

А silence suppression делают для экономии bandwidth. End used experience получается хуже - собеседник пропадает и появляется ощущение, что разъединили. Из-за этого потом делают comfort noise generation. Так что, если вам просто шум не нравиться, то может и не стоит с этим бороться.
uniqueman
Уже с Приветом
Posts: 2013
Joined: 16 Mar 2002 10:01
Location: New York City

Post by uniqueman »

Спасибо за ответ. Начнем пожалуй..

G 711... На выходе 64Кb. Прилично, но это не беда. Большинство наших клиентов имеют довольно большую bandwidth поэтому я думаю что справятся. Вопрос в другом. Насколько быстро проихсходит кодирование сигнала? Сильно ли жрет CPU? Какой размер фрейма?

Насчет шума... Шорох в приемнике гасить придется это точно :cry: Клиенты жалуются. Человек, который вещает в эфир, говорит не очень много. В основном молчит. Изредка вставляяя информацию. В то время как он молчит шорох раздражает клиентов. Просят убрать... это точно.

Я разницы честно говоря не знаю еще, но Кусь Кусь, если вы тестировали GSM 6.10 и другие GSM, то сильно ли отличается качество? Допустим того же GSM 7.11 и GSM 6.10?
- Чай, кофе не предлагаю...
- Спасибо, мы уже пиво выпили
User avatar
Sanek
Уже с Приветом
Posts: 6991
Joined: 04 Sep 2002 04:06

Post by Sanek »

Если важно качество, но не очень важен бэнд, плюс ещё и CPU бережёте, то попробуйте использовать ADPCM40 или ADPCM32. Эти кодеки отработаны и стандартны.
По моему опыту хорошо сделанный SS + CNG звучит неотличимо от настоящих шорохов.
User avatar
Kycb-Kycb
Уже с Приветом
Posts: 224
Joined: 16 Nov 2002 15:36
Location: New York

Post by Kycb-Kycb »

uniqueman wrote:Спасибо за ответ. Начнем пожалуй..

G 711... На выходе 64Кb. Прилично, но это не беда. Большинство наших клиентов имеют довольно большую bandwidth поэтому я думаю что справятся. Вопрос в другом. Насколько быстро проихсходит кодирование сигнала? Сильно ли жрет CPU? Какой размер фрейма?

G711 это простой PCM и насколько я помню кодируется\декодируется практически задаром. т.е. о CPU можно не волноваться.

Качество у него такое же как у телефона. Хорошего телефона. MOS ~4.2

uniqueman wrote:Я разницы честно говоря не знаю еще, но Кусь Кусь, если вы тестировали GSM 6.10 и другие GSM, то сильно ли отличается качество? Допустим того же GSM 7.11 и GSM 6.10?


с GSM мы не сравнивали. У нас такого варианта нет. Мы живем с телефонами и gateways, а там только g.7xx И лучше 711 не бывает :)

g.723.1 дает качество сравнимое с сотовыми телефонами. MOS ~3.8. Если интересно, то google вам поможет с более точными цифрами.
dandrey
Уже с Приветом
Posts: 218
Joined: 09 May 2001 09:01
Location: Minsk ->Cincinnati,OH->Sunnyvale,CA

Post by dandrey »

Повториу Кусь-Кусь : "...silence suppression делают для экономии bandwidth..." , субьективное качество ухудшаетсиа ...
User avatar
Kycb-Kycb
Уже с Приветом
Posts: 224
Joined: 16 Nov 2002 15:36
Location: New York

Post by Kycb-Kycb »

uniqueman wrote:Насчет шума... Шорох в приемнике гасить придется это точно :cry: Клиенты жалуются. Человек, который вещает в эфир, говорит не очень много. В основном молчит. Изредка вставляяя информацию. В то время как он молчит шорох раздражает клиентов. Просят убрать... это точно.

Кстати, а на железо на стороне вещателя вы смотрели?
Какая звуковуха, какой микрофон и т.д.
Судя по вашему описанию, используется довольно чуствительный микрофон стоящий на столе или мониторе, который беред слишком много фона.
Может попробовать что-нибудь типа того, что используется операторами (headset с наушником и микрофоном). Если микрофон хорошо спозиционировать и настроить чуствительность, то он и человека будет хорошо слышно и фона будет меньше.
uniqueman
Уже с Приветом
Posts: 2013
Joined: 16 Mar 2002 10:01
Location: New York City

Post by uniqueman »

G711 это простой PCM


не понял. Вы хотите наверное сказать что на вход кодек получает сигнал в виде PCM?

с GSM мы не сравнивали. У нас такого варианта нет. Мы живем с телефонами и gateways, а там только g.7xx И лучше 711 не бывает :)


опять немного не въехал в фразу "мы живем телефонами".

У нас задача стоит такая, по T1 приходит голос в цифре (PCM) на серверное приложение (там Dialogic T1 карты стоят). Приложение кодирует его (сейчас через gsm 6.10) и отправляет клиентам по IP. Те раскодируют сигнал и в звуковую карту ... Вот я и думаю будет ли при таком раскладе другой кодек лучше. Попробую сегодня G 7.11 .. поглядим

и еще. G 7,11 по умолчанию ставится в систему?

и как уважаемые спецы относятся к third party кодекам (open source) типа Speex? (www.speex.org). Чем они плохи и чем хороши?
- Чай, кофе не предлагаю...
- Спасибо, мы уже пиво выпили
User avatar
Kycb-Kycb
Уже с Приветом
Posts: 224
Joined: 16 Nov 2002 15:36
Location: New York

Post by Kycb-Kycb »

uniqueman wrote:
G711 это простой PCM


не понял. Вы хотите наверное сказать что на вход кодек получает сигнал в виде PCM?

Был не совсем прав, PCM но чуть менее простой:
ITU-T G.711 is a standard to represent 8 bit compressed pulse code modulation (PCM) samples for signals of voice frequencies, sampled at the rate of 8000 samples/second. G.711 encoder will create a 64 Kbps bitstream. This standard has two forms, viz., A-Law and µ-Law. A-Law G.711 PCM encoder converts 13 bit linear PCM samples into 8 bit compressed PCM (logarithmic form) samples, and the decoder does the conversion vice versa. µ-Law G.711 PCM encoder converts 14 bit linear PCM samples into 8 bit compressed PCM samples.

Но это преобразование довольно дешевое в смысле CPU
uniqueman wrote:
с GSM мы не сравнивали. У нас такого варианта нет. Мы живем с телефонами и gateways, а там только g.7xx И лучше 711 не бывает :)


опять немного не въехал в фразу "мы живем телефонами".

"с телефонами" :) в смысле на одной стороне компьютер а на другой телефон. Телефонные сети используют 8khz sampling соответственно на стороне компьютера нам нет смысла использовать более высокий sampling rate.
Плюс большинство GWs поддерживают только g.711, g.723 и g.729. А нам посередине перекодировать не с руки, да и не зачем.
uniqueman wrote:У нас задача стоит такая, по T1 приходит голос в цифре (PCM) на серверное приложение (там Dialogic T1 карты стоят). Приложение кодирует его (сейчас через gsm 6.10) и отправляет клиентам по IP. Те раскодируют сигнал и в звуковую карту ... Вот я и думаю будет ли при таком раскладе другой кодек лучше. Попробую сегодня G 7.11 .. поглядим

Проверьте. Есть у меня подозрение что вы 711 u-Law и получаете...

uniqueman wrote:и еще. G 7,11 по умолчанию ставится в систему?

Windows? Ставится и g.723 тоже.
а за 729 надо платить.
Oleg_B
Уже с Приветом
Posts: 5406
Joined: 16 Apr 1999 09:01
Location: MA

Post by Oleg_B »

uniqueman wrote:по T1 приходит голос в цифре (PCM) на серверное приложение (там Dialogic T1 карты стоят). Приложение кодирует его (сейчас через gsm 6.10) и отправляет клиентам по IP.


Обычно Т1 передаёт голос в u-law 8x8KHz (G.711)
uniqueman
Уже с Приветом
Posts: 2013
Joined: 16 Mar 2002 10:01
Location: New York City

Post by uniqueman »

Oleg_B wrote:
uniqueman wrote:по T1 приходит голос в цифре (PCM) на серверное приложение (там Dialogic T1 карты стоят). Приложение кодирует его (сейчас через gsm 6.10) и отправляет клиентам по IP.


Обычно Т1 передаёт голос в u-law 8x8KHz (G.711)


то есть Вы хотите сказать что с Dialogic карты снимается голосовой поток, закодированный с помощью G 7.11? и типа мы его потом дальше кодируем через GSM 6.10 что ли?
- Чай, кофе не предлагаю...
- Спасибо, мы уже пиво выпили
Oleg_B
Уже с Приветом
Posts: 5406
Joined: 16 Apr 1999 09:01
Location: MA

Post by Oleg_B »

Я ничего не писал про Dialogic.
По проводам идёт обычно u-law (я, напимер, именно стандартным виндузовым 711 кодеком пользуюсь чтобы в 16 бит PCM его превратить, хотя можно просто табличку из 256 чисел использовать)
Last edited by Oleg_B on 26 Mar 2004 20:14, edited 1 time in total.
uniqueman
Уже с Приветом
Posts: 2013
Joined: 16 Mar 2002 10:01
Location: New York City

Post by uniqueman »

я знаю что по проводам идет u-law, только причем здесь G7.11?
- Чай, кофе не предлагаю...
- Спасибо, мы уже пиво выпили
Oleg_B
Уже с Приветом
Posts: 5406
Joined: 16 Apr 1999 09:01
Location: MA

Post by Oleg_B »

uniqueman wrote:я знаю что по проводам идет u-law, только причем здесь G7.11?


Абсолютно не при чём. Я говорю о G.711, читайте внимательнее
uniqueman
Уже с Приветом
Posts: 2013
Joined: 16 Mar 2002 10:01
Location: New York City

Post by uniqueman »

Я ничего не писал про Dialogic.
По проводам идёт обычно u-law


то бишь 8К sample rate умноженная на 8 бит на sample. Итого получаем 64Кbit/sec.

(я, напимер, именно стандартным виндузовым 711 кодеком пользуюсь чтобы в 16 бит PCM его превратить,


Вы имеете в виду поднимаете количество битов на один sample до 16? Увеличиваете амплитуду сигнала что ли?
- Чай, кофе не предлагаю...
- Спасибо, мы уже пиво выпили
Oleg_B
Уже с Приветом
Posts: 5406
Joined: 16 Apr 1999 09:01
Location: MA

Post by Oleg_B »

ну да, чтобы превратить в линейный PCM, который проиграть можно звуковой картой.
User avatar
Sanek
Уже с Приветом
Posts: 6991
Joined: 04 Sep 2002 04:06

Post by Sanek »

uniqueman wrote:я знаю что по проводам идет u-law, только причем здесь G7.11?


G.711 есть кодек, который превращает LPCM в u-Law или A-Law.

Разница между разными -Law в том, каким образом 13,14,16 битный LPCM конвертируется в 8-бит. В u, американском стандарте(T/DS), существует табличка для кодирования, а A, европейском (E), вычисляет октавность по нелинейному закону.
dandrey
Уже с Приветом
Posts: 218
Joined: 09 May 2001 09:01
Location: Minsk ->Cincinnati,OH->Sunnyvale,CA

Post by dandrey »

711 вам не поможет... я так понял что у вас что-то broadcast-тится, и обычные шумы вредны, а не полезны, "silence supression" уберет шум но вы получити "рваныи" голос и никакю музыку. Возможно настроиками можно будет наити золотую середину ...
Из статдартных с "silence supression" - G729AB (G729B) , но платныи
uniqueman
Уже с Приветом
Posts: 2013
Joined: 16 Mar 2002 10:01
Location: New York City

Post by uniqueman »

dandrey wrote:711 вам не поможет...


это да. Он оказывается уже приходит сжатый этим кодеком.

я так понял что у вас что-то broadcast-тится, и обычные шумы вредны, а не полезны,


да, шорох позади звука раздражает людей :(

но вы получити "рваныи" голос


почему?

и никакю музыку.


музыку не передаем только голос
- Чай, кофе не предлагаю...
- Спасибо, мы уже пиво выпили
dandrey
Уже с Приветом
Posts: 218
Joined: 09 May 2001 09:01
Location: Minsk ->Cincinnati,OH->Sunnyvale,CA

Post by dandrey »

Потому что тишины нет... :-)

Опять процитирую Кусь-Кусь
Kycb-Kycb wrote:Кстати, а на железо на стороне вещателя вы смотрели?
Какая звуковуха, какой микрофон и т.д.
Судя по вашему описанию, используется довольно чуствительный микрофон стоящий на столе или мониторе, который беред слишком много фона.
Может попробовать что-нибудь типа того, что используется операторами (headset с наушником и микрофоном). Если микрофон хорошо спозиционировать и настроить чуствительность, то он и человека будет хорошо слышно и фона будет меньше.

Правиное железо может быть самым правилным вариантом... А может "диктору" вообще на кнопку жать когда говорить хочет?
uniqueman
Уже с Приветом
Posts: 2013
Joined: 16 Mar 2002 10:01
Location: New York City

Post by uniqueman »

оборудование на стороне диктора очень профессиональное. Именно какой то крутой headset. Раньше он нажимал кнопку, но когда говорил именно через телефон. Mute работал замечательно. Сейчас же голос проходит через какой то навороченный "станок" звукорежиссерский, который позволяет изменять многие параметры голоса, чтобы звучало чище. И там уже mute не работает..
- Чай, кофе не предлагаю...
- Спасибо, мы уже пиво выпили
User avatar
Kycb-Kycb
Уже с Приветом
Posts: 224
Joined: 16 Nov 2002 15:36
Location: New York

Post by Kycb-Kycb »

А может вам самим silence detection написать?
На сколько я понимаю, в PCM все просто - чем больше цифра тем громче звук. Алгоритм, наверное, не сильно сложный, в интернете должен найтись.
А если еще не совсем убирать шум, а просто делать его тише (например в 4 раза: data >> 2), то вообще должно хорошо звучать.
uniqueman
Уже с Приветом
Posts: 2013
Joined: 16 Mar 2002 10:01
Location: New York City

Post by uniqueman »

Итак конретный вопрос.

какой стандартный кодек даст хорошее качество при битрейте до 24Kbit/sec?

На вход приходит PCM, 64 Kbit/sec, mu_law. Надо применить кодек (желательно через ACM manager), чтобы получить приличное качество. Bitrate терпим до 24 Kbit/sec.
- Чай, кофе не предлагаю...
- Спасибо, мы уже пиво выпили
uniqueman
Уже с Приветом
Posts: 2013
Joined: 16 Mar 2002 10:01
Location: New York City

Post by uniqueman »

И что народ думает по поводу МР3 кодека? Он тоже вроде по умолчанию ставится в систему. Если сжимать им, то какие подводные камни ждать?
- Чай, кофе не предлагаю...
- Спасибо, мы уже пиво выпили
Palych
Уже с Приветом
Posts: 13682
Joined: 16 Jan 2001 10:01

Post by Palych »

uniqueman wrote:И что народ думает по поводу МР3 кодека? Он тоже вроде по умолчанию ставится в систему. Если сжимать им, то какие подводные камни ждать?

Dumayu - zaderzhki budut beshenye.
Dazhe na bystrom CPU...

Return to “Вопросы и новости IT”