Я имею дело со звуковыми данными в виде поплавков.
Я хотел бы знать, есть ли способ заглушить канал (левый или правый) с помощью простой команды, например, просто установить каждую секунду с плавающей точкой на 0 или около того. 🙂
Спасибо.
Это будет зависеть (полностью) от формы, в которой закодированы ваши данные.
Если (и в значительной степени, только если) он закодирован как необработанные сэмплы, чередующиеся по каналам, тогда да, вы, вероятно, можете отключить канал, заменив его сэмплы нулями.
Однако существует множество альтернатив этому формату. Только для одного примера вы можете отправить L + R как один набор сэмплов, а L-R как другой набор сэмплов. В таком случае вам нужно будет декодировать каналы из данных (L + R + LR => L, L + R — L — R => R), обнулить выборки для одного канала, а затем объединить результат вернуться в тот же формат.
Конечно, многие форматы значительно сложнее. Сжатие, такое как MP3, значительно сложнее в отношении кодирования одного канала. а также позволяет кодировать каналы отдельно или как что-то вроде суммы и разности (что обычно экономит место).