VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Сдвиг при записи через MixMonitor

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

Ответить
slayder.x3
Сообщения: 4
Зарегистрирован: 24 сен 2012, 18:00

Сдвиг при записи через MixMonitor

Сообщение slayder.x3 »

Всем Всем хорошего настроения!
Есть такая проблема: при записи звонка через MixMonitor в результирующем файле наблюдается сдвиг. Голос внутреннего абонента звучит секунд на 10-15 раньше, чем внешнего. Судя по всему разница во времени совпадает с длительностью ожидания абонента, пока идет соединение. Кто-нибудь сталкивался с подобным? Куда копать?
ded
Сообщения: 15630
Зарегистрирован: 26 авг 2010, 19:00

Re: Сдвиг при записи через MixMonitor

Сообщение ded »

Точное время на сервере Астериск, синхронизация с pool.ntp.org
slayder.x3
Сообщения: 4
Зарегистрирован: 24 сен 2012, 18:00

Re: Сдвиг при записи через MixMonitor

Сообщение slayder.x3 »

ded писал(а):Точное время на сервере Астериск, синхронизация с pool.ntp.org
Время синхронизировано.
Уточню: общение с внешним миром через Dahdi. E1 плата. Время, по идее не должно влиять. Разницы внутренние или внешние разговоры - нет.
Как будто один канал пишется с момента набора номера, а второй с момента ответа. И при сложении - получается сдвиг
slayder.x3
Сообщения: 4
Зарегистрирован: 24 сен 2012, 18:00

Re: Сдвиг при записи через MixMonitor

Сообщение slayder.x3 »

Приложу лог:
-- Executing [89059561445@from-internal:1] Macro("SIP/3001-00000004", "user-callerid,LIMIT,") in new stack
-- Executing [s@macro-user-callerid:1] Set("SIP/3001-00000004", "AMPUSER=3001") in new stack
-- Executing [s@macro-user-callerid:2] GotoIf("SIP/3001-00000004", "0?report") in new stack
-- Executing [s@macro-user-callerid:3] ExecIf("SIP/3001-00000004", "1?Set(REALCALLERIDNUM=3001)") in new stack
-- Executing [s@macro-user-callerid:4] Set("SIP/3001-00000004", "AMPUSERCIDNAME=Savlyuk S") in new stack
-- Executing [s@macro-user-callerid:5] GotoIf("SIP/3001-00000004", "0?report") in new stack
-- Executing [s@macro-user-callerid:6] Set("SIP/3001-00000004", "AMPUSERCID=3001") in new stack
-- Executing [s@macro-user-callerid:7] Set("SIP/3001-00000004", "CALLERID(all)="Savlyuk S" <3001>") in new stack
-- Executing [s@macro-user-callerid:8] GotoIf("SIP/3001-00000004", "0?limit") in new stack
-- Executing [s@macro-user-callerid:9] ExecIf("SIP/3001-00000004", "1?Set(GROUP(concurrency_limit)=3001)") in new stack
-- Executing [s@macro-user-callerid:10] GosubIf("SIP/3001-00000004", "0?sub-ccss,s,1(from-internal,89059561445)") in new stack
-- Executing [s@macro-user-callerid:11] GotoIf("SIP/3001-00000004", "1?continue") in new stack
-- Goto (macro-user-callerid,s,24)
-- Executing [s@macro-user-callerid:24] Set("SIP/3001-00000004", "CALLERID(number)=3001") in new stack
-- Executing [s@macro-user-callerid:25] Set("SIP/3001-00000004", "CALLERID(name)=Savlyuk S") in new stack
-- Executing [s@macro-user-callerid:26] Set("SIP/3001-00000004", "CHANNEL(language)=ru") in new stack
-- Executing [s@macro-user-callerid:27] Set("SIP/3001-00000004", "CHANNEL(language)=ru") in new stack
-- Executing [89059561445@from-internal:2] Set("SIP/3001-00000004", "MOHCLASS=default") in new stack
-- Executing [89059561445@from-internal:3] Set("SIP/3001-00000004", "_NODEST=") in new stack
-- Executing [89059561445@from-internal:4] Gosub("SIP/3001-00000004", "sub-record-check,s,1(out,89059561445,)") in new stack
-- Executing [s@sub-record-check:1] GotoIf("SIP/3001-00000004", "1?check") in new stack
-- Goto (sub-record-check,s,6)
-- Executing [s@sub-record-check:6] Set("SIP/3001-00000004", "__MON_FMT=wav") in new stack
-- Executing [s@sub-record-check:7] GotoIf("SIP/3001-00000004", "1?next") in new stack
-- Goto (sub-record-check,s,10)
-- Executing [s@sub-record-check:10] ExecIf("SIP/3001-00000004", "0?Return()") in new stack
-- Executing [s@sub-record-check:11] GotoIf("SIP/3001-00000004", "0?out,1") in new stack
-- Executing [s@sub-record-check:12] Set("SIP/3001-00000004", "__REC_STATUS=INITIALIZED") in new stack
-- Executing [s@sub-record-check:13] ExecIf("SIP/3001-00000004", "0?Set(__REC_POLICY_MODE=)") in new stack
-- Executing [s@sub-record-check:14] Set("SIP/3001-00000004", "NOW=1348496706") in new stack
-- Executing [s@sub-record-check:15] Set("SIP/3001-00000004", "__DAY=24") in new stack
-- Executing [s@sub-record-check:16] Set("SIP/3001-00000004", "__MONTH=09") in new stack
-- Executing [s@sub-record-check:17] Set("SIP/3001-00000004", "__YEAR=2012") in new stack
-- Executing [s@sub-record-check:18] Set("SIP/3001-00000004", "__TIMESTR=20120924-212506") in new stack
-- Executing [s@sub-record-check:19] Set("SIP/3001-00000004", "__FROMEXTEN=3001") in new stack
-- Executing [s@sub-record-check:20] Set("SIP/3001-00000004", "__CALLFILENAME=out-89059561445-3001-20120924-212506-1348496706.8") in new stack
-- Executing [s@sub-record-check:21] Goto("SIP/3001-00000004", "out,1") in new stack
-- Goto (sub-record-check,out,1)
-- Executing [out@sub-record-check:1] ExecIf("SIP/3001-00000004", "1?Set(__REC_POLICY_MODE=always)") in new stack
-- Executing [out@sub-record-check:2] GosubIf("SIP/3001-00000004", "1?record,1(exten,89059561445,3001)") in new stack
-- Executing [record@sub-record-check:1] Set("SIP/3001-00000004", "AUDIOHOOK_INHERIT(MixMonitor)=yes") in new stack
-- Executing [record@sub-record-check:2] MixMonitor("SIP/3001-00000004", "/home/recordings/2012/09/24/out-89059561445-3001-20120924-212506-1348496706.8.wav,,/usr/local/bin/lame -V7 ^{MIXMON_DIR}^{YEAR}/^{MONTH}/^{DAY}/^{CALLFILENAME}.wav ^{MIXMON_DIR}^{YEAR}/^{MONTH}/^{DAY}/^{CALLFILENAME}.mp3 && rm -f ^{MIXMON_DIR}^{YEAR}/^{MONTH}/^{DAY}/^{CALLFILENAME}.wav") in new stack
-- Executing [record@sub-record-check:3] Set("SIP/3001-00000004", "__REC_STATUS=RECORDING") in new stack
-- Executing [record@sub-record-check:4] Set("SIP/3001-00000004", "CDR(recordingfile)=out-89059561445-3001-20120924-212506-1348496706.8.wav") in new stack
-- Executing [record@sub-record-check:5] Return("SIP/3001-00000004", "") in new stack
-- Executing [out@sub-record-check:3] Return("SIP/3001-00000004", "") in new stack
-- Executing [89059561445@from-internal:5] Macro("SIP/3001-00000004", "dialout-trunk,2,989059561445,") in new stack
-- Executing [s@macro-dialout-trunk:1] Set("SIP/3001-00000004", "DIAL_TRUNK=2") in new stack
-- Executing [s@macro-dialout-trunk:2] GosubIf("SIP/3001-00000004", "0?sub-pincheck,s,1()") in new stack
-- Executing [s@macro-dialout-trunk:3] GotoIf("SIP/3001-00000004", "0?disabletrunk,1") in new stack
-- Executing [s@macro-dialout-trunk:4] Set("SIP/3001-00000004", "DIAL_NUMBER=989059561445") in new stack
-- Executing [s@macro-dialout-trunk:5] Set("SIP/3001-00000004", "DIAL_TRUNK_OPTIONS=t") in new stack
-- Executing [s@macro-dialout-trunk:6] Set("SIP/3001-00000004", "OUTBOUND_GROUP=OUT_2") in new stack
-- Executing [s@macro-dialout-trunk:7] GotoIf("SIP/3001-00000004", "0?nomax") in new stack
-- Executing [s@macro-dialout-trunk:8] GotoIf("SIP/3001-00000004", "0?chanfull") in new stack
-- Executing [s@macro-dialout-trunk:9] GotoIf("SIP/3001-00000004", "0?skipoutcid") in new stack
-- Executing [s@macro-dialout-trunk:10] Set("SIP/3001-00000004", "DIAL_TRUNK_OPTIONS=t") in new stack
-- Executing [s@macro-dialout-trunk:11] Macro("SIP/3001-00000004", "outbound-callerid,2") in new stack
-- Executing [s@macro-outbound-callerid:1] ExecIf("SIP/3001-00000004", "0?Set(CALLERPRES()=)") in new stack
-- Executing [s@macro-outbound-callerid:2] ExecIf("SIP/3001-00000004", "0?Set(REALCALLERIDNUM=3001)") in new stack
-- Executing [s@macro-outbound-callerid:3] GotoIf("SIP/3001-00000004", "1?normcid") in new stack
== Begin MixMonitor Recording SIP/3001-00000004
-- Goto (macro-outbound-callerid,s,6)
-- Executing [s@macro-outbound-callerid:6] Set("SIP/3001-00000004", "USEROUTCID=") in new stack
-- Executing [s@macro-outbound-callerid:7] Set("SIP/3001-00000004", "EMERGENCYCID=") in new stack
-- Executing [s@macro-outbound-callerid:8] Set("SIP/3001-00000004", "TRUNKOUTCID=3833358077") in new stack
-- Executing [s@macro-outbound-callerid:9] GotoIf("SIP/3001-00000004", "1?trunkcid") in new stack
-- Goto (macro-outbound-callerid,s,12)
-- Executing [s@macro-outbound-callerid:12] ExecIf("SIP/3001-00000004", "1?Set(CALLERID(all)=3833358077)") in new stack
-- Executing [s@macro-outbound-callerid:13] ExecIf("SIP/3001-00000004", "0?Set(CALLERID(all)=)") in new stack
-- Executing [s@macro-outbound-callerid:14] ExecIf("SIP/3001-00000004", "0?Set(CALLERID(all)=)") in new stack
-- Executing [s@macro-outbound-callerid:15] ExecIf("SIP/3001-00000004", "0?Set(CALLERPRES()=prohib_passed_screen)") in new stack
-- Executing [s@macro-dialout-trunk:12] GosubIf("SIP/3001-00000004", "0?sub-flp-2,s,1()") in new stack
-- Executing [s@macro-dialout-trunk:13] Set("SIP/3001-00000004", "OUTNUM=989059561445") in new stack
-- Executing [s@macro-dialout-trunk:14] Set("SIP/3001-00000004", "custom=DAHDI/g0") in new stack
-- Executing [s@macro-dialout-trunk:15] ExecIf("SIP/3001-00000004", "0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default)t)") in new stack
-- Executing [s@macro-dialout-trunk:16] ExecIf("SIP/3001-00000004", "0?Set(DIAL_TRUNK_OPTIONS=tM(confirm))") in new stack
-- Executing [s@macro-dialout-trunk:17] Macro("SIP/3001-00000004", "dialout-trunk-predial-hook,") in new stack
-- Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit("SIP/3001-00000004", "") in new stack
-- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/3001-00000004", "0?bypass,1") in new stack
-- Executing [s@macro-dialout-trunk:19] ExecIf("SIP/3001-00000004", "1?Set(CONNECTEDLINE(num,i)=989059561445)") in new stack
-- Executing [s@macro-dialout-trunk:20] ExecIf("SIP/3001-00000004", "1?Set(CONNECTEDLINE(name,i)=CID:3833358077)") in new stack
-- Executing [s@macro-dialout-trunk:21] GotoIf("SIP/3001-00000004", "0?customtrunk") in new stack
-- Executing [s@macro-dialout-trunk:22] Dial("SIP/3001-00000004", "DAHDI/g0/989059561445,300,t") in new stack
-- Requested transfer capability: 0x00 - SPEECH
-- Called DAHDI/g0/989059561445
-- DAHDI/i1/989059561445-5 is proceeding passing it to SIP/3001-00000004
-- Hungup 'DAHDI/i1/989059561445-5'
== Spawn extension (macro-dialout-trunk, s, 22) exited non-zero on 'SIP/3001-00000004' in macro 'dialout-trunk'
== Spawn extension (from-internal, 89059561445, 5) exited non-zero on 'SIP/3001-00000004'
-- Executing [h@from-internal:1] Hangup("SIP/3001-00000004", "") in new stack
== Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/3001-00000004'
== Executing [/usr/local/bin/lame -V7 /home/recordings/2012/09/24/out-89059561445-3001-20120924-212506-1348496706.8.wav /home/recordings/2012/09/24/out-89059561445-3001-20120924-212506-1348496706.8.mp3 && rm -f /home/recordings/2012/09/24/out-89059561445-3001-20120924-212506-1348496706.8.wav]
== End MixMonitor Recording SIP/3001-00000004
ded
Сообщения: 15630
Зарегистрирован: 26 авг 2010, 19:00

Re: Сдвиг при записи через MixMonitor

Сообщение ded »

Leif Madsen added a comment - 22/Sep/11 7:32 AM:
I'm closing this issue out. It appears most people have had this problem resolved for them with either an update to Asterisk, or in most cases, and update of the operating system. If you continue to have problems with this, please make sure you're using the latest version of Asterisk, and open a new issue.
https://issues.asterisk.org/jira/browse/ASTERISK-16578
slayder.x3
Сообщения: 4
Зарегистрирован: 24 сен 2012, 18:00

Re: Сдвиг при записи через MixMonitor

Сообщение slayder.x3 »

Все проапдейтено до последних релизов - ситуация та же. Есть подозрение что в разных контекстах инициируется запись для одного и того же звонка. Из-за этого происходит сдвиг... Есть мысли?
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Сдвиг при записи через MixMonitor

Сообщение Vlad1983 »

первичный wav слушать пробовали, т.е. тот что до конвертирования в mp3?

можно ещё поставить опцию b чтоб не писало до ответа
ЛС: @rostel
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH