Частота прямоугольной волны на входе remoteIO низкая

Я подаю на аудиоразъем прямоугольную волну частотой 2-3 кГц в течение примерно 5 секунд. прямоугольная волна равна 1 и 0 - отрицательных значений нет.

я получаю периодический сигнал от -32000 до 32000 (но мой сигнал положительный!?)

я проверил, сколько раз мои значения пересекают ноль - я получаю 500 за 5 секунд, что означает 100 в секунду.

что мне здесь не хватает? 3 кГц это 3000 в секунду.

мой код выборки находится в моем предыдущем сообщении: ошибка в коде аудиоустройства -remoteIO для айфона

любое объяснение в частотной области здесь? я пропустил образцы? как я могу улучшить его? я должен делать :

float bufferLength = 0.005;
     AudioSessionSetProperty(kAudioSessionProperty_PreferredHardwareIOBufferDuration, sizeof(bufferLength), &bufferLength);
    status = AudioOutputUnitStart(audioUnit);

большое спасибо!


person Curnelious    schedule 03.01.2012    source источник
comment
Вы говорите об аналоговом аудиовходе? Если это так, то, вероятно, имеется блокирующий конденсатор по постоянному току, что означает, что смещение постоянного тока во входном сигнале будет удалено, что даст вам диапазон сигнала, который довольно быстро устанавливается на +/-0,5.   -  person Paul R    schedule 03.01.2012
comment
Сколько образцов вы получаете за 5 секунд? Вы уверены, что не пропустили ни одного образца? Кроме того, вы, вероятно, слишком сильно перегружаете вход микрофона.   -  person hotpaw2    schedule 03.01.2012
comment
@paul - я говорю о прямоугольной волне, как я уже сказал. Вы можете назвать это аналоговым или цифровым. просто прямоугольная волна 3 кГц. и-hitpaw2 как я уже писал я получаю 500 за 5 секунд. если мне не хватает образца? это был мой вопрос!! вот почему я разместил свой код здесь, чтобы кто-то мог мне помочь.   -  person Curnelious    schedule 04.01.2012
comment
кто-нибудь еще может направить меня с этими образцами, которые мне не хватает в моем коде ???   -  person Curnelious    schedule 04.01.2012
comment
@Rant: попробуйте использовать сигнал без смещения постоянного тока, например. прямоугольная волна, которая варьируется от +1 до -1   -  person Paul R    schedule 04.01.2012
comment
@Paul, почему я должен это делать? Могу ли я ввести прямоугольную волну в любом случае? у него так много частот, которые, вероятно, заблокированы. что они используют, когда они делают модуляцию FSK? может быть, мне нужно ввести чистый синус? iPhone блокирует постоянный ток, поэтому он может видеть прямоугольные сигналы? они как постоянный ток, прежде чем они уйдут в ноль..   -  person Curnelious    schedule 04.01.2012
comment
@Rant: я уже объяснял в своих предыдущих комментариях - вам нужен входной сигнал без составляющей постоянного тока - не имеет значения, какая именно форма волны, но она должна быть симметричной относительно 0.   -  person Paul R    schedule 04.01.2012
comment
это неправильно. это математика. аудиовход НЕ всегда симметричен относительно 0 во многих его точках. а БПФ на любом положительном сигнале даст f, которую видит айфон. в качестве доказательства, не имеет значения, если я ничего не ввожу, только шум, и я получаю тот же результат, и опять же, не так много сэмплов, как мне нужно. Спасибо, в любом случае.   -  person Curnelious    schedule 04.01.2012
comment
@Rant: вы упускаете суть - поскольку вы говорите, что хотите подсчитывать пересечения нуля, вам нужно удалить любое смещение постоянного тока. Однако, глядя на ваш код в некоторых других ваших вопросах, кажется, что у вас гораздо более серьезные проблемы, чем эта, которую вам нужно исправить в первую очередь.   -  person Paul R    schedule 04.01.2012