На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела "Программирование звука"
0) Данный раздел предназначен для обсуждения проблем, возникающих при программировании задач, связанных с записью, обработкой, воспроизведением звука. Перед созданием темы подумайте, не будет ли она уместнее в разделах Разработка и тестирование программ, Наши исходники, а особенно Разовые заказы и подработки
1) На Раздел распространяются все Правила форума.Огромная просьба с ними внимательно ознакомиться.
2) Запрещается давать бессмысленные ответы вроде: "Снеси Мастдай", "ХП рулит", "Поставь Линукс" и т.д.
3) Запрещается создавать темы, в которых Вы намереваетесь получить ссылку на кряки, серийники и т.п. Также запрещено любое обсуждение p2p (peer-to-peer) сетей (BitTorrent, eDonkey и т.д.).
4) Реклама всякого рода пресекается беспощадно.
5) Используйте тэг [CODE] для выделения кода программы (непременно с указанием языка программирования - выбрать из списка. В противном случае бессмысленно!). Уважайте тех, кто будет читать ваш код!
6) Если решение вашей проблемы найдено, то не забываем помечать тему специальной функцией "Вопрос решён". Вам всего лишь требуется при написании последнего ответа поставить одну единственную галочку прямо над формой ответа.
7) Если вы хотите получить совет для конкретной платформы/языка программирования, обязательно укажите их в вопросе

8) Если не прикрепляются/не скачиваются файлы, читаем Не прикрепляется / не скачивается файл. Любые обсуждения в данном разделе проблем с приложением файлов считаются оффтопиком! Со всеми вытекающими.

9) NEW! Уважаемые новички! Мы приветствуем Ваше желание научить всех посетителей раздела правильному программированию. Но огромная просьба, перед тем, как писать поучения в старых (последний ответ - "старее" месяца, а особенно, если вопрошавший не появляется на форуме уже не первый месяц, в чем можно убедиться в его профиле) темах, хорошо подумать, будет ли кому-нибудь, кроме Вас cамих, это интересно. Попытки накрутки количества тематических сообщений за счёт поднятия древних неактуальных тем ("некрофилия") будут наказываться по велению левой пятки модераторского состава (см. пп.12, 13 Правил)



Нарушение Правил может повлечь наказание со стороны модераторов.



user posted imageFAQ Раздела user posted imageПоиск в Разделе user posted imageMSDN Library Online | Ваше мнение о модераторах: user posted imageBarazuk user posted imageRikkie
  
> Как программировать многоканальное устройство?
    Вроде бы с записью с микрофона разобрался. Решил попробовать поработать с многоканальнм устройством. Мне удалось достать звуковую карты Delta 66 на период отпуска товарища. В Windows XP успешно установился драйвер. При опросе получаю следующую информацию:

    ------------------ Входные устройства ---------------

    0 Компакт-диск (VIA High Definiti
    1 S/PDIF (M-Audio Delta 66)
    2 Стерео микшер (VIA High Definit
    3 Front Mic (VIA High Definition
    4 Line 3/4 (M-Audio Delta 66)
    5 Monitor (M-Audio Delta 66)
    6 Line 1/2 (M-Audio Delta 66)
    7 Multichannel (M-Audio Delta 66)

    Если я работаю с микрофоном, то ввожу цифру 3 и использую функцию:
    ExpandedWrap disabled
      waveInOpen(&hwvInDev, numIn, &wvFormat, (DWORD)wvRecCallBack, 0L, CALLBACK_FUNCTION);
    в которой numIn = 3. На внешнем блоке Delta 66 вижу 4 входных гнезда, а по сообщениям программы получается, что гнезда 1-2 и 3-4 совмещены, т.е. отдельно открыть 1 и 2 канал для записи сигналов по каждому из входов с помощью указанной выше функции у меня не получится. Подскажите, пожалуйста, есть ли возможность записывать сигналы по всем 4 входным каналам? Очень надеюсь на скорую помощь специалистов, поскольку через 2 недели устройство придется возвращать.
      Или открывать 4 и 6 как независимые 2-х канальные устройства, или поэкспериментировать с 7.
      Если 7 позволит сразу 4 канала писать, то и совсем хорошо.

      Добавлено
      А что говорит waveInGetDevCaps по поводу 7(4,6)? Что в wChannels?
      Сообщение отредактировано: Prince -
        Немного изменил программу:
        ExpandedWrap disabled
          #include <windows.h>
          #include <conio.h>
          #include <locale>
          #include <string.h>
          #include <iostream>
          #include <MMSystem.h>
           
          #pragma comment(lib,"winmm.lib")
           
          using namespace std;
           
          void wvErrorMes(string mes, MMRESULT wvRes)
          {
            char strError[128];
            if(wvRes != MMSYSERR_NOERROR)
            {
              cout << mes << endl;
              wvRes = waveInGetErrorText(wvRes, strError, 128);
              cout << "\nОшибка: " << strError << endl;
              cout << "\nПрограмма завершила работу. Для продолжения нажмите любую клавишу";
              _getch();
              exit(EXIT_FAILURE); // EXIT_SUCCESS, EXIT_FAILURE
            }
          }
           
          void GetAudioInfo()
          {
            UINT numInDev  = waveInGetNumDevs();
            MMRESULT wvRes;
            cout << "------------------ Входные устройства ---------------" << endl << endl;
            WAVEINCAPS wvInfoIn;
            for(UINT i = 0; i < numInDev; i++)
            {
              wvRes = waveInGetDevCaps(i, &wvInfoIn, sizeof(wvInfoIn));
              if(wvRes != MMSYSERR_NOERROR)
              {
                cout << "\nОшибка определения параметров входного устройства № " << i << endl;
              }  
              cout << i << "\t" << wvInfoIn.szPname << endl;
            }
            cout << endl;
          }
           
          void GetDevInfo(int i)
          {
            WAVEINCAPS wvInfoIn;
            waveInGetDevCaps(i, &wvInfoIn, sizeof(wvInfoIn));
            cout << "--------------- Устройство № " << i << " ---------------------" << endl;
            cout << "wMid\t" << "wPid\t" << "dwFormats\t" << "wChannels" << endl;
            cout << wvInfoIn.wMid << "\t" << wvInfoIn.wPid << "\t" << wvInfoIn.dwFormats << "\t\t" << wvInfoIn.wChannels << "\n\n";
            }
           
          void main(int argc, char* argv[])
          {
            setlocale(LC_ALL, "");
            GetAudioInfo();
            int num[] = {4, 6, 7};
            for(int i = 0; i < 3; i++)
            {
              GetDevInfo(num[i]);
            }  
             cout << "\nПрограмма завершила работу. Для выхода нажмите любую клавишу" << endl;
            _getch();
          }
        и получил следующие результаты:
        ------------------ Входные устройства ---------------

        0 Компакт-диск (VIA High Definiti
        1 S/PDIF (M-Audio Delta 66)
        2 Стерео микшер (VIA High Definit
        3 Front Mic (VIA High Definition
        4 Line 3/4 (M-Audio Delta 66)
        5 Monitor (M-Audio Delta 66)
        6 Line 1/2 (M-Audio Delta 66)
        7 Multichannel (M-Audio Delta 66)

        --------------- Устройство № 4 ---------------------
        wMid wPid dwFormats wChannels
        239 65535 1048575 2

        --------------- Устройство № 6 ---------------------
        wMid wPid dwFormats wChannels
        239 65535 1048575 2

        --------------- Устройство № 7 ---------------------
        wMid wPid dwFormats wChannels
        239 65535 1048575 2

        Как я понял, устройство 4 и 6 имеют по 2 канала, т.е. для устройства 4 первый канал - это вход 3, второй канал - вход 4, для устройства 6 - вход 1 и вход 2, а что такое мультиканал - не представляю. С точки зрения программирования все равно не понял, как обратиться к каждому каналу. Помогите, пожалуйста, разобраться.
          Цитата
          Как я понял, устройство 4 и 6 имеют по 2 канала, т.е. для устройства 4 первый канал - это вход 3, второй канал - вход 4, для устройства 6 - вход 1 и вход 2

          Да.
          Цитата
          С точки зрения программирования все равно не понял, как обратиться к каждому каналу.

          В чём конкретно загвоздка? С записью, вы говорите, что разобрались.
          Буфер можно представить как одномерный массив, где чётные элементы - левый канал, нечётные - правый; или как двумерный массив.
          Если я правильно уловил суть вопроса.
          Сообщение отредактировано: Prince -
            Попробую объяснить:
            при выборе цифры 6 я выбираю сразу 2 канала - 1 и 2. Как в программе, приведенной в Как программа записи звука с микрофона прерывает запись?, указать, что для записи будет использоваться, например, 1 канал? В Adobe Audition в случае моно сигнала легко можно выбрать 1 или 2 канал (или сразу 4 входных канала), и записывать данные с каждого канала в отдельные файлы. Как при использовании MME добиться таких же возможностей? Как разделить каналы, если используется одна и та же цифра 6 для двух каналов?
              Получнив буфер от карты, разделить его на два набора данных по принципу: два байта (еслий звук 16 битный) - левый канал, два байта - правый канал, и .т. д.
              Сообщение отредактировано: MIF -
                Цитата
                Как разделить каналы, если используется одна и та же цифра 6 для двух каналов?



                Буфер, который возращает устройство 6 по wim_data, каналы 1 и 2 канал 1канал 2канал 1канал 2канал 1канал 2канал 1канал 2...канал 1канал 2
                wvBuf -> lpData 013867345-1341563453-300-567...-789876

                Выделить 2 дополнительных буфера(массива), куда раскидать чётные и нечётные элементы из стерео(2-х канального) буфера.


                Дополнительный буфер, канал 1 канал 1канал 1канал 1канал 1...канал 1
                buf_L 0345156-300...-789



                Дополнительный буфер, канал 2 канал 2канал 2канал 2канал 2...канал 2
                buf_R 13867-1343453-567...876

                Цитата
                записывать данные с каждого канала в отдельные файлы

                buf_L и buf_R скидывать в разные файлы.
                Сообщение отредактировано: Prince -
                  Спасибо большое за подробные объяснения! Идею понял, попробую реализовать на практике.
                    А как влияет значение wvFormat.nChannels на запись? Предположим, выбрано устройство 6, wvFormat.nChannels = 2, wvFormat.wBitsPerSample = 16, wvFormat.nSamplesPerSec = 44100. Записываем все данные в один файл. Разве в файл не будут последовательно сохраняться данные с двух каналов (первый канал, второй канал, первый канал, второй канал и т.д.)? А потом этот файл можно будет разобрать на четные и нечетные отсчеты (зная, что он двухканальный и в отчете 16 бит) и дальше обрабатывать поканально.
                      Цитата tumanovalex @
                      Записываем все данные в один файл. Разве в файл не будут последовательно сохраняться данные с двух каналов (первый канал, второй канал, первый канал, второй канал и т.д.)?

                      Будут.
                      Цитата tumanovalex @
                      А потом этот файл можно будет разобрать на четные и нечетные отсчеты (зная, что он двухканальный и в отчете 16 бит) и дальше обрабатывать поканально.


                      Можно И потом, а можно И на лету,без записи в файл.
                        Возник еще один вопрос. При одновременной записи по каналам 6 и 4 (Как программа записи звука с микрофона прерывает запись?) нужно создавать 2 CallBack функции, две функции tryrec и два файла для записи с разными названиями?
                          Цитата
                          нужно создавать 2 CallBack функции

                          Поскольку в CallBack передаётся хендл устройства, от которого прилетело сообщение, можно разрулить в теле одной функции сообщения и от 6 и от 4. Попробуйте, проверьте.
                          Цитата
                          две функции tryrec

                          До окончания записи основной поток зависнет в tryrec. Или переписывать tryrec под 2 устройства, или менять структуру программы.
                          Цитата
                          два файла для записи с разными названиями

                          Скорее да, чем нет.
                          Можно, в принципе, придумать механизм записи всех (4-х) каналов в один wave файл.
                          Но пишите пока в 2 разных (или 4) файла. Вам ведь для теста некритично(?)
                          Сообщение отредактировано: Prince -
                            Спасибо за ответ. Попробую.
                              Попробовал программировать Motu. В отличие от Delta 66 дает номер устройства только один (в моем случае номер устройства 2: Motu Analog). Если сделать стереозапись, то сохраняет в файл входные сигналы с 2 каналов (1 и 2 или 2 и 3). Всего каналов 8. Я установил в настройках моно сигнал, запустил запись и поочередно вставлял в каждые из 8 входов микрофон. Думал, что в файл будут записаны поочередно значения со всех каналов. Разобрал файл на 8 файлов, в которые, как я предполагал, записаны сигналы с 1, 2 и т.д. входов. Поочередно загрузил файлы в CoolEdit и ожидал увидеть сдвинутые по времени фрагменты записи звука: 1 канал - крайний слева, 2 канал - правее первого фрагмента и т.д., 8 канал крайний справа. Однако ничего подобного я не увидел, какая-то ерунда.
                              Как я понял из вышестоящих обсуждений, если бы были номера каналов 1 и 2, 3 и 4 и т.д., можно было бы попробовать сделать несколько колбек функций и записывать в разные файлы. А тут только один номер для всех 8 устройств.
                              Помогите, пожалуйста, советом, как разобраться с организацией записи в Motu. Может быть MME не подходит и нужно что-нибудь другое, типа DirectSound или ASIO?
                              Попробовал записывать с Adobe Audition, пишет по всем 8 каналам моно или по 4 каналам стерео (попарно). Значит как-то можно все-таки записывать по всем каналам?
                                Цитата
                                Я установил в настройках моно сигнал, запустил запись и поочередно вставлял в каждые из 8 входов микрофон.

                                Ерунда.
                                Цитата
                                Если сделать стереозапись, то сохраняет в файл входные сигналы с 2 каналов (1 и 2 или 2 и 3).

                                Так 1 и 2, или 2 и 3? :wacko:
                                Цитата
                                Может быть MME не подходит и нужно что-нибудь другое, типа DirectSound или ASIO?

                                ASIO.
                                Цитата
                                Попробовал записывать с Adobe Audition, пишет по всем 8 каналам моно или по 4 каналам стерео (попарно). Значит как-то можно все-таки записывать по всем каналам?

                                Загляните в настройки адоб аудишн, посмотрите, какой интерфейс используется.
                                Цитата
                                В отличие от Delta 66 дает номер устройства только один (в моем случае номер устройства 2: Motu Analog).

                                :-? Как запилил поддержку MME(waveaudio functions) в своих драйверах производитель, он и знает. Кстати, почему бы у него и не спросить.
                                Цитата
                                Помогите, пожалуйста, советом

                                Посмотрите BASSASIO, например. Там должны быть примеры.
                                Сообщение отредактировано: Prince -
                                  Спасибо за ответ.
                                  1. Сохраняет информацию в стереофайл только 1 и 2 канал.
                                  2. В настройках аудишена посмотрю, что используется.
                                  3. BASSASIO тоже посмотрю.
                                  О результатах сообщу.
                                    Возник еще вопрос. Получается так, что в зависимости от аппаратуры (например, Motu или Delta 66), я должен использовать или MME, или Direct Sound, или ASIO. Где-то в Интернете я читал, что вроде бы все эти интерфейсы основаны на Core Audio. Если использовать Core Audio, то можно сделать интерфейсно независимую программу?
                                      Цитата
                                      Если использовать Core Audio, то можно сделать интерфейсно независимую программу?

                                      Она будет ось-зависимой.
                                      Сообщение отредактировано: Prince -
                                        Это лучше, чем интерфейсная зависимость. А хорошие примеры использования Core Audio для записи сигналов где можно найти?
                                          Что там всё-таки в адоб аудишн, в настройках hardware?
                                          Цитата
                                          Это лучше, чем интерфейсная зависимость.

                                          Чем лучше?

                                          Цитата
                                          в зависимости от аппаратуры (например, Motu или Delta 66)

                                          И тот и другой адаптер поддерживают ASIO. Т.е., с ASIO не должно быть проблем.
                                          Delta 66 подерживает также MME и DS. По поводу последних 2-х можно связаться с производителем Motu, и выяснить, как реализован(и реализован ли) механизм multichannel записи. С Delta 66, в принципе, и так понятно(да и в мануале достаточно подробно расписано). Разбили каналы попарно и представили в системе независимыми устройствами. Такое решение для multichannel устройств не раз встречалось, вам несколько участников об этом говорили.

                                          Цитата
                                          А хорошие примеры использования Core Audio для записи сигналов где можно найти?

                                          https://msdn.microsoft.com/ru-ru/library/wi...0(v=vs.85).aspx
                                          Где-то там.
                                          Вы точно уверены в том, что ядро семерки/системный микшер умеет работать с количеством каналов больше 2-х, на запись?
                                          Если разберетесь, дайте знать на форуме.
                                          Сообщение отредактировано: Prince -
                                            В Adobe - ASIO. Я все-таки не понимаю, почему ASIO видит больше каналов, чем MME. Потому что так написаны драйверы для Motu? Они поддерживаеют ASIO и не поддерживают MME?
                                            Сообщение отредактировано: tumanovalex -
                                              Цитата
                                              Я все-таки не понимаю, почему ASIO видит больше каналов, чем MME.

                                              АСИО "видит" не больше, а все каналы. MME(DS) "видят" не меньше, а 2 канала, больше они "не умеют". Одной из причин разработки фирмой Steinberg собственного интерфейса (АСИО) являлась невозможность многоканальной записи/вывода(больше 2-х каналов) в виндовс её штатными интерфейсами, что было связано с ограничениями системного микшера виндовс(звукового ядра виндовс). Проиходилось производителям оборудования идти на ухищрения, представлять свои устройства как несколько независимых стерео-устройств или придумывать свои интерфейсы и утрясать их с производителями студийного софта.
                                              В том числе АСИО. На АСИО ограничения виндовс не распространяются, АСИО работает фактически напрямую с устройством, минуя часть посредников-драйверов ядра системы. Откройте спецификацию АСИО, самое начало, там немного описаны мотивы и причины его появления. Если прочтёте дальше, обратите внимание, что принцип работы АСИО чем-то напоминает ММЕ с его очередью буферов.
                                              Цитата
                                              Потому что так написаны драйверы для Motu? Они поддерживаеют ASIO и не поддерживают MME?

                                              Motu поддерживает и АСИО, и ММЕ(полагаю, что и DS). Также как и Дельта-66.
                                              Адобаудишн обращается к интерфейсу АСИО, потому что видит в системе установленный AСИО драйвер и "понимает", что на том конце "провода" находится многоканальное устройство, и нет смысла пытаться работать с ним через ММЕ. Ну или так думает пользователь при настройке hardware options.
                                              При перечислении wavein устройств вы видите Motu Analog и даже записывали с этого устройства 2 канала. Т.е., поддержка ММЕ есть, но как она реализована, зависит от производителя.
                                              Для delta 66, заточенной ещё под виндовс 95/98/хр, разработчики предусмотрели(помимо АСИО, где подобные ухищрения не нужны) возможность записи всех (4-х) каналов через ММЕ, для чего представили своё устройство(для приложений, использующих MME) 2-мя "независимыми" wavein стерео-устройствами.
                                              Как поступили разработчики Motu - нужно спрашивать у них. Возможно, в мануале этот момент расписан, возможно, нет, но только производитель отвечает за реализацию поддержки интерфейсов в своих драйверах. Возможно, для ММЕ он ограничился возможностью записи одной стерео пары и посчитал это достаточным, а может быть, и нет. На это вам может ответить мануал и тех. поддержка. Не имея на руках техники, могу только гадать. Поскольку Motu железяка относительно новая, предположу, что помимо АСИО, она поддерживает ещё пару специфических интерфейсов, заточеных под студийный софт конкретных производителей.
                                              Сообщение отредактировано: Prince -
                                                Спасибо за подробный ответ. Кая я понял из Ваших объяснений, если семерка не умеет работать более чем с двумя каналами, Core Audio мне не поможет в программировании Motu. Относительно возможности семерки работать с более чем двумя каналами, не знаю даже, где это можно спросить. Может быть посоветуете, куда обратиться с этим вопросом?
                                                  Prince, правильно ли я понял, что DirectSound в случае программирования таких устройств, как Motu, имеет те же ограничения, что и MME? Т.е. он тоже не сможет увидеть все каналы Motu?
                                                  Сообщение отредактировано: tuchin -
                                                    Цитата tuchin @
                                                    Prince, правильно ли я понял, что DirectSound в случае программирования таких устройств, как Motu, имеет те же ограничения, что и MME? Т.е. он тоже не сможет увидеть все каналы Motu?

                                                    Имхо, да. DS работает через всё тот же системный микшер, как и MME.
                                                      Попробую поработать с Delta 66 через ASIO, когда дадут поиграться. Как я понял из описания, Delta 66 ASIO поддерживает. Интересно, какие будут отличия по сравнению с MME. О результатах сообщу, может быть кому-нибудь будет интересно.
                                                        А я вот попробовал поработать с ASIO (Motu Traveler в Windows XP). Программа:
                                                        ExpandedWrap disabled
                                                          #include <stdio.h>
                                                          #include <locale>
                                                          #include "bassasio.h"
                                                           
                                                          #pragma comment(lib, "bassasio.lib")
                                                           
                                                          void main(int argc, char* argv[])
                                                          {
                                                            setlocale(LC_ALL, "");
                                                              BASS_ASIO_DEVICEINFO di;
                                                              int a;
                                                              for (a=0;BASS_ASIO_GetDeviceInfo(a,&di);a++) {
                                                                  printf("dev %d: %s\ndriver: %s\n",a,di.name,di.driver);
                                                                  if (!BASS_ASIO_Init(a,BASS_ASIO_THREAD)) continue;
                                                                  {
                                                                      BASS_ASIO_CHANNELINFO i;
                                                                      int b;
                                                                      for (b=0;BASS_ASIO_ChannelGetInfo(1,b,&i);b++)
                                                                          printf("\tin %d: %s (group %d, format %d)\n",b,i.name,i.group,i.format);
                                                                      for (b=0;BASS_ASIO_ChannelGetInfo(0,b,&i);b++)
                                                                          printf("\tout %d: %s (group %d, format %d)\n",b,i.name,i.group,i.format);
                                                                      if (i.format<BASS_ASIO_FORMAT_DSD_LSB && BASS_ASIO_SetDSD(TRUE)) {
                                                                          printf("\tDSD:\n");
                                                                          for (b=0;BASS_ASIO_ChannelGetInfo(1,b,&i);b++)
                                                                              printf("\tin %d: %s (group %d, format %d)\n",b,i.name,i.group,i.format);
                                                                          for (b=0;BASS_ASIO_ChannelGetInfo(0,b,&i);b++)
                                                                              printf("\tout %d: %s (group %d, format %d)\n",b,i.name,i.group,i.format);
                                                                      }
                                                                  }
                                                                  BASS_ASIO_Free();
                                                              }
                                                            system("pause");
                                                          }
                                                        дала такой результат:
                                                        dev 0: MOTU Audio ASIO
                                                        driver: C:\Program Files\MOTU\MFWAASIO.DRV
                                                        in 0: Analog 1 (group 0, format 18)
                                                        in 1: Analog 2 (group 0, format 18)
                                                        in 2: Analog 3 (group 0, format 18)
                                                        in 3: Analog 4 (group 0, format 18)
                                                        in 4: Analog 5 (group 0, format 18)
                                                        in 5: Analog 6 (group 0, format 18)
                                                        in 6: Analog 7 (group 0, format 18)
                                                        in 7: Analog 8 (group 0, format 18)
                                                        in 8: AES/EBU 1 (group 0, format 18)
                                                        in 9: AES/EBU 2 (group 0, format 18)
                                                        in 10: S/PDIF 1 (group 0, format 18)
                                                        in 11: S/PDIF 2 (group 0, format 18)
                                                        in 12: Mix 1 Return 1 (group 0, format 18)
                                                        in 13: Mix 1 Return 2 (group 0, format 18)
                                                        out 0: Analog 1-2 (group 0, format 18)
                                                        out 1: Analog 1-2 (group 0, format 18)
                                                        out 2: Analog 3-4 (group 0, format 18)
                                                        out 3: Analog 3-4 (group 0, format 18)
                                                        out 4: Analog 5-6 (group 0, format 18)
                                                        out 5: Analog 5-6 (group 0, format 18)
                                                        out 6: Analog 7-8 (group 0, format 18)
                                                        out 7: Analog 7-8 (group 0, format 18)
                                                        out 8: AES/EBU 1-2 (group 0, format 18)
                                                        out 9: AES/EBU 1-2 (group 0, format 18)
                                                        out 10: S/PDIF 1-2 (group 0, format 18)
                                                        out 11: S/PDIF 1-2 (group 0, format 18)
                                                        out 12: Phones 1-2 (group 0, format 18)
                                                        out 13: Phones 1-2 (group 0, format 18)
                                                        dev 1: MOTU MicroBook ASIO
                                                        driver: C:\Program Files\MOTU\MOTUMicroBookASIO.DRV
                                                        in 0: Input 1-2 (group 0, format 18)
                                                        in 1: Input 1-2 (group 0, format 18)
                                                        in 2: Input 3-4 (group 0, format 18)
                                                        in 3: Input 3-4 (group 0, format 18)
                                                        out 0: Output 1-2 (group 0, format 18)
                                                        out 1: Output 1-2 (group 0, format 18)
                                                        dev 2: MOTU PCI ASIO
                                                        driver: C:\Program Files\MOTU\MAWASIO.DRV
                                                        DSD:
                                                        ASIO увидело все 8 входов, но мне не понятно следующее:
                                                        - почему 3 устройства ASIO?
                                                        - почему устройство 1 дает повторяющиеся значения для входов 0,1 и 2,3 (input 1-2 и input 3-4)?
                                                          Цитата
                                                          почему 3 устройства ASIO?

                                                          Сколько поставили драйверов(устройств), столько и будет. Используйте то устройство, что вам нужно.
                                                          MOTU MicroBook, по идее, совсем другая железка - не Motu Traveler, и у неё таки 4 входа. А последнее...без понятия, что-то связанное с форматом DSD...
                                                          Цитата
                                                          почему устройство 1 дает повторяющиеся значения для входов 0,1 и 2,3 (input 1-2 и input 3-4)

                                                          Разбирайтесь. Названия выходов устройства 0 тоже повторяются. Курите мануал, экспериментируйте. Устройство у вас на руках.

                                                          Кстати, чтобы "увидеть" все входы/выходы устройства в MME, нужно поставить галочку "Enable full Wave support for legacy (MME) software" в настройках драйвера(см. мануал). Иначе будут доступны только первые два канала.
                                                          Сообщение отредактировано: Prince -
                                                            Буду разбираться. Первым делом попробую записать звук с микрофона помощью Asio, поскольку компьютер с FireWire, управляющий Motu, вышел из строя, а других компьютеров с FireWire пока нет.
                                                            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                                            0 пользователей:


                                                            Рейтинг@Mail.ru
                                                            [ Script execution time: 0,0676 ]   [ 16 queries used ]   [ Generated: 19.03.24, 09:50 GMT ]