А что за кодек slin48?

 

Помечено: 

  • В этой теме 9 ответов, 3 участника, последнее обновление 6 лет назад сделано abadk.
Просмотр 10 сообщений - с 1 по 10 (из 10 всего)
  • Автор
    Сообщения
  • #11198
    Nobody
    Участник

    Звонил внутри АТС и в статистике высветилось такое чудо.
    Гугл вразумительно не ответил.

    #11199
    abadk
    Участник

    16 bit Signed Linear PCM (48kHz)

    Видимо было перекодирование. У меня максимум было slin16 из G722 в alaw/ulaw.

    #11206
    Nobody
    Участник

    Перекодирование чего во что?
    Оба устройства умеют и настроены по приоритету alaw, ulaw, g729
    Сервер пишет у обоих slin48.

    По вашему сервер перекодировал из alaw в несжатый 48кГц и сжал обратно в alaw, но не записал это?
    Да и также странно если бы он передал чисто линейный поток.

    А direct media включен на сервере? И может ли влиять на это?

    #11208
    abadk
    Участник

    alaw-alaw перекодировки не будет, но тогда и промежуточного кодека slin не будет.
    А вот ulaw – alaw будет перекодировка.
    У меня встречались такие варианты
    alaw – slin – slin -ulaw
    alaw – alaw/ulaw – ulaw
    ulaw – slin16 – slin16 – G722

    Насчет direct media не знаю.

    #11209
    Demon
    Участник

    Кодеки slin используются когда происходит серверная перекодировка:
    – когда различаются кодеки двух сторон. К сожалению, редко но бывают случаи когда сервер делает перекодировку даже если совпадающие кодеки есть, но далеко не приоритетные. Не знаю пока причин
    – когда вызывающей стороне проигрывается IVR или голосовое сообщение. В этом случае сервер проигрывает файл и случается, что на сервере нет файла с нужным кодеком. Происходит перекодировка.
    Проблема ещё и в том, что после проигрывания файла.. и соединения с вызываемой стороной перекодировка остаётся, т.к. не всегда происходит reinvite со сменой кодека у вызывающей стороны.

    тут много неясностей (мало полной ясности). Буду благодарен за любую практическую помощь в этом вопросе.

    #11437
    abadk
    Участник

    Решил попробовать софт-фон Ground Wire на андроиде.
    поставил частоту кодировки аудиосигнала 48 кГц (по умолчанию 16).
    Кодек использовался opus. На стороне сервера использовался кодек slin48.
    Т.е. цепочка такая: opus – slin48 slin48 – g722

    #11445
    Demon
    Участник

    slin – это кодек, через который происходит перекодирование между разными кодеками… В данном случае opus-slin-g722
    В сервере есть таблицы перекодировок.. и их “стоимость”. Если дешевле перекодировать через промежуточный кодек.. то это и происходит
    А вот для alaw-ulaw.. дешевле сделать напрямую

    #11475
    abadk
    Участник

    Тогда еще вопрос.
    Звоним через Сименс Гигасет 595. Кодек G722.
    Звоним через симку на шлюзе, там кодек стоит G722
    Смотрим историю звонков. Перекодировки не возникает, Идет чепочка кодеков
    G722-G722 и G722-G722.
    Делаем такой же звонок через обратный вызов.
    Цепочка кодеков G722-slin16 и slin16-G722.
    Как убрать перекодирование?
    ставлю в шлюзе принудительно кодек G722 и все равно
    получаю связку G722-slin16.
    Т.е. сервер, не зная куда я хочу звонить заранее приготовился
    перекодироать кодек.

    #11476
    Demon
    Участник

    Обратный звонок с донабором (скорей всего). Получается что вначале кодек slin выбирается из-за фразы “введите номер”..
    А после не происходит перевыбор кодека.
    Это моя гипотеза что не происходит reinvite.
    А есть еще теория.. что кодек в статистике в этом случае неверен.

    #11477
    abadk
    Участник

    Да, Обратный звонок с донабором. Статистика пишет, что через slin16 все идет.
    Там же 2 записи, т.е. 2 строки.

Просмотр 10 сообщений - с 1 по 10 (из 10 всего)
  • Для ответа в этой теме необходимо авторизоваться.