На деяких материнських платах з вбудованим аудіо є роз'єм (щіточка) для винесення гнізд аудіо на передню панель. Реалтековскій драйвер (венда) на моєму комп'ютері мав опцію поділу виходів - щоб обидва гнізда були видні в системі як незалежні пристрої. Проблема в тому, що багато програм не розраховані на перемикання на льоту. Можливо, її може вирішити Virtual Audio Cable, але я з ним справи не мав і не збираюся причини відсутності Віндовс.
Що стосується Linux - в Убунту є ось це. але воно не працює - передні і задні гнізда працюють як analog output, а коли я вибираю навушники, обидва гнізда мовчать. Можливо, лінукс просто не вміє працювати з моєї материнки.
Подивіться на специфікації вашої материнки, може, у вас вийде.
А в крайньому випадку, можна спаяти простий пристрій, яке буде перемикати канали і їм можна буде управляти програмно.
а можна поцікавитися навіщо вам програмне перемикання між навушниками і колонками?
Ну а по справі, вирішити вашу задачу можна декількома способами:
в лоб - купити ЮСБ звуковуху до неї підробити уши, а в Убунту через pulseaudio / alsamixer вмикати виведення звуку.
найправильніше рішення - на всіх сучасних корпусах є на передній панелі ЮСБ та аудіопорти, ось їх підключити до материнке і туди тикати навушники. якщо для вашої звуковухи дрова в Убунту повноцінні то при підключенні вух, колонки самі будуть вирубатся. ну а якщо самі не зможуть то знову ж через pulseaudio / alsamixer просто вирубувати канал колонок / врубаєм вуха.
якщо другий варіант не підходить я б просто спаяв невеликий перехідник з перемикачем і через нього підключив і колонки і вуха.
а можна поцікавитися навіщо вам програмне перемикання між навушниками і колонками?
У мене самопісний медіацентр і з'явилася потреба дивитися фільми в навушниках (щоб не заважати). Відповідно, потрібна нова кнопка щоб миттєво перемикати звук між основними колонками і навушниками.
Методом тику, прийшов до наступного алгоритму настройки передньої аудіо панелі:
1 Включаємо ПК
2 Запускаємо alsamixer (в терміналі вводимо alsamixer)
2.1 включаємо headphone (натиснути M)
2.2 виставляємо headphone по максимуму
2.3 закриваємо alsamixer
3 Підключаємо навушники до задньої панелі
3.1 перевіряємо чи працюють вони
3.2 якщо працюють то повторюємо пункт 2
4 Вставляємо навушники в передню панель.