LINUX.ORG.RU

История изменений

Исправление kuzulis, (текущая версия) :

Насколько я понял, при отправке надо читать DTOG_TX и если оно равно 1, то писать в 0-й банк, а если 0, то в 1-й.

Да, именно так. Я пробовал уже все комбинации (менять очередность буферов, менять очередность инициализации), но результат один - при буфере 128 байт (это 2 канала х 2 байта каждый на 32 kHz) получаю какое-то говно.

Вроде бы оно так даже работает, синусоиду 1 кГц при 16000

Дада, именно так, такая же дичь!

У меня тоже два канала (L/R) с частотой семплирования 16 kHz, где каждый семпл есть Обычный PCM размером 2 байта.

На 16-ти килогерцах - фейковая синусойда отличная.. Но как только увеличиваю частоту семплирования до 32 kHz - то всЁ, ппц. приплыли.

Вот тут хреновая картинка для 32 kHz : https://paste.pics/aecfdde611b14c32a6ac1c94c0e9bc27

Вот тут нормальная для 16 kHz: https://paste.pics/8f8af7d9d98378a2803ec53f6e98c738

PS: Я уже и ХАЛ проштудировал, и кучу других либ в инете - пофиг всё (делал по аналогии). ппц какой-то.

Исправление kuzulis, :

Насколько я понял, при отправке надо читать DTOG_TX и если оно равно 1, то писать в 0-й банк, а если 0, то в 1-й.

Да, именно так. Я пробовал уже все комбинации (менять очередность буферов, менять очередность инициализации), но результат один - при буфере 128 байт (это 2 канала х 2 байта каждый на 32 kHz) получаю какое-то говно.

Вроде бы оно так даже работает, синусоиду 1 кГц при 16000

Дада, именно так, такая же дичь!

У меня тоже два канала (L/R) с частотой семплирования 16 kHz, где каждый семпл есть Обычный PCM размером 2 байта.

На 16-ти килогерцах - фейковая синусойда отличная.. Но как только увеличиваю частоту семплирования до 32 kHz - то всЁ, ппц. приплыли.

Вот тут картинка: https://paste.pics/aecfdde611b14c32a6ac1c94c0e9bc27

PS: Я уже и ХАЛ проштудировал, и кучу других либ в инете - пофиг всё (делал по аналогии). ппц какой-то.

Исправление kuzulis, :

Насколько я понял, при отправке надо читать DTOG_TX и если оно равно 1, то писать в 0-й банк, а если 0, то в 1-й.

Да, именно так. Я пробовал уже все комбинации (менять очередность буферов, менять очередность инициализации), но результат один - при буфере 128 байт (это 2 канала х 2 байта каждый на 32 kHz) получаю какое-то говно.

Вроде бы оно так даже работает, синусоиду 1 кГц при 16000

Дада, именно так, такая же дичь!

У меня тоже два канала (L/R) с частотой семплирования 16 kHz, где каждый семпл есть Обычный PCM размером 2 байта.

На 16-ти килогерцах - фейковая синусойда отличная.. Но как только увеличиваю частоту семплирования до 32 kHz - то всЁ, ппц. приплыли.

PS: Я уже и ХАЛ проштудировал, и кучу других либ в инете - пофиг всё (делал по аналогии). ппц какой-то.

Исходная версия kuzulis, :

Насколько я понял, при отправке надо читать DTOG_TX и если оно равно 1, то писать в 0-й банк, а если 0, то в 1-й.

Да, именно так. Я пробовал уже все комбинации (менять очередность буферов, менять очередность инициализации), но результат один - при буфере 128 байт (это 2 канала х 2 байта каждый на 32 kHz) получаю какое-то говно.

Вроде бы оно так даже работает, синусоиду 1 кГц при 16000

Дада, именно так, такая же дичь!

У меня тоже два канала (L/R) с частотой семплирования 16 kHz, где каждый семпл есть Обычный PCM размером 2 байта.

На 16-ти килогерцах - фейковая синусойда отличная.. Но как только увеличиваю частоту семплирования до 32 kHz - то всЁ, ппц. приплыли.

PS: Я уже и ХАЛ проштудировал, и кучу других либ в инете - пофиг всё. ппц какой-то.