LINUX.ORG.RU

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

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

Хаха, я все-таки добился косяков даже с твоим кодом на регистрах. :)

Я чуть подправил дескриптор, теперь там двух-канальный микрофон. Макс. размер эндпойнта увеличен то 256 байт, как в дескрипторе, так и при настройке эндпойнта.

При установке частоты дискретизации 48000 Гц - начинаются косяки (мы передаем в эндпойнт буфер размером 192 байта), но при 32 кГц - все ровно..

т.е. твоя реализация переигрывает opencm3 только на одну градацию. ))

Вот картинка: https://paste.pics/3bafdb347aa0a06daad2c44c1b6c6c56

Вот мой форк: https://github.com/denis-shienkov/usb/tree/main/5.Audio_F1

Я там добавил новую папочку: 5.Audio_F1. Менять частоту дискретизации просто в константе USB_MIC_SAMPLE_RATE (сейчас там 48000 стоит).

Если поставить 32000 - то будет все норм.

PS: Я там чуток изменил еще генерацию синуса, я юзаю ф-ю из match, так что тебе надо будет подрубить либу -lm, если будешь пробовать.. т.к. я юзаю Qbs для сборки, а не make.

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

Хаха, я все-таки добился косяков даже с твоим кодом на регистрах. :)

Я чуть подправил дескриптор, теперь там двух-канальный микрофон. Макс. размер эндпойнта увеличен то 256 байт, как в дескрипторе, так и при настройке эндпойнта.

При установке частоты дискретизации 48000 Гц - начинаются косяки (мы передаем в эндпойнт буфер размером 192 байта), но при 32 кГц - все ровно..

т.е. твоя реализация переигрывает opencm3 только на одну градацию. ))

Вот картинка: https://paste.pics/3bafdb347aa0a06daad2c44c1b6c6c56

Вот мой форк: https://github.com/denis-shienkov/usb/tree/main/5.Audio_F1

Я там добавил новую папочку: 5.Audio_F1. Менять частоту дискретизации просто в константе USB_MIC_SAMPLE_RATE (сейчас там 48000 стоит).

Если поставить 32000 - то будет все норм.

PS: Я там чуток изменил еще генерацию синуса, я юзаю ф-ю из match, так что тебе надо будет подрубить либу -lm, если будешь пробовать.. т.к. я юзаю Qbs для сборки.

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

Хаха, я все-таки добился косяков даже с твоим кодом на регистрах. :)

Я чуть подправил дескриптор, теперь там двух-канальный микрофон. Макс. размер эндпойнта увеличен то 256 байт, как в дескрипторе, так и при настройке эндпойнта.

При установке частоты дискретизации 48000 Гц - начинаются косяки (мы передаем в эндпойнт буфер размером 192 байта), но при 32 кГц - все ровно..

т.е. твоя реализация переигрывает opencm3 только на одну градацию. ))

Вот картинка: https://paste.pics/3bafdb347aa0a06daad2c44c1b6c6c56

Вот мой форк: https://github.com/denis-shienkov/usb/tree/main/5.Audio_F1

Я там добавил новую папочку: 5.Audio_F1. Менять частоту дискретизации просто в константе USB_MIC_SAMPLE_RATE (сейчас там 48000 стоит).

Если поставить 32000 - то будет все норм.

PS: Я там чуток изменил еще генерацию синуса, я юзаю ф-ю из , так что тебе надо будет подрубить либу -lm, если будешь пробовать.. т.к. я юзаю Qbs для сборки.

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

Хаха, я все-таки добился косяков даже с твоим кодом на регистрах. :)

Я чуть подправил дескриптор, теперь там двух-канальный микрофон. Макс. размер эндпойнта увеличен то 256 байт, как в дескрипторе, так и при настройке эндпойнта.

При установке частоты дискретизации 48000 Гц - начинаются косяки (мы передаем в эндпойнт буфер размером 192 байта), но при 32 кГц - все ровно..

т.е. твоя реализация переигрывает opencm3 только на одну градацию. ))

Вот картинка: https://paste.pics/3bafdb347aa0a06daad2c44c1b6c6c56

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

Хаха, я все-таки добился косяков даже с твоим кодом на регистрах. :)

Я чуть подправил дескриптор, теперь там двух-канальный микрофон. Макс. размер эндпойнта увеличен то 256 байт, как в дескрипторе, так и при настройке эндпойнта.

При установке частоты дискретизации 48000 Гц - начинаются косяки (мы передаем в эндпойнт буфер размером 192 байта), но при 32 кГц - все ровно..

т.е. твоя реализация переигрывает opencm3 только на одну градацию. ))

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

Хаха, я все-таки добился косяков даже с твоим кодом на регистрах.

Я чуть подправил дескриптор, теперь там двух-канальный микрофон. Макс. размер эндпойнта увеличен то 256 байт, как в дескрипторе, так и при настройке эндпойнта.

При установке частоты дискретизации 48000 Гц - начинаются косяки (мы передаем в эндпойнт буфер размером 192 байта), но при 32 кГц - все ровно..

т.е. твоя реализация переигрывает opencm3 только на одну градацию. ))