Chuyển đổi thiết bị âm thanh mặc định bằng một tệp bó


22

Tôi đang cố gắng viết một tệp bó trên Windows 10 cho phép tôi chuyển đổi giữa tai nghe và loa của mình dưới dạng thiết bị âm thanh mặc định khi tôi chạy nó. Tôi không muốn sử dụng bất kỳ phần mềm của bên thứ ba nào.

Tôi đã thử tìm kiếm xung quanh nhưng tôi chỉ tìm thấy các tập lệnh cũ dường như không hoạt động và cũng đề cập đến một HKCU:\Software\Microsoft\Windows\CurrentVersion\Applets\Volume Control\con đường dường như không còn tồn tại nữa. Tôi không thể tìm thấy bất kỳ thông tin nào về đăng ký Windows 10 về điều này, tôi cũng không thoải mái với việc thay đổi quá nhiều với đăng ký nếu tôi không chắc chắn về những gì tôi đang làm.


1
Nếu bạn từ bỏ việc không muốn sử dụng bên thứ 3, tôi đã sử dụng audioswit.ch/er [vâng đó là URL thực sự] trong khoảng 5 năm. Phím nóng có thể chuyển đổi quá. [không liên kết.]
Tetsujin

Câu trả lời:


33

Tôi đánh giá cao bạn không muốn sử dụng bất kỳ phần mềm của bên thứ ba nào, nhưng như một tùy chọn cho nếu bạn không phiền khi sử dụng exe ~ 100kb, bạn có thể sử dụng Nircmd với các lệnh:

nircmd setdefaultsounddevice "Speakers" 1

hoặc là

nircmd setdefaultsounddevice "Headphones" 1

Bạn cần đảm bảo rằng bạn sử dụng tên chính xác của thiết bị âm thanh của mình như được liệt kê bên dưới Playback Devices(nhấp chuột phải vào điều khiển âm thanh trong khay hệ thống). Có thể dễ dàng hơn để đổi tên chúng theo Propertiestên đơn giản hơn, đặc biệt là nếu tên đó xung đột theo bất kỳ cách nào.

Phần 1cuối của lệnh biểu thị "Thiết bị mặc định". Sử dụng 2nghĩa là "Thiết bị liên lạc mặc định".


Nếu bạn thực sự không muốn sử dụng công cụ của bên thứ ba, thì đây là một khóa đăng ký dường như thay đổi khi tôi thay đổi thiết bị âm thanh mặc định của mình, nó có thể giúp ích cho bạn, nhưng tôi không biết chính xác điều gì nó đang làm Nó không đơn giản như 1 hoặc 0 để chỉ ra nếu nó là mặc định, nó dường như.

nhập mô tả hình ảnh ở đây


+1 từ tôi. Đây là cách tốt nhất để đi. Nếu bạn thực sự không muốn đặt nircmd ở đâu đó trên ổ cứng của mình (tin tôi đi, bạn thật tuyệt), thì phương án thay thế sẽ là chuyển đổi hai lần và thực hiện xuất khẩu khóa được đề cập ở đây và thực thi quyền .reg tập tin. Không chắc chắn nếu điều này sẽ làm việc mặc dù, nhưng đó sẽ là cách tiếp cận thay thế của tôi.
LPChip

Cảm ơn câu trả lời, tôi thực sự vấp phải nircmd, nhưng thực sự tò mò khi tìm cách làm điều đó mà không cần bất kỳ phần mềm bên thứ ba nào. Nếu không có phương pháp nào khác xuất hiện, tôi sẽ xem xét sử dụng nó.
zerothehero 18/03/2016

+1. Đã thử cách tiếp cận đăng ký, nhưng nó không dễ như đề xuất (ít nhất là với W10). Sử dụng NirCmd ngay bây giờ :)
MBaas

6

Vì cấu hình âm thanh của PC 8 (hoặc có thể sớm hơn?) Được lưu trữ trong HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\MMDevices\Audio\Render. Bên dưới Rendercó các khóa có tên GUID, mỗi khóa chứa DeviceStategiá trị từ khóa ở gốc. Nhưng nó được mã hóa như thế nào?

Xem các hằng số DEVICE_STATE_XXX tại MSDN :

  • 1 hoạt động
  • 2 người khuyết tật
  • 4 Không có mặt
  • 8 Rút phích cắm

Vì vậy, tập lệnh powershell / bat để chuyển đổi giữa 1 và 2 nên thực hiện thủ thuật.

EDIT: Để có được tên thiết bị có thể đọc được của con người, hãy đọc {b3f8fa53-0004-438e-9003-51a46e139bfc},6dưới Propertieskhóa con


Xin chào Aziz, tôi đã thử điều này trong W10, nhưng nó chỉ hoạt động một lần - và khi tôi cố gắng chuyển sang thiết bị trước đó qua đợt, nó đột nhiên biến mất khỏi danh sách mà bạn nhận được khi nhấp vào biểu tượng khay cho âm thanh. Ngoài ra, tôi thấy rằng trước tiên tôi cần phải có quyền cho khóa đăng ký đó (xem groovypost.com/howto/, )
MBaas
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.