Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Описать 2 аудиофайла отличающиеся на 1 секунду

0

Подскажите, как описать 2 файла, отличающиеся на 1 секунду (для их слияния). Вообще последние секунды можно не учитывать. Имя файла exten-${CALLERID(num)}-{EXTEN}-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${EPOCH}-слово

И в конце еще 2 слова различающихся, но они одни и те же, так что нормально.

А вот ${EPOCH} и ${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)} могут различаться на 1 секунду. Как, имея название одного файла, описать такой же файл с другим словом в конце, понятно, а как описать отличие на 1 секунду (можно 10 секунд)?

удалить закрыть спам изменить тег редактировать

спросил 2017-02-28 18:15:28 +0400

bestann Gravatar bestann
1 9 1 5

обновил 2017-02-28 18:17:41 +0400

Comments

1

Возможно использовать ${EPOCH:0:8}XX можно ли так описать что первые 8 цифр совпадают, а последние 2 любые? Но epoch может быть больше 10 цифр. Как вариант описать второй файл exten-${CALLERID(num)}-{EXTEN}-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%)} все что после минут не интересует. Но предварительно записать в переменную.

bestann ( 2017-02-28 18:45:13 +0400 )редактировать

В чем смысл таких манипуляций?

zzuz ( 2017-02-28 20:04:00 +0400 )редактировать

Использую Астериск для записи разговоров с CUCM, после разговора соединяю 2 файла, в веб-интерфейсе Elastix сразу можно слушать запись. Проблему решила по-другому, немного изменила имя второго файла в самом начале, не учитываю 2 последние цифры epoch, дату и время не ставлю, т.к. звонок может быть на стыке двух дней, часов). Завтра еще буду тестировать если абонент CUCM кого-то в конференцию добавил. И еще иногда баги проскакивают в приходящих аудиопотоках.

bestann ( 2017-03-01 00:07:20 +0400 )редактировать

Лучше это делать через stat по времени создания файла . Например , таким приемом $(date -d @stat --printf='%X' $1+"%Y%m%d-%H%M") . В формате даты можно задать нужный шаблон.

zzuz ( 2017-03-01 01:09:05 +0400 )редактировать

угу. и будет это все работать только пока не появилося двух звонков, пришедших от разных людей с разницей в одну секунду.

meral ( 2017-03-01 08:35:56 +0400 )редактировать

Да сама идея именования файлов странные . Это уже абстрактные рассуждения .

zzuz ( 2017-03-01 17:34:51 +0400 )редактировать

Пусть придут от разный людей с разницей в 1 секунду. Имя файла содержит еще номер телефона циско и второго человека (пока второго нет из-за старой версии CUCM). Аоны + 8 первых цифр epoch исключают совпадение имен файлов если будет много записей, слияние сразу после звонка возможно благодаря hangup handler. В чем странность? Когда объединяю в hangup handler, меняю наименование на вышеуказанное, чтоб велосипед не изобретать и звонки в веб-интерфейсе Elastix или FreePBX проигрывались (подгоняю формат под FreePBX, там кстати в конце не epoch, а еще с 3 цифрами после точки UNIQUEID, но и с epoch проигрываются, главное наличие полей exten и т.д.). При этом интересно, что иногда нет второго аудиоканала и рядом звонок с разницей в 1 сек (пока проверку при слиянии делаю, чтоб не зациклилось) и длительност первого 0, пока не ясно, т.к. версия CUCM старая и выдает только номера телефонов циско, а не удаленной стороны. Не все сразу.

bestann ( 2017-03-01 20:32:05 +0400 )редактировать

Слишком много тем для обсуждения в одном комментарии . Ваш велосипед , вам и ездить)

zzuz ( 2017-03-02 00:21:53 +0400 )редактировать

Будьте первым, кто ответит на этот вопрос!

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2017-02-28 18:15:28 +0400

Просмотрен: 98 раз

Обновлен: Feb 28 '17

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.