Иногда навязчивость винды заставляет фалломорфировать и делать бочку одновременно. Вот есть всякие продвинутые многоканальные аудио-девайсы, подключаемые через Firewire или USB, да даже через PCI — это не важно. Я сейчас экспериментирую с девайсом, у которого 20 входов и 20 выходов. Firewire все это дело вполне тянет до 96KHz и 24 бита. Но вот тупизна виндовых интерфейсов находится просто за гранью бобра и козла. С каждым таким девайсом прилагается некая базовая софта, основное назначение которой — настроить роутинг каналов и выставить параметры — sample rate и buffer size. Ну и как простой миксер с некоторыми очень базовыми эффектами. Конечно же, к таким девайсам прилагаются и виндовые драйвера, чтобы можно было через них играть музло из любого плеера. И девайсы вполне видны в контрол-панели. Что заставляет меня экскрементировать тонны стройматериалов — так это то, что нельзя никаким способом заставить винду кушать те параметры, которые выставлены в девайсе. Скажем, я поставил sample rate на 48KHz — ну мне так надо. А в виндовой контрол-панели стоит 44.1. И вот когда я запускаю Winamp или любой другой плеер, включая виндовый, все — sample rate переключается на 44.1. Даже если файл, который я пытаюсь проиграть в плеере, записан на этих самых 48! Это вообще идиотизм — винда не может прочитать sample rate из девайса, поэтому переключает девайс на 44.1, после чего, софтварно ресамплит сигнал из 48 в 44.1! Идиоты! Более того — когда я лочу девайс либо своей софтой, либо каким-нибудь кубейсом через ASIO — которые вполне кушают тот sample rate, приходящий из девайса, так вот, пытаюсь проиграть файл через винду с точно таким же sample rate — и получаю облом, ибо видите-ли, в контрол-панели поставлен другой. Винда не играет, ибо не может выставить sample rate, ибо девайс залочен другой софтой. А прочитать параметры нэ можэ. Более того — я в виндовых API не нашел способа инициализации аудио-девайса БЕЗ указания sample rate. А мне не надо ставить свой собственный — мне надо только узнать, какой он там в девайсе поставлен. Через MS API я никак не могу это сделать. Вот эта наитупейшая дебильно-кретиническая лажа сводит на нет все миллиарды нефти, потраченные Микрософтом на звук. Идиоты.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, McSeem2, Вы писали:
MS>Иногда навязчивость винды заставляет фалломорфировать и делать бочку одновременно. Вот есть всякие продвинутые многоканальные аудио-девайсы, подключаемые через Firewire или USB, да даже через PCI — это не важно.
Мышки кололись и плакали, но всё таки ели кактус.
>Скажем, я поставил sample rate на 48KHz — ну мне так надо. А в виндовой контрол-панели стоит 44.1.
А 48кгц разве нельзя выставить в контрол-панели, что бы все было одинаково ?
Материал из Википедии — свободной энциклопедии, -_*
Здравствуйте, LR, Вы писали:
LR>Мышки кололись и плакали, но всё таки ели кактус.
Да, именно так. Ибо момент инерции очень большой, признаю это.
>>Скажем, я поставил sample rate на 48KHz — ну мне так надо. А в виндовой контрол-панели стоит 44.1.
LR>А 48кгц разве нельзя выставить в контрол-панели, что бы все было одинаково ?
Можно! Но ты не понял о чем речь. Мне надо, чтобы винда не быдлила, а умела работать с теми килогерцами, которые ей дали, а не только с теми, которые поставлены в этой вашей идиотской контрол-панели.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, McSeem2, Вы писали:
LR>>А 48кгц разве нельзя выставить в контрол-панели, что бы все было одинаково ?
MS>Можно! Но ты не понял о чем речь. Мне надо, чтобы винда не быдлила, а умела работать с теми килогерцами, которые ей дали, а не только с теми, которые поставлены в этой вашей идиотской контрол-панели.
"Быдлит" твой софт, который не может изменить одну единственную опцию в Виндовсе на время работы. Ну представь — жалкие игрушки переключают видеорежим в Виндовсе. А серьезный софт почему то гнушается сделать такую мелочевочку.
Материал из Википедии — свободной энциклопедии, -_*
Здравствуйте, LR, Вы писали:
LR>"Быдлит" твой софт, который не может изменить одну единственную опцию в Виндовсе на время работы. Ну представь — жалкие игрушки переключают видеорежим в Виндовсе. А серьезный софт почему то гнушается сделать такую мелочевочку.
Ты опять не понял. Придется разъяснять как малолетнему. Я запускаю кубейс — вполне серьезый софт. Он без проблем кушает то, что поставлено в девайсе и главное — НЕ ТРОГАЕТ ничего. А далее, при работающем кубейсе я запускаю виндовый плеер, с файлом — ВНИМАНИЕ! у которого именно те же самые килогерцы, что и в девайсе. И получаю фэйл. Винда не может прочитать настройки, ей надо обязательно установить свои. А если не получается, то фэйл — вот это меня бесит.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, McSeem2, Вы писали:
LR>>"Быдлит" твой софт, который не может изменить одну единственную опцию в Виндовсе на время работы. Ну представь — жалкие игрушки переключают видеорежим в Виндовсе. А серьезный софт почему то гнушается сделать такую мелочевочку.
MS>Ты опять не понял. Придется разъяснять как малолетнему.
Хорошо, винда — отстой. Надеюсь тебе стало легче.
Материал из Википедии — свободной энциклопедии, -_*
Здравствуйте, LR, Вы писали:
LR>Хорошо, винда — отстой. Надеюсь тебе стало легче.
Нет, не отстой. Но навязчивость бесит. Бесит то, что одни люди (программисты) старались, делали как лучше, а другие (типа менеждеры) просто взяли и все тупо слили — я в этом уверен. Поэтому я и не пошел работать в этот ваш Микрософт, хотя для лыжно-досочников в тех краях просто рай. Но не хочу быть высокооплачиваемым негром.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, McSeem2, Вы писали:
MS>Нет, не отстой. Но навязчивость бесит. Бесит то, что одни люди (программисты) старались, делали как лучше, а другие (типа менеждеры) просто взяли и все тупо слили — я в этом уверен. Поэтому я и не пошел работать в этот ваш Микрософт, хотя для лыжно-досочников в тех краях просто рай. Но не хочу быть высокооплачиваемым негром.
не взяли?. не расстраивайся, не надо из-за этого на винду сваливать свои неудачи..
Здравствуйте, McSeem2, Вы писали:
MS>от эта наитупейшая дебильно-кретиническая лажа сводит на нет все миллиарды нефти, потраченные Микрософтом на звук. Идиоты.
Осталось понять причем тут винда? Если у разработчиков драйверов и софта руки растут неотуда.
UNIX way — это когда тебе вместо туалетной бумаги дают топор, рубанок и карту близлежащего леса
Здравствуйте, McSeem2, Вы писали:
MS>Иногда навязчивость винды заставляет фалломорфировать и делать бочку одновременно.
Давно заметил, в Винде, как правило, все хорошо, пока не захочешь сделать что-то необычное. Тоже были в свое время проблемы, когда я играл на гитаре через линейный вход Audigy SE с последующей обработкой в Guitar Rig под x64 вистой через ASIO4ALL. Выяснилось, что для x64 системы драйвера звуковухи вроде бы и есть, и даже звук играется, но только не в таком варианте. Под XP x86 можно было нарулить звук в настройках драйверов, а в Висте этих настроек тупо не было.
В итоге купил примочку и комбарь, чем и решил проблему. По сути, перешел в более многочисленную аудиторию (как правило, гитаристы не играют через компьютер. А если и играют, то либо покупают звуковую карту посовременнее, либо ставят ОС постарше, где все работает).
Здравствуйте, neFormal, Вы писали:
F>не взяли?. не расстраивайся, не надо из-за этого на винду сваливать свои неудачи..
Это я их не взял. Официальный оффер притсутствовал, где-то валяется в свалке бумаг. Кстати, одним из неприятных моментов была лохотронная риторика. Когда я отказался, то позвонила тетка и завела типовую песню про единственный шанс в жизни — в точности как на семинаре по тайм-шерам. Я однажды купился на дешевизну роскошных апартаментов во Флориде, из за чего пришлось вытерпеть полтора часа фака брейна. В Микрософте — таже самая риторика. Не люблю лохотроны.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, catBasilio, Вы писали:
B>Осталось понять причем тут винда? Если у разработчиков драйверов и софта руки растут неотуда.
Причем здесь драйверы? Еще раз, для глухих танкистов — в винде на уровне API нельзя открыть аудио-девайс с тем sample rate, на который он настроен. Можно либо указать самому, либо кушать то, что установлено в ВИНДОВОЙ контрол-панели. Все — слифф зощщитан.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, McSeem2, Вы писали:
F>>не взяли?. не расстраивайся, не надо из-за этого на винду сваливать свои неудачи.. MS>Это я их не взял. Официальный оффер притсутствовал, где-то валяется в свалке бумаг. Кстати, одним из неприятных моментов была лохотронная риторика. Когда я отказался, то позвонила тетка и завела типовую песню про единственный шанс в жизни — в точности как на семинаре по тайм-шерам. Я однажды купился на дешевизну роскошных апартаментов во Флориде, из за чего пришлось вытерпеть полтора часа фака брейна. В Микрософте — таже самая риторика. Не люблю лохотроны.
Здравствуйте, McSeem2, Вы писали:
MS> Винда не играет, ибо не может выставить sample rate, ибо девайс залочен другой софтой. А прочитать параметры нэ можэ. Более того — я в виндовых API не нашел способа инициализации аудио-девайса БЕЗ указания sample rate. А мне не надо ставить свой собственный — мне надо только узнать, какой он там в девайсе поставлен. Через MS API я никак не могу это сделать. Вот эта наитупейшая дебильно-кретиническая лажа сводит на нет все миллиарды нефти, потраченные Микрософтом на звук. Идиоты.
У меня есть подозрение, что подобное поведение — желание угодить потребностям 99% юзеров, которым все что нужно — это возможность компьютера более-менее правильно издавать звуки. Если бы в MS сделали как ты хочешь, возможно у кого-то были бы иногда глюки с воспроизведением из-за несовпадения частоты дискретизации.
Я с таким, правда, в другой области, уже сталкивался. Проще заблочить некие небезопасные возможности, чем разгребать потом жалобы отдельных идиотов.
Здравствуйте, McSeem2, Вы писали:
MS>Иногда навязчивость винды заставляет фалломорфировать и делать бочку одновременно. Вот есть всякие продвинутые многоканальные аудио-девайсы, подключаемые через Firewire или USB, да даже через PCI — это не важно. Я сейчас экспериментирую с девайсом, у которого 20 входов и 20 выходов. Firewire все это дело вполне тянет до 96KHz и 24 бита. Но вот тупизна виндовых интерфейсов находится просто за гранью бобра и козла.
....
Через MS API я никак не могу это сделать. Вот эта наитупейшая дебильно-кретиническая лажа сводит на нет все миллиарды нефти, потраченные Микрософтом на звук. Идиоты.
По долгу службы имел дела со многими RME Hammerfall картами, от "дешевых" до 64-канальных MADI, не было проблем. Да, и драйвера для харда не Микрософт пишет
Здравствуйте, McSeem2, Вы писали:
MS>Более того — я в виндовых API не нашел способа инициализации аудио-девайса БЕЗ указания sample rate. А мне не надо ставить свой собственный — мне надо только узнать, какой он там в девайсе поставлен.
Я сталкивался с такой проблемой, когда пользовал DirectSound. Пошел обход через DirectShow-фильтры. Угу, т.е. даже когда мы DirectShow не юзаем для обработки звука, мы его юзаем потому, что там больше интерфейсов для конфигурирования девайсов. В том числе, можно прочесть установки самого девайса. Это же относится не только к аудио, и но и видео.
Поэтому берешь какой-нить DirectShow графопостроитель, там ищешь свои девайсы, смотришь предоставляемые настройки (и поддерживаемые DirectShow и/или DirectMediaObject интерфейсы), генеришь код создания графа и выкусываешь конкретно нужные твои девайсы. Используешь этот код и знания о поддерживаемых DMO-интерфейсах для запроса параметров девайсов перед их инициализацией в DirectSound или ASIO. Всё.
Здравствуйте, vdimas, Вы писали:
V>Поэтому берешь какой-нить DirectShow графопостроитель, там ищешь свои девайсы, смотришь предоставляемые настройки (и поддерживаемые DirectShow и/или DirectMediaObject интерфейсы), генеришь код создания графа и выкусываешь конкретно нужные твои девайсы. Используешь этот код и знания о поддерживаемых DMO-интерфейсах для запроса параметров девайсов перед их инициализацией в DirectSound или ASIO. Всё.
Ой! Звучит как фильм ужасов.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, McSeem2, Вы писали:
V>>Поэтому берешь какой-нить DirectShow графопостроитель, там ищешь свои девайсы, смотришь предоставляемые настройки (и поддерживаемые DirectShow и/или DirectMediaObject интерфейсы), генеришь код создания графа и выкусываешь конкретно нужные твои девайсы. Используешь этот код и знания о поддерживаемых DMO-интерфейсах для запроса параметров девайсов перед их инициализацией в DirectSound или ASIO. Всё.
MS>Ой! Звучит как фильм ужасов.
Ты знаешь, это должно стать хорошей привычкой — щупать любой девайс через графопостроитель.
Это поможет "по быстрому" посмотреть, какие GUI-диалоги редактирования св-в предоставляет сам драйвер девайса (т.е. какие ты сможешь юзать в своём приложении), и насколько тебя они устраивают. Ну и посмотреть список поддерживаемых интерфейсов, что тоже немаловажно. Заодно можно потыкать на входные пины источники с различным форматом, посмотреть как реагирует. В общем, пользоваться графопостроителями довольно легко. Вот попробуй от D.Mon: http://www.infognition.com/GraphEditPlus/
Одна мелочь... В графах всё суть фильтры. Но для облегчения поиска девайсы умеют правильно себя регистрировать дополнительно в классах. Некоторые этого не делают, поэтому эти такие девайсы находятся в дереве поиска графопостроителя не в ветках типа "Источники Звука", а просто в фильтрах.
Здравствуйте, vdimas, Вы писали:
V>Ты знаешь, это должно стать хорошей привычкой — щупать любой девайс через графопостроитель.
Да я-то не поленюсь и сделаю-таки. Но возмущает — почему самый что ни на есть виндовый плеер не может работать с тем, что ему дают? А когда может — сбивает то, что поставлено в железе.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, McSeem2, Вы писали:
LR>>"Быдлит" твой софт, который не может изменить одну единственную опцию в Виндовсе на время работы. Ну представь — жалкие игрушки переключают видеорежим в Виндовсе. А серьезный софт почему то гнушается сделать такую мелочевочку.
MS>Ты опять не понял. Придется разъяснять как малолетнему. Я запускаю кубейс — вполне серьезый софт. Он без проблем кушает то, что поставлено в девайсе и главное — НЕ ТРОГАЕТ ничего.
Ну тебе же сказали — игрушки даже переключают видео-режим, в чем проблема вручную установить sample rate перед проигрыванием? Уверен, что в control panel пожно через API подкрутить sample rate и установить тот, который тебе нужен.
Здравствуйте, LR, Вы писали:
LR> MS>Можно! Но ты не понял о чем речь. Мне надо, чтобы винда не быдлила, а умела работать с теми килогерцами, которые ей дали, а не только с теми, которые поставлены в этой вашей идиотской контрол-панели.
LR> "Быдлит" твой софт, который не может изменить одну единственную опцию в Виндовсе на время работы. Ну представь — жалкие игрушки переключают видеорежим в Виндовсе. А серьезный софт почему то гнушается сделать такую мелочевочку.
А если запустить два софта, которые меняют глобальные настройки для своей корректной работы? Который из них будет корректно работать? Подозреваю, что винда будет смеяться и быдлить
Здравствуйте, ocaml, Вы писали:
O> А если запустить два софта, которые меняют глобальные настройки для своей корректной работы? Который из них будет корректно работать? Подозреваю, что винда будет смеяться и быдлить
Здравствуйте, uhh, Вы писали:
uhh> O> А если запустить два софта, которые меняют глобальные настройки для своей корректной работы? Который из них будет корректно работать? Подозреваю, что винда будет смеяться и быдлить
uhh> применятся настройки последнего -> последний.
Здравствуйте, ocaml, Вы писали:
O>Здравствуйте, uhh, Вы писали:
uhh>> O> А если запустить два софта, которые меняют глобальные настройки для своей корректной работы? Который из них будет корректно работать? Подозреваю, что винда будет смеяться и быдлить
uhh>> применятся настройки последнего -> последний.
O> Это не есть хорошо.
зато логично. если двое меняют какие-либо глобальные настройки, будет верным *при условии одинаковых привелегий* применять эти изменения по очереди.
Здравствуйте, uhh, Вы писали:
uhh> uhh>> O> А если запустить два софта, которые меняют глобальные настройки для своей корректной работы? Который из них будет корректно работать? Подозреваю, что винда будет смеяться и быдлить
uhh> uhh>> применятся настройки последнего -> последний.
uhh> O> Это не есть хорошо.
uhh> зато логично. если двое меняют какие-либо глобальные настройки, будет верным *при условии одинаковых привелегий* применять эти изменения по очереди.
Здесь не об этом речь. Понятно, что последние настройки применятся (вот ты ум! )
Не есть хорощо вообще такие глобальные настройки иметь. Даже переменные глобальные учат на первом курсе не заводить.
Здравствуйте, ocaml, Вы писали:
LR>> "Быдлит" твой софт, который не может изменить одну единственную опцию в Виндовсе на время работы. Ну представь — жалкие игрушки переключают видеорежим в Виндовсе. А серьезный софт почему то гнушается сделать такую мелочевочку.
O> А если запустить два софта, которые меняют глобальные настройки для своей корректной работы? Который из них будет корректно работать? Подозреваю, что винда будет смеяться и быдлить
Представь себя на месте разработчика такого софта. Ты знаешь, что Виндовс не умеет решать такие вопросы. У тебя есть варианты:
1. Стать в позу великомученика и свалить всю вину на Микрософт
2. Предусмотреть работу хотя бы своей программы
Какой варианты ты выберешь ? Я выберу вариант 2 и сделаю кнопку которая будет менять эту опцию.
Материал из Википедии — свободной энциклопедии, -_*
Здравствуйте, McSeem2, Вы писали:
MS>Причем здесь драйверы? Еще раз, для глухих танкистов — в винде на уровне API нельзя открыть аудио-девайс с тем sample rate, на который он настроен. Можно либо указать самому, либо кушать то, что установлено в ВИНДОВОЙ контрол-панели. Все — слифф зощщитан.
Здравствуйте, LR, Вы писали:
LR> O> А если запустить два софта, которые меняют глобальные настройки для своей корректной работы? Который из них будет корректно работать? Подозреваю, что винда будет смеяться и быдлить
LR> Представь себя на месте разработчика такого софта. Ты знаешь, что Виндовс не умеет решать такие вопросы. У тебя есть варианты: LR> 1. Стать в позу великомученика и свалить всю вину на Микрософт LR> 2. Предусмотреть работу хотя бы своей программы LR> Какой варианты ты выберешь ? Я выберу вариант 2 и сделаю кнопку которая будет менять эту опцию.
Я тоже, но пользователям от этого не легче. Ладно игрушки — они сами по себе "однозадачны", так как играть в две игры в одно время никому в голову не придет (хотя видеоплеер, кажется, приходится выгружать из памяти, а то игрушка так тупииит).