| 32reg |  | 
| 
                Темы:
                
                    29
                
             
                Сообщения:
                
                    526
                
             
                Участник с: 17 мая 2011
             | Здравствуйте, всем. Писал уже про эту вебку и ее микрофон, и даже костыль был найден, но очень неудобный, да и срабатывал не всегда. Скайпом пользовался очень редко, поэтому забил на эту проблему. но сейчас снова нужен скайп, а микрофон так и не работает нормально. Проблема с микрофоном, походу, не только в скайпе, а в любом приложении, записывающем звук. Выяснил в /proc что микрофон в этой usb-камере поддерживает четыре частоты записи: 16000, 24000, 32000, и 48000Гц. Если записывать arececord'ом на частотах 16000 или 24000, то звук нормальный, если на частотах 32000 и 48000 - то ускоренный (бурундучий). Пробовал в /etc/pulse/daemon.conf менять дефолтную частоту и на 41400, и на 48000, и на 16000, и на 24000 - результат один: при первом аудиовызове в скайпе микрофон работает нормально, при последующих снова ускоренно (иногда вообще без звука и скайп выдает сообщение что микрофон не найден). Есть какой-нибудь способ указать скайпу принудительно использовать нужную частоту записи, 16000 или 24000? Еще пробовал патчить файл исходников ядра drivers/usb/core/quirks.c вот этим патчем и собирал ядро. Ядро собралось, система запустилась, но микрофон лучше не заработал. Кстати, в исходниках ядра (в файле который патчил) почему-то не было строк, которые добавляет этот патч, хотя в англ топике по ссылке выше написано что этот патч потом внесли в ядро. Выходит потом снова выкинули? Подскажите, кто знаком со сборкой ядра или модулей, как мне пересобирать отдельно модуль usbcore и подсовывать его ядру для проверки? Потому что каждый раз из-за этого модуля пересобирать все ядро - это слишком. На моем компьютере понадобилось около 2,5 часов при полной загрузке 4-х ядер. В том же топике, далее вроде бы есть инструкция по сборке одтельно модуля. Попробовал по ней, вроде бы собирается и "vermagic" пишет как в том примере. Но при сборке ram image с этим модулем mkinitcpio выдает ошибку: "error exec format" (точно не помню сейчас, но как-то так). Initramfs при этом собирается. Но после загрузки системы с этого образа не работают вообще все usb-устройства. Хочу еще разные варианты изменения того файла попробовать, если научусь правильно собирать этот модуль ядра отдельно. Заметил еще (не знаю после какого обновления, но раньше такого не было), что в /dev появляются теперь два видео устройства video1 и video2 (video0 занято тв-тюнером). В настройках скайпа, соответственно также видны две веб-камеры с одинаковыми vid и pid, но, при выборе одной из них ничего не работает, даже видео. При выборе другой видео есть, звук - ускоренный. Может быть в этом проблема? В udev rules у меня ничего затрагивающего видео устройства нет. Кстати, есть ли в правилах udev возможность удаления устройства из /dev директории? То есть можно ли с помощью правила удалить устройство /dev/video2. Может тв-тюнер попробовать вытащить? Вроде бы все описал. Если нужны какие-то логи, файлы, напишите, предоставлю. 
                        www.linux32.ru - новости и статьи о Linux
                     | 
| vs220 |  | 
| 
                Темы:
                
                    22
                
             
                Сообщения:
                
                    8070
                
             
                Участник с: 16 августа 2009
             | Имею такую же вебку со звуком никаких проблем нет, ядро и алса стандартные, пульсы нет скайп через apulse запускается | 
| 32reg |  | 
| 
                Темы:
                
                    29
                
             
                Сообщения:
                
                    526
                
             
                Участник с: 17 мая 2011
             | vs220, у вас одно видео устройство в /dev появляется или два? 
                        www.linux32.ru - новости и статьи о Linux
                     | 
| vs220 |  | 
| 
                Темы:
                
                    22
                
             
                Сообщения:
                
                    8070
                
             
                Участник с: 16 августа 2009
             | Два | 
| Aivar |  | 
| 
                Темы:
                
                    4
                
             
                Сообщения:
                
                    6897
                
             
                Участник с: 17 февраля 2011
             | vs220Дык, это же для skype-legacy надо было. skypeforlinux работает с альсой без этого. --- "Бурундучего" голоса не было, но при частоте дискретизации >22050 Гц было неприятное потрескивание. Прописал 22050 в конфиге альсы. Порядок. ЗЫ. Пульсы нет. ---  | 
| vasek |  | 
| 
                Темы:
                
                    48
                
             
                Сообщения:
                
                    11320
                
             
                Участник с: 17 февраля 2013
             | 32regПересобрать можно и отдельно только один модуль, вроде я как то уже тебе описывал это и вроде у тебя все получилось. Не знаю причем тут usbcore, но если причина действительно в нем и помогло внесение изменений в quirks.c, то я бы попробовал поиграться с параметрами модуля usbcore и в 1-ую очередь с параметром quirks=vendorID:productID:quirks Если получится, то это будет самый лучший вариант EDIT 1 - приведенный патч равносилен загрузке модуля usbcore с параметром quirks=vendorID:productID:b (например, quirks=0x1bcf:0x2805:b или quirks=1bcf:2805:b) где b = USB_QUIRK_RESET_RESUME и означает - device can't resume correctly so reset it instead - что и добавили в том патче Если не все будет OK, можно добавлять другие значения quirks 
                        Ошибки не исчезают с опытом - они просто умнеют
                     | 
| vasek |  | 
| 
                Темы:
                
                    48
                
             
                Сообщения:
                
                    11320
                
             
                Участник с: 17 февраля 2013
             | 32regДа, проверил, действительно устройства с VID=0x046d, PID=0x0825 в данном файле нет rg '0x046d, 0x0825' ~/linux-4.16.8/drivers/usb/core/quirks.c …. пусто …. Для проверки взял другое устройство rg '0x046d, 0xc05a' ~/TTT/linux-4.16.8/drivers/usb/core/quirks.c 284: { USB_DEVICE(0x046d, 0xc05a), .driver_info = USB_QUIRK_RESET_RESUME }, Значит параметр quirks=0x046d:0x0825:b или quirks=046d:0825:b должен сработать 
                        Ошибки не исчезают с опытом - они просто умнеют
                     | 
| 32reg |  | 
| 
                Темы:
                
                    29
                
             
                Сообщения:
                
                    526
                
             
                Участник с: 17 мая 2011
             | vasek, спасибо за развернутые ответы. Нет, не помогло внесение изменений в quirks.c Я не нашел пока вашего описания как собирать модуль, если не трудно дайте ссылку пожалуйста. Я заметил в этом файле отрывок, отвечающий за все веб-камеры от Logitech. Там что-то с общим VendorID связано было (046d значение). Хочу попробовать удалить общую часть про logitech и добавить патч именно для своей вебки. Может так что-то выйдет. Загружать usbcore с параметром quirks=046d:0825:USB_QUIRK_RESET_RESUME пробовал. Ничего не изменилось. Сейчас попробовал с параметром :b в конце строки вместо USB_QUIRK_RESET_RESUME - тоже ничего. Хотя должно было... Я пробовал параметры задавать через файл в /etc/modprobe.d, сейчас попробую через grub. Я про значение :b не знал. А где вы нашли информацию по возможным значениям параметра quirks? Какие еще значения могут быть? Aivar, у меня кеды и пульс идет как зависимость. Через -Rdd удалять его не очень хочется, боюсь что-нибудь другое отвалится. Пробовал поставить apulse без удаления pulseaudio - тоже не вышло. Можно ваш конфиг для alsa посмотреть? Особенно где вы выставляете макс частоту. Пульс вроде бы должен учитывать конфиги альсы в домашней директории, если они есть. Может с конфигом получиться... 
                        www.linux32.ru - новости и статьи о Linux
                     | 
| vs220 |  | 
| 
                Темы:
                
                    22
                
             
                Сообщения:
                
                    8070
                
             
                Участник с: 16 августа 2009
             | 32regприбейте временно или попробоватьлучше чем лезть в ядро, повторю у меня нормально работает на любой частоте. Сейчас  воткнул в другой комп с электронным скайпом(skypeforlinux-stable-bin-8.25.0.5-1) тестовый звонок тоже отличный звук с микрофонаКакой у вас ID устройства может под одним названиям разные выпускали у меня lsusb cat /proc/asound/card2/stream0 | 
| 32reg |  | 
| 
                Темы:
                
                    29
                
             
                Сообщения:
                
                    526
                
             
                Участник с: 17 мая 2011
             | systemctl –user stop pulseaudio.socketпробовал, не помогает. Вот еще на всякий случай моя звуковая:
                        www.linux32.ru - новости и статьи о Linux
                     |