что делать если dualshock 4 подключается как аудиоустройство
Что делать если dualshock 4 подключается как аудиоустройство
Rocket League
If it is detected as micophone, try using voice commands. «Accelerate, jump, frontflip».
Ok, sorry for the lame joke.
What OS are you using? Is the DS4 connected via USB or bluetooth?
Did you try resetting the controller (pressing the small button on the backside) and reconnecting it?
If it is detected as micophone, try using voice commands. «Accelerate, jump, frontflip».
Ok, sorry for the lame joke.
What OS are you using? Is the DS4 connected via USB or bluetooth?
Did you try resetting the controller (pressing the small button on the backside) and reconnecting it?
jup habe ich auch schon probiert,hatte mir auch diesen Input Mapper for Windows runtergeladen selbst das programm erkennt den controller nicht. habe den controller über usb angesteckt..
Решил подключить Dualshock 4 к ПК, а он его распознает как звуковое устройство. Есть ли решение этой проблемы?
Конкретного решения нет, проблема не распространенная, но есть несколько вариантов которые обычно помогают исправить любые ошибки подключения геймпада, попробуйте начать с них:
Обновление ПО
Попробуйте воспользоваться программой DS4windows. Скачайте самую последнюю версию DS4windows и установите.
Вроде как это должно исправить данную ошибку.
Но на деле не всё так просто. Сами разработчики улиты рекомендуют следующее:
Также некоторые советуют скачать отдельное приложение, которое чинит похожие баги. Называется улита PC Repair. Я лично не могу гарантировать качество, но можете попробовать.
Диспетчер устройств
Если предыдущее решение не помогло, то попробуйте решить проблему через диспетчер задач.
Перезапуск Dualshock
Если диспетчер задач тоже не помог, то попробуйте следующее:
После этой процедуры компьютер стоит перезагрузить, предварительно вытащив геймпад и закрыв приложение DS4windows.
Проделав все эти манипуляции, снова подключите контроллер, запустите улиту. Он должен отобразиться в программе.
Техподдержка
Если ничего из вышеперечисленного не помогло, то попробуйте написать в техподдержку компаний. Напишите сразу в две техподдержки — Windows и Sony. Детально опишите проблему. Какое устройство, где и как не отображается. Может быть там смогут как то решить ваш вопрос или хотя бы дадут больше информации в каком направлении стоит копать.
Как подключить Dualshock 4 к ПК. Лучшие и простые способы
Сегодня геймпадами активно пользуются не только обладатели консолей, но и те, кто играет исключительно на ПК. И если подключить контроллер от Xbox крайне легко, то в случае с Dualshock 4 всё не так просто.
Dualshock 4 от Sony так же, как и продукт от Microsoft, является крайне качественной вещью. К сожалению, у очень большого количества людей возникают проблемы с подключением Dualshock 4, из-за чего некоторые думают, что его попросту невозможно использовать с ПК, но это в корне не верное утверждение. Конечно, у вас могут возникнуть сложности при его подключении, но факт остаётся фактом – Dualshock 4 прекрасно работает в играх на ПК. Но как же его подключить? Сейчас разберёмся.
Какой геймпад выбрать до 2 500 рублей
1. Самый простой способ на Windows 10
Windows 10 является крайне функциональной и дружелюбной операционной системой. И если у вас установлена именно она, то подключение Dualshock 4 к ПК может пройти невероятно гладко и просто. Для этого вам нужно иметь лишь сам геймпад и кабель для подключения к компьютеру.
Базовая инструкция
Сразу после подключения появится уведомление о том, что новое устройство было распознано. И в том случае, если драйвера для Dualshock 4 до этого не были установлены, то Windows 10 автоматически их скачает, что займёт немного времени. По окончании установки появится соответствующее уведомление, после чего обязательно следует перезагрузить компьютер и подключить геймпад снова.
И тем не менее существует большая вероятность и того, что даже после всех этих манипуляций ваш Dualshock 4 не заработает. Что же в таком случае делать?
Проверяем работоспособность
Если будет показано, что Windows распознаёт каждое нажатие, то всё хорошо – просто переподключите устройство. Но если кнопки не действуют, или же если геймпад и вовсе не отобразился в «Устройства и принтеры», в таком случае придётся проделать несколько дополнительных манипуляций.
Если что-то пошло не так
И в любом случае перед тем как запускать какую-либо игру из Steam, вам нужно будет «подружить» контроллер с данным магазином.
Настраиваем поддержку Dualshock 4 в Steam
После этого ваш Dualshock 4 будет отображаться внизу в разделе «Обнаруженные контроллеры». И да, этот пункт необходим для выполнения в случае и со всеми перечисленными дальше способами. Но, как бы то ни было, данный способ подключения можно назвать хорошим с большой натяжкой, ведь даже если вы всё выполните правильно, существует большой шанс того, что ничего работать не будет. Но не отчаивайтесь. Решения есть, и узнать о них вы сможете дальше.
Nucleus COOP | Как играть в режиме split screen, даже если игра его не поддерживает
2. Простой способ с использованием сторонних программ
Конечно, вам справедливо может не понравиться изложенный выше способ подключения. Это очень долго и довольно-таки трудно. Прекрасно вас понимаем. Именно поэтому советуем вам второй, ощутимо более комфортный способ подключения Dualshock 4. Начнём.
Их можно совершенно бесплатно скачать. И нет, не стоит переживать насчёт того, что данные программы могут содержать какие-то вирусы. Это не так. Они полностью «чисты» и неоднократно проверены на наличие встроенного вредоносного ПО.
Использование программ для подключения DS4
Огромным преимуществом данных программ является не только простота в использовании и экономия вашего времени, но и возможность создания различных пресетов управления. То есть, например, если играя в Ведьмак 3 вы хотите играть со стандартной раскладкой, но в Dishonored 2 желаете поменять назначение кнопок «L1» и «X» местами, то вам не придётся каждый раз по новой их переназначать. Вместо этого, DS4windows или InputMapper предоставляют возможность создания большого количества пресетов. Так что если вы внезапно захотите поиграть в игру, где вам удобнее играть с изменённым назначением кнопок, вы сможете просто-напросто выбрать нужный, заранее созданный пресет.
Как бы то ни было, данный способ, к сожалению, не лишён и своих минусов. Дело в том, что у вас могут возникнуть серьёзные проблемы при подключении геймпада – приложения могут их увидеть далеко не сразу. И если подобное происходит, то вам следует переподключить геймпад и перезапустить приложение. И да, при каждом таком подключении вам нужно будет одновременно зажимать кнопки «PS» и «Share», но в зависимости от системы это может не понадобиться.
Иногда приложения не смогут увидеть геймпад, пока вы не зажмёте эти кнопки, а иногда этого требоваться не будет. Ну а второй проблемой, которая может вас настигнуть, является внезапное отключение геймпада после нескольких часов игры. Приложение просто-напросто может потерять ваш контроллер. Однако не стоит сильно переживать, ведь зачастую это связано с не очень качественными USB-портами вашего ПК. Так что если с ними у вас всё в порядке, то данная проблема вас коснётся с куда меньшим шансом.
Как играть на Android с помощью геймпада, клавиатуры или мышки. Настройка Panda Pro
3. Самый лучший, но дорогой способ
Особенностью описанных выше методов является то, что в их основе лежит проводное подключение. Однако если у вас есть какой-либо Bluetooth адаптер, то вы сможете подключить свой Dualshock 4 к ПК беспроводным способом. Но в любом случае это не отменяет того факта, что подключение контроллера может вызвать у вас трудности и занять драгоценное время. Да и к тому же предыдущий метод отчасти является «нелегальным».
Что же делать тем людям, которые хотят играть на ПК с Dualshock 4, при этом подключая его максимально быстро, без каких-либо проблем, без внезапных отключений, без провода и с возможностью переназначения кнопок?
Ответ на данный вопрос дала сама Sony, выпустив свой официальный адаптер – Беспроводной USB-адаптер Dualshock 4.
Сразу же стоит упомянуть минус данного аксессуара – за него придётся заплатить. Да, все перечисленные выше методы были полностью бесплатными, но в то же время крайне спорными в плане удобства подключения и использования. Тем временем Dualshock 4 USB Wireless Adaptor является ультимативным решением в том случае, если вы хотите получить от использования своего геймпада от Sony с ПК исключительно лишь положительные эмоции, избежав различных проблем.
Как подключать DS4 через беспроводной USB-адаптер
В таком случае вам останется лишь зайти в Steam, где нужно будет, опять же, подружить контроллер с магазином и его играми. После этого вы можете навсегда забыть о каком-либо дискомфорте при подключении или возможных вылетах.
Чтобы в следующие разы подключать геймпад к ПК, вам нужно будет просто вставить адаптер и нажать на кнопку PS. И да, в таком случае не забывайте следить за уровнем заряда вашего Dualshock 4, так как он может разрядиться в самый неудачный момент.
Так что если вы не хотите буквально мучиться при подключении геймпада от Sony, лучше купите этот беспроводной USB-адаптер – вы не пожалеете. Конечно, его цена колеблется в пределах от 1400 до 2000 рублей, но по удобству эксплуатации и сэкономленному на подключении времени он окупается крайне быстро.
И кстати, в данном случае нет ничего зазорного в том, чтобы сэкономить и купить данный адаптер Б/У. Вероятность того, что вам продадут сломанный, крайне мала. Перед приобретением просто протестируйте его. Если геймпад подключается – берите. На вторичном рынке можно найти такой адаптер за 700-800 рублей, что очень дёшево.
Решение проблем с беспроводным контроллером DUALSHOCK®4
Узнайте, как зарегистрировать беспроводной контроллер DUALSHOCK 4 на консоли PlayStation®4, как его зарядить и как изменить настройки контроллера.
PS4: регистрация беспроводного контроллера DUALSHOCK 4
Включите PS4, подключите контроллер с помощью кабеля micro USB и нажмите кнопку PS на контроллере.
Когда включится подсветка контроллера, можно отключить кабель и использовать контроллер в беспроводном режиме.
Одновременно можно использовать до 4 контроллеров. Когда вы нажимаете кнопку PS, пользователю контроллера назначается цвет подсветки.
Компьютер и мобильный телефон: регистрация беспроводного контроллера DUALSHOCK 4
Беспроводной контроллер DUALSHOCK 4 можно использовать не только с PS4. Узнать больше о совместимых устройствах, приложениях и поддерживаемых функциях:
Перезагрузка беспроводного контроллера DUALSHOCK 4
Выключите PS4 и отключите кабель питания.
Найдите маленькую кнопку перезагрузки на задней панели контроллера рядом с боковой кнопкой L2.
Используйте какой-нибудь тонкий предмет, чтобы нажать кнопку внутри маленького отверстия на контроллере. Удерживайте кнопку примерно 3-5 секунд.
Подключите контроллер к PS4 с помощью кабеля USB и нажмите кнопку PS.
Если световая панель загорелась синим, значит, контроллер зарегистрирован на консоли.
Если контроллер не реагирует на ваши действия, но при этом исправно работает при подключении к другому разъему USB или другой консоли, перейдите в раздел «Ремонт или замена», чтобы проверить, доступен ли гарантийный ремонт вашего оборудования.
Проигрываем звук на DualShock4 с компьютера
Выбирая геймпад для своего компьютера, я остановился на DualShock4, так как мне понравилась идея, что можно будет слушать аудио через подключаемые к нему наушники. Но после покупки я узнал, что, оказывается, никто не знает, как передать звук на геймпад через Bluetooth. Поэтому я решил разобраться с данным вопросом. Если вам интересно узнать, как DualShock4 общается с игровой консолью, жду под катом.
К сожалению, у меня нет PlayStation 4, поэтому пришлось довольствоваться только выложенными в Интернете дампами, а также уже известными фрагментами обмена.
В процессе изучения темы мне очень помогла вот эта страница. В ней описаны основные моменты передачи данных между консолью и геймпадом, а также выложен дамп этих данных. Нас интересует файл дампа с именем ds4_uart_hci_cap_playroom_needs_sorting.pcap.gz. Открываем его в Wireshark и начинаем изучать. Отсортируем пакеты по времени, так как, видимо, дамп записывался отдельно на приём и передачу. Дамп снимался напрямую с UART геймпада, после чего был сконвертирован в pcap.
В начале идёт настройка самого модуля Bluetooth. Далее, с №49-го по №163-й пакет, идёт установка соединения и настройка канала передачи. Очень хорошо этот процесс описан в статье Беспроводной звук. Часть 1. Препарируем Bluetooth.
Но для нашей задачи это неособо важно.
После всех «подготовительных работ» геймпад начинает отправлять HID Report. Формат сообщения описан на вики странице. Первый пакет с данными от консоли — это пакет №70181. Давайте разберём его, пользуясь данными с вики страницы.
Нас интересуют только данные, которые передаются через HID Profile.
Вот его содержание.
Номер байта | bit 7 | bit 6 | bit 5 | bit 4 | bit 3 | bit 2 | bit 1 | bit 0 |
---|---|---|---|---|---|---|---|---|
[0] | 0x0a – Тип Data | 0x00 — Зарезервировано | 0x02 — Направление передачи | |||||
[1] | 0x11 – Код операции | |||||||
[2 — 3] | Неизвестно | |||||||
[4] | 0xf0 Запрещает изменение данных у геймпада, 0xf3 Разрешает изменение | |||||||
[5 — 6] | Неизвестно | |||||||
[7] | Rumble (right / weak) | |||||||
[8] | Rumble (left / strong) | |||||||
[9] | RGB color (Red) | |||||||
[10] | RGB color (Green) | |||||||
[11] | RGB color (Blue) | |||||||
16 | Неизвестно | |||||||
[25] | Громкость звучания в % | |||||||
[26 — 74] | Неизвестно | |||||||
[75 — 78] | CRC-32 от предыдущих данных |
Хотя 26 байт помечен на упомянутой выше странице как неизвестный, во время моих экспериментов удалось выяснить, что он отвечает за громкость звучания и выставляется в процентах. Также хотя поле crc присутствует, но геймпад его не проверяет и можно просто отправлять нулевое значение.
Так как нам интересно, какие данные передаёт консоль, давайте отфильтруем их по 0-му байту HID Profile, который поможет нам определить направление пакета. Данные от гемпада имеют значение 0xa1, от консоли 0xa2. Фильтр для Wireshark получится таким: bthid[0] == 0xa2.
Если прокрутить пакеты, то, начиная с пакета №98516, сильно увеличился размер данных. Если судить по данным с вики страницы, то начало у пакетов с кодом операции 0x15 и 0x19 такое же, как и у 0x11, только без CRC, которая находится в конце.
Всё есть HID
Вот мы и подошли к самому интересному — как передать звук на геймпад. Вот как выглядит пакет с аудиоданными.
Если внимательно посмотреть на пакеты с кодами операции 0x14, 0x15, 0x17, 0x19, то заметно некое постоянство, а именно идущие подряд байты 0x9c, 0x75, 0x19. Это очень похоже на Bluetooth SBC header ( SBC — это один из стандартных кодеков для передачи аудио по Bluetooth). И хотя для передачи SBC по Bluetooth есть стандарт A2DP, создатели PS4 решили пойти по своему пути и передавать звук прямо в HID сообщениях. Также если посмотреть пакеты дальше то видно, что также меняются два байта перед Bluetooth SBC header, это счётчик фреймов. Давайте проверим наше предположение, что это стандартный SBC кодек. Для этого воспользуемся следующим скриптом на Python.
Скрипт работает следующим образом: открываем дамп, кладем все пакеты в список, после чего сортируем по времени. Затем проходим по порядку все пакеты, доставая аудиоданные из сообщений с кодом операции 0x19,0x17,0x15 и 0x14 и записывая их в файл.
Теперь попробуем воспроизвести получившийся файл, для чего воспользуемся gstreamer’ом:
Теперь интересно попробовать самим сгенерировать данные для воспроизведения на геймпаде.
Воспользуемся для этого всё теми же инструментами. Gstreamer будет кодировать, а Python будет будет передавать данные на DualShock4.
В Linux можно очень просто работать с геймпадом благодаря тому, что в нём всё (включая устройства) является файлами.
Узнать, какой файл соответствует геймпаду, можно после сопряжения DualShock4 с компьютером. В результате удачного сопряжения в выводе dmesg появится строка
sony 0005:054C:05C4.0007: input,hidraw5: BLUETOOTH HID v1.00 Gamepad [Wireless Controller]
Значит, наш контроллер присутствует в системе в виде файла с именем /dev/hidraw5, и мы можем передавать данные на геймпад, просто записывая необходимые данные в этот файл.
Вот скрипт, с помощью которого это можно делать:
Скрипт читает из стандартного потока закодированные в SBC аудиоданные и формирует два типа пакетов 0x14 и 0x15 (также комментированием/раскомментированием строк можно включить формирование увеличенного в два раза пакета с опкодом 0x17) и отправляет их на геймпад путем записи в hidraw девайс.
Попробуем использовать этот скрипт, чтобы проиграть тестовый звуковой сигнал.
Данный сигнал будет генерироваться при помощи gstreamer и отправляться на стандартный поток вывода, откуда его будет забирать скрипт.
Заключение
Хотелось бы выразить благодарность таким проектам, как DS4Windows и ds4drv.
Данные проекты позволяют использовать геймпад на компьютере. Надеюсь, эта статья поможет добавить также и поддержку передачи звука в эти проекты.
Спасибо за внимание.
UPD:
Небольшие дополнение.
Если добавить is-live=true к audiotestsrc то звук идет почти без заиканий.
Вот полезный pipeline для gstreamer который позволяет захватывать все, что идет на аудио выход и отправлять на DualShock4.