Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
 
tip42
3 / 3 / 0
Регистрация: 02.03.2015
Сообщений: 18
#1

Генератор звукового сигнала - Программирование Android

11.08.2016, 12:38. Просмотров 2946. Ответов 73
Метки нет (Все метки)

Здравствуйте, кто может помочь написать простенький генератор сигнала, синус. Важна любая помощь. По интернетам смотрел информации мало. Если у кого-то есть желание, может в личку написать, может договоримся.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.08.2016, 12:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Генератор звукового сигнала (Программирование Android):

Передача звукового потока в микрофон - Программирование Android
Здравствуйте все форумчане! Хотел бы узнать в какую мне сторону двигаться. Задача такова: Есть сгенерированный звуковой поток. Необходимо...

Отображение содержимого звукового буфера в логах - Программирование Android
while(!stopped) { short buffer = buffers; //short buffer = new short; ...

Как заполнить заголовок звукового файла? - Программирование Android
public class AudioRecord { byte header = new byte; byte channels ; void run() { channels = 1;

Генератор String - Программирование Android
Добрый день, уважаемые форумчане. Уже который день пытаюсь решить маленькую проблему, но не получается. Возможно ли при помощи Random...

Генератор кубиков - Программирование Android
Всем привет) Помогите новичку... Познания нулевые и вот решил попробовать сделать что-то похожее на игральные кости (кубики). Кодить...

Сделать звуковой генератор - Программирование Android
Всем привет. Ребят, как выдать в наушник звук импульсами примерно прямоугольной формы? Нужно сделать звуковой генератор от ~10 до...

73
vxg
Модератор
3181 / 1984 / 226
Регистрация: 13.01.2012
Сообщений: 7,674
26.11.2016, 07:26 #46
КАВ, сложный звук это сумма нескольких волн. Разделять их на треки не нужно

Добавлено через 4 минуты
Что касается щелчков на высоких частотах - скажите значение частоты, проверим
1
КАВ
13 / 1 / 0
Регистрация: 16.04.2016
Сообщений: 48
26.11.2016, 13:47 #47
ели слышимые щелчки наблюдаются на частотах от 660 до примерно 700 гц. По поводу сложного звука,правильно ли я понял,что звук на нескольких частотах для конкретного бита будет рассчитываться как-то так: 32767*(Math.sin(2* Math.PI*(f1*dt*i+p1)+(Math.sin(2* Math.PI*(f2*dt*i+p2)+:+(Math.sin(2* Math.PI*(fn*dt*i+pn)),где f1,f2,fn частоты,а p1,p2,pn - их фазы,i - номер бита,а dt - период колебаний на частоте 48000 =1/48000/
0
vxg
Модератор
3181 / 1984 / 226
Регистрация: 13.01.2012
Сообщений: 7,674
26.11.2016, 14:06 #48
КАВ, да, только у каждого может быть своя амплитуда не обязательно единица и все это дело потом впихивается в 0x7FFF
1
КАВ
13 / 1 / 0
Регистрация: 16.04.2016
Сообщений: 48
26.11.2016, 14:52 #49
А я думал что 0x7fff это и есть амплитуда.
0
vxg
Модератор
3181 / 1984 / 226
Регистрация: 13.01.2012
Сообщений: 7,674
26.11.2016, 15:05 #50
КАВ, есть синусы. Каждый со своей амплитудой. Мы их сложили и у сложного сигнала тоже будет максимальное и минимальное значение. Мы хотим его нормализовать. Для этого сделаем так что бы максимум и минимум не выходили за диапазон +/-x7FFF. Это можно сделать смасштабировав сигнал
1
КАВ
13 / 1 / 0
Регистрация: 16.04.2016
Сообщений: 48
26.11.2016, 15:27 #51
Я Вас не совсем понял,как смаштабировать сигнал? Может быть Вы имейте ввиду,что нужно подобрать такие значения амплитуд для каждой частоты,чтобы в сумме они давали 32767?
0
vxg
Модератор
3181 / 1984 / 226
Регистрация: 13.01.2012
Сообщений: 7,674
26.11.2016, 15:40 #52
КАВ, грустно товарищи... как масштабировать? Умножить его на такое число и прибавить к произведению такое число чтобы значение сигнала всегда было в заданном интервале.
1
КАВ
13 / 1 / 0
Регистрация: 16.04.2016
Сообщений: 48
26.11.2016, 17:54 #53
Спасибо. Я почти всё понял,только что Вы имейте ввиду под интервалом: от 0 до 1,или от 0 до 32767? Ещё у меня есть вопрос,как регулировать баланс звука? Ведь в моём случае звук не обязательно должен быть посередине. Просто я это привёл как пример,чтобы было понятно,о чём я говорю. Сложность ещё в том,что с пятого андроида можно управлять только общей громкостью каналов в аудиотреке.
0
vxg
Модератор
3181 / 1984 / 226
Регистрация: 13.01.2012
Сообщений: 7,674
26.11.2016, 18:03 #54
КАВ, обычно диапазон 0x7FFF если это 16 бит, как менять мнимое положение источника звука я вам писал выше
1
КАВ
13 / 1 / 0
Регистрация: 16.04.2016
Сообщений: 48
27.11.2016, 23:17 #55
Хотелось бы ещё уточнить,Ваш генератор звука работает для любой продолжительности звука,или для продолжительности звука 200 мс? Просто при продолжительности звука 200 мс и даже 100 мс генератор работает практически нормально,а вот если я к примеру хочу задать функцию x*x к примеру от 0 до 100 с продолжительностью звука 5 мс,иногда можно услышать "солидные" щелчки. Конечно,пока что меня вполне устраивает звук с шагом 0.1,но не все функции нормально звучат на этом шаге,а на шаге 0.01 они звучат более плавно,но,как я уже писал ранее,иногда возникают щелчки.
0
vxg
Модератор
3181 / 1984 / 226
Регистрация: 13.01.2012
Сообщений: 7,674
28.11.2016, 11:53 #56
КАВ, звук продолжительностью 5 мс? На таком интервале поместится 1 период для 250 Гц например - на кой вам такой "звук"? 201 мс - это размер порции данных которые будет воспроизводить устройство. К звуку это число не имеет никакого отношения и может влиять на него чисто технически если вы будете задавать полоумно малые значения.

Добавлено через 5 часов 30 минут
Цитата Сообщение от КАВ Посмотреть сообщение
ели слышимые щелчки наблюдаются на частотах от 660 до примерно 700 гц
не услышал

Добавлено через 1 минуту
Цитата Сообщение от КАВ Посмотреть сообщение
с продолжительностью звука 5 мс,иногда можно услышать "солидные" щелчки
на частоте 660 Гц не услышал
1
КАВ
13 / 1 / 0
Регистрация: 16.04.2016
Сообщений: 48
01.12.2016, 22:11 #57
По поводу положения звука,Вы писали только,как сделать,чтобы он был посередине. А вот как сделать,чтобы он был ближе к правому каналу,или ближе к левому,но не прямо в левом или правом канале,я такого у Вас не нашёл.
0
vxg
Модератор
3181 / 1984 / 226
Регистрация: 13.01.2012
Сообщений: 7,674
02.12.2016, 08:18 #58
КАВ, если задано 1:1 это центр, если 1:0 это лево, а если 1:0.56 к примеру это где-то между центром и лево
1
КАВ
13 / 1 / 0
Регистрация: 16.04.2016
Сообщений: 48
02.12.2016, 19:18 #59
Но начиная с пятого андроида этот метод класса audiotrack устарел и теперь можно ставить громкость только для 2-х каналов одновременно.
0
vxg
Модератор
3181 / 1984 / 226
Регистрация: 13.01.2012
Сообщений: 7,674
02.12.2016, 19:57 #60
КАВ, выход только один - прыгнуть в окно
1
02.12.2016, 19:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.12.2016, 19:57
Привет! Вот еще темы с ответами:

Генератор / сборник иконок - Программирование Android
Может кто знает что то типа https://design.google.com/icons/? - но чтобы в разные цвета можно было генерировать - Что там не так? - То...

Непрерывная генерация сигнала - Программирование Android
Нужно сделать генератор сигналов, нашел код рабочий: // originally from...

Распознавание звукового сигнала - Искусственный интеллект
Здравствуйте, прошу прощения если немного не в тот раздел. Изучаю Data Science, заинтересовался такой вещью - как, имея записанный звуковой...

ВЧ фильтрация звукового сигнала - Цифровая обработка сигналов
Добрый день! Подскажите, пожалуйста, какой фильтр лучше использовать для ВЧ фильтрации звукового сигнала. FFT, IIR, FIR ? ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru