Народ, может мне внятно кто то сказать, как сложить несколько звуковых потоков в один?? Уже неделю перекапываю по тем же сайтам эту тему, ничего конкретного, только обобщения, описания и прочее. Помогите, только если можно не ссылкой, а прямо здесь напишите по шагам алгоритм сего чуда. Конкретнее. У меня есть n звуковых потоков, представленных массивом байт. Мне нужно написать функцию которая имплементирует алгоритм наложения этих потоков, и возвращает массив байт, сопсно с сложенными потоками. Ну пример.. Например как в скайпе говорят 3 человека одновременно а четвертый слышит их всех, и сильно матерится что не поймет их, и просит говорить по очереди.
Вот такой эффект нужен. Заранее огромное спасибо!!

21 Авг 2019 в 06:18
196 +1
0
Ответы
1

Для объединения нескольких звуковых потоков в один, вам нужно выполнить следующие шаги:

Создайте функцию, которая принимает массивы байт (звуковые потоки) в качестве аргументов.

Проверьте длину всех массивов и определите самый длинный массив (или выберите фиксированную длину для всех массивов).

Создайте новый массив байт такой же длины, что и самый длинный массив.

Проходите по каждому массиву байт и сложите значения байтов (при необходимости проведите масштабирование значений).

Запишите полученные значения в новый массив байт.

Верните новый массив байт, содержащий объединенные звуковые потоки.

Пример кода на Python:

def merge_sound_streams(*streams):
max_len = max([len(stream) for stream in streams])
result = [0] * max_len
for i in range(max_len):
value = sum([stream[i] if i < len(stream) else 0 for stream in streams])
result[i] = min(max(0, value), 255) # масштабирование значений от 0 до 255
return bytes(result)
# Пример использования
stream1 = b'\x10\x20\x30\x40'
stream2 = b'\x50\x60\x70\x80'
stream3 = b'\x90\xa0\xb0\xc0'
result_stream = merge_sound_streams(stream1, stream2, stream3)
print(result_stream)

Пожалуйста, протестируйте данный код на вашем датасете и внесите необходимые изменения, если это потребуется. Надеюсь, это поможет вам в решении проблемы объединения звуковых потоков.

20 Апр в 13:20
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 648 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир