У меня есть несколько аудио файлов, которые представляют сессию. Так что в одной папке у меня может быть:
2016-06-22-15-59-59-000.mka
2016-06-22-16-59-59-001.mka
2016-06-22-17-59-59-002.mka
Имя файла - это дата и время, когда этот файл был создан. Например, первый файл был создан 22 июня в 15:59. Второй в 16:59.
Продолжительность звука может отличаться, фиксированной длительности нет. Например, пользователь может подключиться к сеансу за 5 секунд или за 10 минут. Таким образом, первая продолжительность будет 00:05, а вторая 10:00.
Эти файлы вместе представляют сессию - поэтому они должны быть объединены. Вы можете думать об этом, поскольку несколько человек звонят по одному и тому же номеру телефона, который используется для аудиоконференции.
Например, Алиса, Боб и Джон хотят что-то обсудить. Алиса звонит на номер 555-111-22-33, а Боб звонит на тот же номер через 1 минуту. Они разговаривают вместе в течение 5 минут. И через 30 минут Боб и Джон звонят на один и тот же номер одновременно. А потом Алиса присоединяется через 1 минуту.
Так что в этом случае у нас есть несколько аудиопотоков. Эти потоки обычно перекрываются, но не всегда. Например, когда Алиса ждет Боба в самом начале, мы уже записываем ее, и в этом сеансе больше никого нет, поэтому этот аудиопоток не перекрывается с другими.
Я ищу лучший способ объединить аудиозаписи каждого человека в один файл. Так что в этом файле мы должны услышать всех. И между звонками, когда Алиса, Боб и Джон не находятся на сессии, должна быть просто тишина.
Я смотрю на ffmpeg doc и не могу найти опции, которые я могу использовать для создания перекрывающихся потоков, и указать точное время, когда поток должен начаться.
Ребята, вы знаете, как лучше всего это сделать? Может быть, мне нужны лучшие инструменты, чем просто ffmpeg, может, мне просто нужно использовать библиотеки и язык программирования, чтобы создать собственную программу для этого? Спасибо