Аппараттық және бағдарламалық қамтамасыз етуді орнату

Windows жүйесінде төмен деңгейлі дыбысты бағдарламалау. iTunes қателері (себептері мен шешімдері)

USSD қызметтері абоненттік байланыс үшін бұрыннан қалыптасқан стандарттар болып табылады ұялы желілерқызмет көрсету серверлерімен. USSD хабарламаларын жіберу Telegram-дағы боттармен және олар кеңінен қолданылатын басқа қызметтермен байланысуды еске салады. Пәрменді жіберу арқылы пайдаланушы жауап алады - бұл белгілі бір деректер немесе сұралған қызметтің орындалуы туралы ақпарат болуы мүмкін.

Смартфондар мен телефондардың көптеген пайдаланушылары оны үнемі пайдалану кезінде USSD өзара әрекеттесу қызметінің не екенін елестете де алмайды. Балансты тексеру, өзгерту тарифтік жоспар, қызметтерді қосу - мұның барлығын операторлардың көпшілігімен жасауға болады ұялы байланыс USSD пәрмендері арқылы, мысалы: *100#, *135#, *105*5# және мыңдаған басқалар.

USSD қызметіне қол жеткізген кезде пайдаланушы келесі мазмұндағы қатеге тап болуы мүмкін: «Қосылым ақаулары немесе қате MMI коды». Мұндай жағдайда оның дұрыстығына көз жеткізіп, сұрауды қайта жіберуге тырысу керек. Деректерді қайта сұрасаңыз немесе пәрмен орындалмаса, қосылым ақаулықтарын жою қажет.

Android жүйесінде қате MMI коды туралы қатені көре аласыз және оның қайсысы маңызды емес ұялы байланыс операторыпайдаланылады: Beeline, MTS, Megafon немесе кез келген басқа. Төменде сипатталған әдістердің бірі қатеден құтылуға көмектеседі.

Android қатесіне байланысты жарамсыз MMI коды

Google Android-ті белсенді түрде жетілдіруде, бірақ бұл әртүрлі қателердің пайда болуынан құтқармайды, әсіресе смартфон әзірлеушілері өз қызметтерін, қабықтарын енгізгеннен және пайдаланушы үшінші тарап қолданбаларын орнатқаннан кейін. Нәтижесінде жүйедегі қателерге байланысты MMI қатесі пайда болуы мүмкін, мұндай жағдайда оны түзету оңай:

Бұл әрекеттер «желілерді қалпына келтіруге» мүмкіндік береді, өйткені олар Ұшақ режимінде өшірілген. Егер әдіс жұмыс істемесе, смартфонды қайта іске қосып көруге де болады.

Ұялы байланысқа байланысты MMI қосылымының ақаулары

Көбінесе «Қосылым ақаулары немесе дұрыс емес MMI коды» қатесі SIM картасы немесе ұялы байланыс мәселесіне байланысты пайда болады. Картаны смартфоннан шығарып, оның зақымдалуын, сондай-ақ контактілердегі кірдің бар-жоғын тексеріңіз, қажет болса оларды сүртіңіз. Сондай-ақ смартфонның өзіндегі контакт тақтасына назар аударыңыз және қажет болса, оны тазалаңыз. Содан кейін SIM картасын орнына орнатып, USSD сұрауын қайта жіберіп көріңіз.

SIM картасының контактілерін тазалау мәселені шешпесе, бекітілген желі түрін орнатуға болады. Мәселе нашар байланыс пен сигналдың тұрақты жоғалуына байланысты байқалуы мүмкін. ұялы байланыс. Мұндай жағдайда Android смартфонында келесіге бару керек:

«Параметрлер» - «Қосымша» - «Сымсыз желілер» - « Мобильді желілер» - «Желі түрі»

біреуін таңдаңыз қолжетімді түрлеріәдепкі емес желі. Мысалы, егер смартфон оператормен LTE арқылы байланысса, 2G немесе 3G қойыңыз.

Маңызды:Барлық желі түрлерінен USSD қызметіне кіріп көріңіз.

Төтенше жағдайларда ұялы телефон салонына хабарласу арқылы SIM картасын ауыстыру арқылы мәселені шешуге болады.

Android жүйесінде MMI қатесін түзетудің қосымша жолдары

Жоғарыда аталған әдістердің ешқайсысы көмектеспесе, смартфонды қате пайда болғанға дейінгі күйге қайтаруға болады. Мысалы, соңғы күндері құрылғыдағы опцияларда өзгерістер болса немесе қолданбалар орнатылған болса, барлық жаңа элементтер жойылып, параметрлер алдыңғы мәндерге орнатылуы керек.

Жарамсыз MMI код қатесін жоюға көмектесетін тағы бір әдіс ықтимал қате сұрауды жіберу болып табылады. «*100#» сұрауының орнына «*100#» пәрменін жіберу ұсынылады, яғни соңында үтір қойылады. Нөмірді теру кезінде смартфон пернетақтасына үтір қою үшін «жұлдызшаны» басып тұру керек.

Жоғарыда сипатталған барлық жолдармен түзету әрекетінен кейін қате жойылмаса, телефонды зауыттық параметрлерге қайтаруға немесе оны толығымен қалпына келтіруге болады. Бұл жағдайда кейбір деректер қайтарымсыз жоғалуы мүмкін екенін ескеріңіз.

Әрбір дерлік пайдаланушы iTunesБағдарламаның кез келген әрекетті орындаудан бас тартқанын және орын алған қатенің нөмірі бар қалқымалы терезені көрсеткенін кездестірді ...

Бұл iTunes қателері нені білдіреді және туындаған мәселелерді қалай шешуге болады - төменде бұл туралы толығырақ ...

1-қатенің себебі: iTunes нұсқасы тым ескі немесе микробағдарлама құрылғыға сәйкес келмейді.

1-қатенің шешімі: iTunes-ті соңғы нұсқаға жаңартыңыз, микробағдарламаны қайта жүктеп алыңыз (дұрыс құрылғыға арналған бағдарламалық құрал нұсқасын жүктеп алғаныңызға көз жеткізіңіз).

2-қатенің себебі:Жүктеп алынған микробағдарлама дұрыс оралмаған.

2-қатенің шешімі:Сірә, сіз реттелетін микробағдарламаны (түпнұсқа жинақты емес) орнатуға тырысып жатырсыз. Түпнұсқа микробағдарламаны жүктеп алыңыз немесе пайдаланыңыз үшінші тарап бағдарламалық құралыорнату үшін теңшелетін микробағдарлама.

3-қатенің себебі: Бұл қатепайдаланушы аяқталғаннан кейін көре алады iPhone микробағдарламасы, iPad, бұл құрылғының ішіндегі ақаулы модемді көрсетуі мүмкін.

3-қатенің шешімі:Іс жүзінде қате -1 қатесіне ұқсайды және егер соңғы қалпына келтіру режимімен түзетілсе, онда №3 қатені тек мына жағдайда шешуге болады. қызмет көрсету орталығымодемді ауыстыру арқылы.

5-қатенің себебі:Микробағдарлама ол тағайындалған режимде орнатылмаған. (DFU режимі/қалпына келтіру режимі).

5-қатенің шешімі:

6-қатенің себебі:Бүлінген Жүктеу/қалпына келтіру логотипіне байланысты микробағдарламаны орнату қатесі (арнаулы микробағдарламаны орнату кезінде орын алады). 6-қатенің шешімі:Түпнұсқа микробағдарламаны жүктеп алыңыз немесе әртүрлі режимдерде орнатып көріңіз (DFU режимі/қалпына келтіру режимі).
8-қатенің себебі: iTunes микробағдарламаны орната алмайды, себебі ол осы құрылғыға сәйкес келмейді (мысалы, сіз мына жерден микробағдарламаны орнатып жатырсыз iPod Touch iPhone-да).

8-қатенің шешімі:Құрылғы үлгісіне арналған түпнұсқа микробағдарламаны жүктеп алыңыз.

9 қатенің себебі:Ядролық дүрбелең. Критикалық ядро ​​қатесі. Көктің аналогы Windows экраны. Бұл орнату кезінде кабель арқылы деректерді беру үзілген кезде орын алуы мүмкін. Немесе нашар құрастырылған пайдаланушы микробағдарламасын пайдаланған кезде.

9-қатенің шешімі: iPhone/iPad/iPod Touch құрылғысындағы USB порты мен қосқышын тексеріңіз.

10 қатенің себебі:Микробағдарламада LLB (Low Level Bootloader) табылмады, орнату мүмкін емес.

10 қатенің шешімі:Арнаулы микробағдарламаны қайта жасаңыз немесе түпнұсқасын пайдаланыңыз.

11 қатенің себебі:Кейбір файлдар микробағдарламада табылмады.

11 қатенің шешімі:Арнаулы микробағдарламаны қайта жасаңыз немесе түпнұсқасын пайдаланыңыз.

13 қатенің себебі:Кабель немесе USB порты зақымдалған. Не бета iOS нұсқасы Windows астынан орнатуға тырысады.

13-қатенің шешімі: USB және кабельді ауыстырыңыз. BIOS жүйесінде USB 2.0 өшіру де көмектесуі мүмкін.

14 қатенің себебі:Бұзылған микробағдарлама файлы. Немесе кабель немесе USB портында мәселе.

14 қатенің шешімі:Антивирусты өшіріңіз. USB және кабельді ауыстырыңыз. Түпнұсқа микробағдарламаны қолданып көріңіз.

17 қатенің себебі:Түпнұсқа емес микробағдарламаны жаңарту әрекеті (таңдамалы).

17 қатенің шешімі:Бұл жағдайда құрылғыны DFU немесе Қалпына келтіру режимінен қалпына келтіру керек.

20 қатенің себебі:Құрылғы қалпына келтіру режимінде.

20 қатенің шешімі:Бұл жағдайда DFU режиміне өту керек.

26 қатенің себебі:Микробағдарламаны құрастыру кезіндегі қателер.

26 қатенің шешімі:Басқа микробағдарламаны жүктеп алыңыз.

27 және 29 қатенің себебі:Бағдарламаның ескі нұсқаларында орын алатын iTunes қатесі.

27 және 29 қателердің шешімі: iTunes-ті соңғы нұсқаға жаңартыңыз.

28 қатенің себебі:Құрылғыдағы 30 істікшелі/Lightning кабелінің немесе қосқыштың дұрыс жұмыс істемеуі.

28 қатенің шешімі:Қызмет көрсету орталығында жөндеңіз немесе 30 істікшелі/Lightning кабелін ауыстырыңыз.

34 қатенің себебі:Бағдарламалық құралды орнату үшін орын жеткіліксіз (қатты дискіде).

34 қатенің шешімі:Бағдарламалық құралды орнату үшін бос орын босатыңыз (iTunes орнатылған дискіде).

35 қатенің себебі:Қате қалта рұқсаттары (мәселе Mac OS жүйесінде орын алады).

35 қатенің шешімі: Terminal.app ішіне енгізіңіз:
sudo chmod -R 700 /Пайдаланушылар//Музыка/iTunes/iTunes Media
, пайдаланушы аты қайда.

39 қатенің себебі:Қате фотосуреттерді синхрондау кезінде орын алады.

39 қатенің шешімі:Бірнеше фотосуреттеріңіз бұл қатені тудырады, оларды синхрондау әдісінен шығару арқылы табуыңыз керек.

40, 306, 10054 қатесінің себебі:Серверге қосылу ақаулары.

40, 306, 10054 қатесінің шешімі:Вирусқа қарсы бағдарламалық жасақтаманы, проксиді өшіру, шолғыш кэшін тазалау қажет.

54 қатенің себебі:Сатып алулар құрылғыдан iTunes-ке тасымалданған кезде орын алады.

54 қатенің шешімі:Сіз бірнеше нәрсені сынап көре аласыз:

  • iTunes > дүкен > Осы компьютерді авторизациялау
  • C:\Documents and Settings\Барлық пайдаланушылар\Application Data\Apple Computer\iTunes\SC Info тармақтарын жою
  • Қалтаны жою арқылы музыканы синхрондаудан шығару (одан кейін қалтаны өз орнына қайтаруға болады)
414 қатенің себебі:Мазмұн 17 жастан асқан адамдарға арналған.

414 қатесінің шешімі:Мұндай саясаттармен келісіңіз немесе тіркелгі параметрлерінде туған күніңізді өзгертіңіз.

1004 қатесінің себебі: Apple серверіндегі уақытша ақаулар.

1004 қатесінің шешімі:Кейінірек жарқыл.

1008 қатесінің себебі: Apple идентификаторында жарамсыз таңбалар бар.

1008 қатесінің шешімі:Мұндай қатені болдырмау үшін Apple ID идентификаторында тек латын әріптері мен сандарын пайдалану керек.

1011, 1012 қатесінің себебі: iPhone/iPad модемінің ақауы.

1011, 1012 қатесінің шешімі:Аппараттық ақау, жөндеуді қажет етеді.

1013, 1014, 1015 қателерінің себебі:Микробағдарламаны тексеру кезінде, жаңартудан кейін сәйкессіздік қатесі орын алды.

1013, 1014, 1015 қатесінің шешімі:Сізге TinyUmbrella қызметтік бағдарламасын жүктеп алу керек. Ондағы Kick Device Out of Recovery функциясын пайдаланыңыз.

1050 қатесінің себебі: Apple белсендіру серверлері уақытша қолжетімсіз.

1050 қатесінің шешімі:Құрылғыны біраз уақыттан кейін іске қосыңыз.

1394 қатесінің себебі:Құрылғының операциялық жүйе файлдары бүлінген.

1394 қатесінің шешімі:Құрылғыны қалпына келтіріңіз немесе қате одан кейін пайда болса, қайтадан джейлбрейк жасап көріңіз.

14-қатенің себебі**:Кабельдік байланыс қатесі.

14-қатенің шешімі**:Микробағдарлама файлы бұзылған (басқасын жүктеп алу керек) немесе USB кабелі сынған.

1600, 1611 қатесінің себебі:Қате DFU режимі арқылы реттелетін микробағдарламаны орнату кезінде орын алады.

1600, 1611 қатесінің шешімі:Қалпына келтіру режимі арқылы орнатуға тырысыңыз.

1609 қатесінің себебі:

1609 қатесінің шешімі:

1619 қатесінің себебі: iTunes құрылғыңыз үшін тым ескі.

1619 қатесінің шешімі: iTunes-ті соңғы нұсқаға жаңартыңыз.

1644 қатесінің себебі:Микробағдарлама файлына қол жеткізілді үшінші тарап бағдарламалары.

1644 қатесінің шешімі:Компьютеріңізді қайта іске қосыңыз, микробағдарлама файлымен өзіңіз жұмыс істемесеңіз, антивирустарды өшіріңіз.

2001 қатесінің себебі:Қате Mac OS жүйесінде орын алады. Драйверлерге қатысты мәселе.

2001 қатесінің шешімі: MacOS жүйесін жаңартыңыз.

2002 қатесінің себебі: Үшінші тарап процестері iTunes-пен жұмыс істеу, осылайша кіруді блоктау.

2002 қатесінің шешімі:Егер бұл антивирус болмаса, компьютерді қайта іске қосыңыз.

2003 қатесінің себебі:Мәселелері USB порты.

2003 қатесінің шешімі:Басқа USB портын пайдаланыңыз.

2005 қатесінің себебі:Деректер кабеліне қатысты мәселелер.

2005 қатесінің шешімі:Басқа деректер кабелін пайдаланыңыз.

2502 және 2503 қателерінің себебі:Уақытша файлдарға шектеулі қол жеткізуге байланысты орнатушы қателері. Windows 8 жүйесінде табылды.

2502 және 2503 қателерінің шешімі:Мәселе C:\Windows\Temp қалтасына толық пайдаланушы рұқсатын қосу арқылы шешіледі. Бұл келесідей орындалады:

  • C:\Windows\Temp қалтасын тінтуірдің оң жақ түймешігімен басыңыз;
  • «Сипаттар - Қауіпсіздік - Өңдеу» жолымен өтіп, пайдаланушыны таңдаңыз;
  • жанындағы құсбелгіні қойыңыз Толық қолжетімділік», содан кейін өзгертулерді сақтау керек.
3000, 3004, 3999 қателерінің себебі: Apple серверіне кіру қатесі.

3000, 3004, 3999 қатесінің шешімі:Кейбір бағдарлама арқылы кіруге тыйым салынған. Мысалы, антивирус. Оларды өшіріңіз, қайта жүктеңіз.

3001, 5103, -42110 қатесінің себебі: iTunes хэш қателеріне байланысты бейнені жүктеп ала алмайды.

3001, 5103, -42110 қатесінің шешімі: iTunes қолданбасын жаңартыңыз
SC Info қалтасын жою:

  • Win7 - C:\Құжаттар мен параметрлер\Барлық пайдаланушылар\Қолданба деректері\Apple Computer\iTunes
  • Vista - C:\Program Data\Apple Computer\iTunes
  • Mac OS - /users/Shared/SC Info
3002, 3194 қатесінің себебі:Серверде сақталған хэштер жоқ. (Алма немесе Саурика).

3002, 3194 қатесінің шешімі:Жаңартыңыз тұрақты нұсқасымикробағдарлама. Жолды алып тастаңыз: 74.208.105.171 gs.apple.com сайтынан хосттар файлыішінде:

  • Win - C: \ Windows \ System32 \ драйверлер \ т.б. хосттар
  • Mac OS - /etc/hosts
Антивирустарды өшіріңіз, shift арқылы қалпына келтіріп көріңіз. Сондай-ақ, кері қайтару әрекеті кезінде қате орын алуы мүмкін алдыңғы нұсқасы iOS. Соңғы уақытта жаңарту мүмкін емес, iOS жүйесінің соңғы нұсқасына жаңартыңыз. Түсініктемелері бөлек мақалада көрсетілген күрделі қате -.
3123 қатесінің себебі: iTunes жүйесінде компьютерді авторизациялау мәселелері.
3195 қатесінің себебі: SHSH алу қатесі.

3195 қатесінің шешімі:Микробағдарламаны қайта жаңартып көріңіз.

5002 қатесінің себебі:Төлемнен бас тарту.

5002 қатесінің шешімі:Толтырылған банк картасының деректемелеріндегі қателерді іздеңіз.

8008, -50, -5000, -42023 қатесінің себебі:Микробағдарламаны жүктеп алу сеансының мерзімі аяқталды.

8008, -50, -5000, -42023 қатесінің шешімі: iTunes Media қалтасындағы Жүктеулер қалтасын жойыңыз.

8248 қатесінің себебі:Мәселе бағдарламаның жаңа нұсқаларымен үйлеспейтін iTunes плагиндері орнатылған болса орын алады.

8248 қатесінің шешімі: iTunes плагиндерін жойыңыз. Көбінесе мәселе Memonitor.exe процесінде болады, оны жабыңыз.

9006 қатесінің себебі:Микробағдарламаны жүктеп алуға бірдеңе кедергі жасауда.

9006 қатесінің шешімі:Микробағдарламаны басқа жерден жүктеп алыңыз немесе антивирустармен мәселені шешіңіз.

9807 қатесінің себебі:Қолтаңбалар мен сертификаттарды тексеруге бірдеңе кедергі жасайды.

9807 қатесінің шешімі:Мәселені антивирустармен шешіңіз.

11222 қатесінің себебі:Кіру бұғатталды.

11222 қатесінің шешімі:Брандмауэр мен антивирусты өшіріңіз.

13014, 13136, 13213 қателерінің себебі:Бір нәрсе iTunes-ке кедергі келтіруде.

13014, 13136, 13213 қатесінің шешімі: iTunes бағдарламасын жаңартыңыз, компьютерді қайта іске қосыңыз, антивирустық бағдарламалық құралды өшіріңіз. Мәселе жойылуы керек.

13001 қатесінің себебі:Медиа кітапхана файлы бүлінген.

13001 қатесінің шешімі: iTunes кітапханасының файлдарын жойыңыз.

20000 қатесінің себебі:Стандартты емес пайдалану кезінде қате пайда болуы мүмкін терезе тақырыптары.

20000 қатесінің шешімі:Әдепкі Windows тақырыбын орнатыңыз.

Қате себебі -39: iTunes музыканы жүктеп ала алмайды iTunes дүкені.

-39 қатесінің шешімі:

Қатенің себебі -50: itunes.apple.com серверіне қосылуда қиындықтар туындады.

-50 қатесінің шешімі: iTunes қолданбасын жаңартыңыз. Тіркелгіңізге қайта кіріңіз. Вирусқа қарсы бағдарламалық құралды өшіріңіз.

-3259 қатесінің себебі:Қосылу күту уақыты асып кетті.

-3259 қатесінің шешімі: iTunes қолданбасын жаңартыңыз. Интернет байланысы бар-жоғын тексеріңіз. Күтудегі жүктеулерді жою, жүйеден шығу/кіру көмектесуі мүмкін iTunes тіркелгісі. Егер ол көмектеспесе, компьютерді қайта іске қосып көріңіз.

Қате себебі -9800, -9812, -9815, -9814:Жүйе уақыты мен күні дұрыс орнатылмаған.

-9800, -9812, -9815, -9814 қатесінің шешімі:Жүйе параметрлерін дұрыс күн мен уақытқа орнатыңыз.

0xE8000022 қатесінің себебі:зақымдалған iOS файлдары.

0xE8000022 қатесінің шешімі:Микробағдарламаны қалпына келтіру.

0xE8000001, 0xE8000050 қатесінің себебі:

0xE8000001, 0xE8000050 қатесінің шешімі: Cydia-дан AppSync tweak-ті қайта орнатыңыз.

0xE8008001 қатесінің себебі:Мәселе джейлбрейктелген құрылғыға қолданбаларды орнату кезінде пайда болады.

0xE8008001 қатесінің шешімі: Cydia-дан AppSync tweak орнатыңыз.

0xE8000013 қатесінің себебі:Синхрондау қатесі.

0xE8000013 қатесінің шешімі:Құрылғыны қайта синхрондаңыз.

0xE8000065 қатесінің себебі:Қате операциялық жүйе.

0xE8000065 қатесінің шешімі:Компьютерді қайта іске қосыңыз, басқа USB портын пайдаланыңыз. Егер ол көмектеспесе, мәселе iTunes-те және микробағдарламаны қалпына келтіру қажет болады.

Егер сіз өзіңіздің сұрағыңызға жауап таба алмасаңыз немесе бірдеңе сізге көмектеспесе және төмендегі түсініктемеде қолайлы шешім болмаса, біздің сайтымыз арқылы сұрақ қойыңыз.

Бағдарламаның сұранысы бойынша дыбыстық ішкі жүйе хабарландырудың үш нұсқасын пайдалана алады: бағдарлама оқиғасының объектісін (оқиғасын) орнату, көрсетілген бағдарлама функциясын шақыру (кері шақыру) немесе көрсетілген терезеге немесе тапсырмаға (жіпке) хабарлама жіберу. Бірінші нұсқада бағдарлама дыбыстық ішкі жүйедегі қандай да бір оқиғаның өзі туралы ғана ақпаратты алады және өзі нақты не болғанын анықтауы керек; екінші және үшінші нұсқаларда оқиға коды және нақтылау ақпараты беріледі.

Дыбыстық ішкі жүйе бағдарламаға оқиға туралы хабарламалардың үш түрін жібереді: құрылғының сәтті ашылуы, құрылғының сәтті жабылуы және драйвер кезегінен келесі буферді өңдеудің аяқталуы. Қатаң айтқанда, тек соңғы оқиға толығымен асинхронды; алғашқы екеуі құрылғы сәтті ашылғаннан және жабылғаннан кейін бірден пайда болады және сәйкес интерфейс функцияларынан оралмас бұрын бағдарламаға беріледі.

Терезеге немесе тапсырмаға хабарлама жіберу арқылы хабарландыру

Дыбыс ішкі жүйесі көрсетілген терезеге немесе тапсырмаға жібереді Windows хабарламасы, оның коды болған оқиғаны көрсетеді, хабарлама параметрлерінде ашық дыбыстық құрылғының кілтін және оқиға туралы қосымша ақпаратты береді. Хабарлама функцияларды пайдаланып асинхронды түрде жіберіледі хабарлама жіберунемесе PostThreadMessageжәне басқа Windows хабарламаларымен бірге терезеден немесе тапсырма кезегінен таңдалады.

Хабарлама кодтары үшін тұрақты мәндердің атаулары келесідей болады MM_WxM_event, қайда x- құрылғы түрі (әріп I- енгізу құрылғысы үшін немесе О- шығару құрылғысы үшін) және оқиға- оқиға түрі:

Хабарламалар MM_WxM_OPENЖәне MM_WxM_CLOSEқұрылғылардың екі түріне де жіберіледі және MM_WIM_DATAЖәне MM_WOM_DONE- сәйкесінше тек енгізу немесе шығару құрылғылары.

Барлық хабарлар параметрінде wParamоқиғаны жасаған құрылғының кілтін өткізеді. Хабарламаларда ДЕРЕКТЕР/ДАЙЫНпараметр lParamқайтарылған аудио буфердің тақырып көрсеткішін өткізеді.

Дыбыстық ішкі жүйе хабарлары оларды өңдейтін функциядан қайтару мәнін талап етпейді.

Бағдарлама функциясын шақыру туралы хабарлама

Дыбыс ішкі жүйесі көрсетілгенді шақырады бағдарлама функциясы, өз дәлелдерінде оқиғаның коды мен параметрлерін беру. Шақырылған функция прототипі келесідей көрінеді:

жарамсыз КЕРІ ҚОҢЫРАУ CallbackProc(HWAVEx дескрипторы, UINT хабары, DWORD данасы, DWORD Param1, DWORD Param2);

Тұтқаны- дыбыс құрылғысының пернесі. Түрі бар HWAVEINнемесе HWAVEOUT; жалпы түріне рұқсат етіледі HWAVE.

хабар- оқиға коды. Оқиға коды тұрақтыларының атаулары терезе/тапсырма хабарламасының коды тұрақтыларымен бірдей, бірақ префикссіз MM_ (WIM_АШЫҚ, ЖАСАДЫжәне т.б.). Шын мәнінде, олар қазір анықталған MMSYSTEM.Hпрефиксті тұрақтыларға баламалы MM_дегенмен, болашақта мұны күтуге болмайды.

Мысал- құрылғыны ашу кезінде бағдарламамен көрсетілген 32-разрядты ақпараттық сөз. Дыбыстық ішкі жүйе бұл мәнді ешбір жолмен пайдаланбайды, тек оны әрбір функция шақыруында береді.

Парам1, Парам2- оқиға параметрлері. Оқиғалар үшін АШЫҚЖәне ЖАБЫҚмағынасы Парам1нөлге тең; оқиғаларға арналған ДЕРЕКТЕРЖәне ДАЙЫНбұл параметр қайтарылған дыбыс буферінің тақырып көрсеткішінен өтеді. Мағынасы Парам2ағымдағы іске асыруда әрқашан нөлге тең.

Функцияны үзу өңдеушісінің контекстінде шақыруға болады, сондықтан ол тек шектеулі жиынтықты қауіпсіз пайдалана алады Windows мүмкіндіктері: EnterCriticalSection, CriticalSection, midiOutLongMsg, midiOutShortMsg, OutputDebugString, хабарлама жіберу, PostThreadMessage, SetEvent, timeGetSystemTime, timeGetTime, timeKillEvent, timeSetEvent. Басқаларға қол созу жүйе функциялары, сондай-ақ аудио ішкі жүйенің функцияларын болжау мүмкін емес салдарларға әкелуі мүмкін.

Функцияны шақыру үшін дыбыстық ішкі жүйе жоғарырақ (ABOVE_NORMAL) басымдығы бар бөлек тапсырманы (ағынды) жасайды. «Бірінші келген бірінші қызмет» негізінде өңделетін хабарламаны жіберуден айырмашылығы, функция шақыруы процестегі басқа тапсырмалардың жұмысымен қатар жүреді, сондықтан функцияға және басқа тапсырмаларға қол жеткізуді синхрондауға қамқорлық жасау керек. ортақ айнымалылар және деректер құрылымдары.

Көмекші тапсырма бір рет жасалады және процесс аяқталғанша бар. Дыбыс ішкі жүйесі осы тапсырмадан процестің қызмет ету мерзімінде ашық болатын барлық құрылғылар үшін хабарландыру функцияларын шақырады.

Аудио құрылғыларға арналған интерфейс функцияларының жиынтығы

Болашақта біз ілесеміз әмбебап жүйеаттың мағыналық бөлігін ғана көрсететін және құрылғының түрі мен «бағдарын» қамтитын префиксті алып тастайтын атау функциялары. Мысалы, GetDevCaps функциясы туралы айтқанда, біз екі функцияны айтамыз - waveInGetDevCapsЖәне waveOutGetDevCaps, тек енгізу және шығару құрылғылары үшін олардың айырмашылықтарын түсіндіреді. Бұл оқырманнан нақты жағдайда толық функция атауын «құруды» талап етеді, бірақ сипаттаманы кеңірек және жүйелі етеді. Функция прототипінде префикс дәйектілікпен белгіленеді " ХХХ».

Көптеген функциялардың бірінші параметрі түрі бар ашық дыбыс құрылғысының кілті (тұтқасы) болып табылады HWAVEINнемесе HWAVEOUT; прототипте оның түрі белгіленген HWAVEx. Жоғарыда айтылғандай, аудио құрылғысының кілттері үйлесімді түрдегі айнымалы мәндерде сақталуы мүмкін HWAVE.

Интерфейс функцияларының тізімі

Құрылғылар санын сұрау

Құрылғы параметрлері мен мүмкіндіктерін сұрау

Құрылғыны ашу

Құрылғыны жабу

Аудио буферді дайындау (жадта бекіту).

Аудио буферді босату (бекіту).

AddBuffer/Write

Келесі буферді құрылғы драйверіне беру

Жазуды/ойнатуды тоқтату

Жазуды/ойнатуды бастаңыз

Ағынды қалпына келтіру

SetVolume / GetVolume

Ойнату дыбыс деңгейін орнату/сұрау

SetPitch/GetPitch

Ойнату кезінде дыбыс биіктігін орнату/сұрау

SetPlaybackRate / GetPlaybackRate

Ойнату жылдамдығын орнату/сұрау

Құрылғы нөмірін кілт бойынша сұраңыз

Қате туралы хабардың мәтінін код бойынша сұраңыз

Драйверге реттелетін хабарлама жіберу

Интерфейс функциялары арқылы қайтарылатын мәндер

Сирек ерекшеліктерді қоспағанда, барлық аудио интерфейс функциялары сияқты нәтиже береді MM НӘТИЖЕСІ, түріне тең UINT. Мағынасы MMSYSERR_NOERROR, ағымдағы іске асыруда нөлге тең, функцияның сәтті орындалуын білдіреді, кез келген басқа мән қатені көрсетеді. Қате коды тұрақтылары префикспен белгіленеді MMSYSERR_(жалпы мультимедиялық ішкі жүйе қатесі) және WAVERR_(Толқындық құрылғы драйверінің қатесі):

MMSYSERR_BADDEVICEID

Құрылғы нөмірі жарамсыз

MMSYSERR_NOTENABLED

Драйвер іске қосылмаған

MMSYSERR_ALLOCATED

Құрылғы басқа қолданбамен бос емес

MMSYSERR_INVALHANDLE

Жарамсыз жалпыға ортақ құрылғы кілті

MMSYSERR_NODRIVER

Жүргізуші жоқ

Жад жеткіліксіз

MMSYSERR_NOTSPORTED

Сұралған мүмкіндікке қолдау көрсетілмейді.

MMSYSERR_BADERRNUM

Қате коды ауқымнан тыс

MMSYSERR_INVALFLAG

Жарамсыз жалауша

MMSYSERR_INVALPARAM

Жарамсыз параметр

MMSYSERR_HANDLEBUSY

Басқа тапсырманың кілтіне операция орындалады

Анықталмаған қате

MMSYSERR_NODRIVERCB

Жүргізуші хабарламаны орындамады (кері қоңырау)

WAVERR_BADFORMAT

Жарамсыз немесе қолдау көрсетілмейтін ағын пішімі

WAVERR_STILLPLAYING

Жазылу немесе ойнату орындалуда

WAVERR_ДАЙЫНДЫҚ

Буфер дайын емес

Құрылғы тек синхронды режимде жұмыс істейді

GetDevCaps – сұрау параметрлері мен құрылғы мүмкіндіктері

MMRESULT xxxGetDevCaps(UINT DevId, LPWAVExCAPS Caps, UINT CapsSize);

Құрылғының параметрлері мен мүмкіндіктерін анықтауға қызмет етеді.

DevId- нөлден басталатын құрылғы нөмірі немесе бұрын ашылған құрылғының кілті немесе тұрақты WAVE_MAPPER. Соңғы жағдайда стандартты жүйе құрылғысының параметрлері қайтарылады.

Қақпақтар- WAVEINCAPS немесе WAVEOUTCAPS типті құрылымға көрсеткіш (арнайы түрлері бар LPWAVEINCAPSЖәне LPWAVEOUTCAPS).

CapsSize- байттағы құрылым өлшемі.

Сәтті аяқталғаннан кейін функция көрсеткіш арқылы берілген құрылымның өрістерін құрылғы параметрлерімен толтырады. Параметрлер сұралған болса толқын карташы,содан кейін қайта бағыттау қызметінің атауы құрылғы аты ретінде қайтарылады.

Ашық - құрылғының ашылуы

MMRESULT xxxOpen(LPHWAVEx ForHandle, UINT DevId, LPCWAVEFORMATEX пішімі, DWORD кері шақыру, DWORD данасы, DWORD OpenFlags);

ForHandle- айнымалы көрсеткіш түрі HWAVEINнемесе HWAVEOUT(көрсеткіш түрі - LPHWAVEINнемесе LPHWAVEOUT), оған операция сәтті аяқталғаннан кейін ашық құрылғының кілті жазылады.

DevId- нөлден басталатын құрылғы нөмірі немесе бұрын ашылған құрылғының кілті немесе мән WAVE_MAPPER. Соңғы жағдайда қайта құру қызметі берілген пішімді қолдайтын құрылғыны таңдайды және іздеу стандартты жүйелік құрылғыдан басталады.

Формат- қажетті ағын пішімін сипаттайтын WAVEFORMATEX типті құрылымға көрсеткіш.

қайта телефон соғу- сұралған операциялардың орындалуы туралы жүргізуші хабарламалары жіберілетін объект. Ол терезенің немесе оқиғаның кілті (тұтқасы), функция көрсеткіші немесе тапсырма идентификаторы (ағын идентификаторы) арқылы орнатылады.

Мысал- Хабарландыру функциясының шақыру параметрлерінде драйвер жіберетін 32 биттік ақпараттық сөз. Мысалы, дыбыстық құрылғылармен жалпы интерфейсті әзірлеу кезінде бұл құрылғы дескрипторына (құрылым немесе сынып нысаны) көрсеткіш болуы мүмкін.

Жалауларды ашу- құрылғының ашылу және жұмыс режимдерінің жалаулары:

Драйвер бағдарламаға әрекеттердің орындалғаны туралы хабарламайды. Бұл режим әдепкі бойынша пайдаланылады

Параметр қайта телефон соғуоқиға нысанының кілті (оқиға дескрипторы)

Параметр қайта телефон соғутапсырма идентификаторы (ағын идентификаторы)

Параметр қайта телефон соғутерезе тұтқасы болып табылады

КЕРІ ҚОҢЫРАУ_ФУНКЦИЯСЫ

Параметр қайта телефон соғуфункция көрсеткіші болып табылады

WAVE_FORMAT_QUERY

Сауалнама режимін пішімдеу. Драйвер тек көрсетілген құрылғыны сұралған пішім мен режимдермен ашуға болатынын тексереді және сәйкес нәтиже кодын қайтарады. Бұл режимде параметр ForHandleнөл болуы мүмкін ( NULL)

WAVE_FORMAT_DIRECT

Wave Mapper және ACM ағын пішімін түрлендіруге қатысудан ажыратады. Барлық байланыс тек драйвер мен қолданба арасында болады.

Құрылғыны синхронды режимде ашуға мүмкіндік береді. Толық синхронды құрылғылар үшін бұл жалауша көрсетілуі керек.

Wave Mapper және ACM қолданбаларына бағдарлама мен құрылғы драйвері арасындағы дыбыстық байланысқа кедергі келтіруге мүмкіндік береді

Құрылғы сәтті ашылған жағдайда (пішім сұрау жалаушасы орнатылмаған болса), дыбыстық ішкі жүйе көрсеткіш сілтеме жасаған айнымалыға оралады. ForHandle, ашық құрылғының кілті (тұтқасы).

Енгізу құрылғылары «тоқтату» режимінде ашылады, ал дыбыстық буферлерді драйверге беру автоматты түрде жазуды бастамайды - бұл үшін Бастау функциясын шақыру керек. Шығару құрылғылары бірден ашылады ойнату режимі, және бірінші дыбыс буфері драйверге берілгенде, оны ойнату автоматты түрде басталады.

Құрылғымен жұмыс істеуді аяқтаған кезде оны Жабу функциясымен жабу керек, in әйтпесеашық құрылғы ілулі болуы мүмкін. Файлдық жүйеден айырмашылығы, Windows жүйесіндегі дыбыстық ішкі жүйе қателерге әлдеқайда сезімтал және дыбыстық құрылғыларды бұзу үшін бағдарламаның аяқталуын әрдайым бақылай алмайды.

PrepareHeader – буфер мен оның тақырыбын драйверге тасымалдауға дайындау

MMRESULT xxxPrepareHeader(HWAVEx тұтқасы, LPWAVEHDR Hdr, UINT HSize);

hdr

HSөлшемі

Драйверге жіберу үшін дыбыс буферін дайындайды. Әдетте дайындық буферді процессордан тыс тасымалдау (DMA) кезінде дискіге мәжбүрлеп шығарылмайтындай етіп жадқа бекітуден тұрады. Дыбыс ішкі жүйесі дайындалған буфер тақырыбына жалаушаны орнатады WHDR_ДАЙЫНДАЛДЫ.

Функцияны шақырмас бұрын буфер тақырыбындағы өрістер толтырылуы керек lpData, dwBufferLength, dwFlags.

Бұрыннан дайындалған буфер үшін функция ештеңе жасамайды және сәтті болады.

Write/AddBuffer – дыбыс буферін драйверге беру

MMRESULT waveOutWrite(HWAVEx тұтқасы, LPWAVEHDR Hdr, UINT HSize); MMRESULT waveInAddBuffer(HWAVEx тұтқасы, LPWAVEHDR Hdr, UINT HSize);

hdr- аудио буфер тақырыбының көрсеткіші.

HSөлшемі- тақырып құрылымының өлшемі.

Дыбыс буферін ойнату үшін драйверге береді ( Жазыңыз) немесе жазу үшін ( AddBuffer). Буфер Дайындау функциясымен дайындалуы керек, әйтпесе драйвер оны қабылдаудан бас тартады.

Буферді алғаннан кейін драйвер өз тақырыбындағы WHDR_DONE жалауын қалпына келтіреді, тақырыпты ішкі кезекке қосады және WHDR_INQUEUE жалауын орнатады. Осыдан кейін асинхронды драйвер құрылғыдан үзілістердегі буферлік кезекті параллель өңдеуді жалғастыра отырып, басқаруды қолданбаға қайтарады; синхронды драйвер басқаруды буферді өңдегеннен кейін ғана қайтарады.

Келесі буферді өңдеуді аяқтағаннан кейін драйвер оны кезектен жояды, WHDR_INQUEUE жалауын қалпына келтіреді, содан кейін WHDR_DONE жалауын орнатады, содан кейін ол құрылғыны ашу кезінде сұралған болса, қолданба хабарландыруын орындайды. Содан кейін драйвер кезектегі келесі буферді өңдеуді жалғастырады.

Драйвер буферді өңдемейінше қолданбаға тақырып өрістерін өзгертуге рұқсат етілмейді.

Буфер тақырыбында тізімге байланыстыру үшін тек бір өріс болғандықтан, драйверге бұрыннан кезекке қойылған буферді қайта жіберу қатеге әкеледі.

Бастау/Қайта бастау - жазуды/ойнатуды бастау

MMRESULT waveInStart(HWAVEx тұтқасы); MMRESULT waveOutRestart(HWAVEx тұтқасы);Жазуды/ойнауды ағынның ағымдағы орнынан бастайды.

Белсенді ағынмен функция ештеңе істемейді және сәтті болады.

BreakLoop – ағымдағы циклды үзу

MMRESULT waveOutBreakLoop(HWAVEx тұтқасы);

Орнатылған болса, ойнату циклінің режимін қалпына келтіреді. Ағымдағы цикл соңына дейін ойнатылады, содан кейін ойнату бірінші цикл буферіне оралмай, сызықты түрде жалғасады. Әрқайсысы ойнатуды аяқтаған кезде цикл буферлерінің тобы бағдарламаға қайтарылады.

Жіп тоқтатылғанда немесе цикл болмаса, функция ештеңе істемейді және сәтті болады.

SetVolume – ойнату дыбыс деңгейін орнату

MMRESULT waveOutSetVolume(HWAVEx тұтқасы, DWORD көлемі);

Көлемі- сол және оң арналардағы дыбыс деңгейі. Төмен сөз сол арнаның дыбыс деңгейін, жоғары сөз оң жақтың дыбыс деңгейін белгілейді. 0xFFFF мәні максималды дыбыс деңгейін, 0 - ең азды орнатады. Арна дыбыс деңгейін тәуелсіз басқаруды қолдамайтын адаптерлер үшін төмен сөз жолдың екі арнасындағы дыбыс деңгейін көрсетеді.

Функция шығарылатын сигналдың шығыс деңгейін орнатады. Функция 65536 дыбыс деңгейіне рұқсат бергенімен, адаптерлердің көпшілігі 8-ден 256-ға дейінгі дыбыс деңгейін ғана қолдайды. Мұндай жағдайларда дыбыс қаттылығы мәнінің үш-сегіз ең маңызды сандары ғана маңызды, ал ең аз мәнді сандар еленбейді. Бұл интерпретация тек реттеу қадамдарының дәрежесін өзгерте отырып, бірдей дыбыс масштабын пайдалануға мүмкіндік береді.

Функцияға тек сипаттарында орнатылған WAVECAPS_VOLUME жалаушасы бар адаптерлер ғана қолдау көрсетеді. Арналар бойынша бөлек реттеуге WAVECAPC_LRVOLUME жалаушасы бар болса ғана қолдау көрсетіледі.

SetPitch / SetPlaybackRate – дыбыс биіктігін / ойнату жылдамдығын орнату

MMRESULT waveOutSetPitch(HWAVEx тұтқасы, DWORD мультипликаторы); MMRESULT waveOutSetPlaybackRate(HWAVEx тұтқасы, DWORD мультипликаторы); көбейткіш- қадам/ойнату жылдамдығы үшін мультипликатор. Жоғары сөз көбейткіштің бүтін бөлігін, төменгі сөз бөлшек бөлігін көрсетеді. Егер көбейткіш мән болса fтүрі қос, содан кейін оны түрге түрлендіріңіз DWORDформула бойынша мүмкін болады:

Көбейткіш = (DWORD)(f * 0x10000)

Функциялар ағын ойнатылатын үлгі жылдамдығын өзгертпестен ағынның биіктігін немесе ойнату жылдамдығын өзгертеді. Көбейткіш мәні оң болуы керек. Әдепкі бойынша, мультипликатор 1,0 мәніне орнатылады, бұл ағынның табиғи биіктігі мен жылдамдығында ойнайтынын білдіреді.

Дыбыс деңгейін өзгерткен кезде ағындағы барлық дыбыстар жоғары немесе төмен болады, бірақ әрбір дыбыстың ұзақтығы мен жалпы ойнату уақыты сақталады. Ойнату жылдамдығын өзгерту магнитофондағы таспаның жылдамдығын өзгертуге ұқсас: барлық дыбыстар жоғары немесе төмен болады, ал жалпы ойнату уақыты сәйкесінше азаяды немесе артады.

Барлық дыбыс адаптерлері осы жұп функцияларды қолдамайды; әдетте, ол мамандандырылған сигнал процессорларында (DSP) жүзеге асырылады. Техникалық тұрғыдан жылдамдықты өзгерту ең оңай орындалады, ол үшін қол жетімді үлгілер арасындағы нүктелерде аралық үлгілер DAC тізбегіне жіберілетін бір-бірінің артынан жиі немесе азырақ интерполяция арқылы есептеледі. Дыбыс биіктігін өзгерту әлдеқайда күрделі есептеулерді талап етеді: ағынның фрагменттері дыбыс спектрін құра отырып, Фурье қатарына ыдырайды, содан кейін спектр жоғары немесе төмен жиіліктерге ауысады, содан кейін жаңа дыбыс ағынының фрагменті қайтадан қалыптасады. спектрін өзгертті.

Қадамды және/немесе жылдамдықты өзгертуге қолдау көрсететін адаптерлер үшін GetDevCaps функциясы сәйкесінше WAVECAPS_PITCH және WAVECAPS_PLAYBACKRATE жалауларын орнатады.

GetID - кілт бойынша құрылғы нөмірін сұрау

MMRESULT xxxGetID(HWAVEx тұтқасы, LPUINT ForID);

ID үшін- айнымалы көрсеткіш түрі UINT, онда құрылғы нөмірі бар.

Функция құрылғының нөмірін анықтайды, оны ашқан кезде жүйе көрсетілген кілтті қайтарады. Ашу кезінде қайта бағыттау қызметі пайдаланылған жағдайда (мән WAVE_MAPPERсанның немесе WAVE_MAPPED жалауының орнына) функция мәнді қайтарады WAVE_MAPPER.

Майкрософт құжаттамасында бұл мүмкіндік тек үйлесімділік үшін ғана қолдау көрсетілетінін және нөмірді алу үшін кілтті қажетті түрге шығару жеткілікті екенін мәлімдейді, бірақ бұл мүлде олай емес. Жалпы құрылғы кілті аудио ішкі жүйеге тиесілі дескриптордың мекенжайы болып табылады және Win32-де ортақ жад аймағында орналасқан. Құрылғы нөмірін перне арқылы алудың жалғыз жолы - функцияны пайдалану Get ID.

GetErrorText - код бойынша мәтіндік қате туралы хабарды сұрау

MMRESULT xxxGetErrorText(MMRESULT қатесі, LPSTR мәтіні, UINT TextSize);

қате- интерфейс функцияларының бірі қайтаратын қате коды;

Мәтін- мәтіндік буферге көрсеткіш (типті массив таңба);

мәтін өлшемі- байттағы мәтін буферінің өлшемі.

Функция көрсетілген буферге берілген кодпен қатенің мәтіндік сипаттамасын енгізеді. Жазбаша мәтін нөлдік байтпен аяқталады. Егер буфер жеткілікті үлкен болмаса, онда мәтіннің соңы қысқартылады; бәрібір буферге нөлдік байт жазылады. Кез келген қате туралы хабарды сақтай алатын буфер өлшемі тұрақты мәнмен анықталады MAXERRORLENGTH.

Қате туралы хабарлар құрылғы түрі бойынша бөлінбейді, сондықтан мүмкін болатын функциялардың кез келгені қатенің мәтінін сұрау үшін жеткілікті, мысалы waveOutGetErrorText.

Хабарлама – жүргізушіге хабарлама жіберу

MMRESULT xxxMessage(HWAVEx тұтқасы, UINT хабары, DWORD P1, DWORD P2);

хабар- жіберілген хабарламаның коды.

P1, P2- хабарлама параметрлері.

Функция тікелей драйверге хабарлама жіберу үшін пайдаланылады. GetID және GetErrorText-тен басқа барлық интерфейс функциялары дыбыстық ішкі жүйе арқылы драйверге берілетін хабарларға аударылады; әрбір хабардың екі типті параметрі болады DWORD, интерфейс функциясының параметрлері түрлендірілетін. Құрылғы драйвері стандартты емес хабарларды қолдаса, оларды функциялар арқылы жіберуге болады хабар. Қайтару мәнін драйвердің өзі анықтайды.

MME аудиожүйесінің кемшіліктері

Windows 95/98 жүйесінде MME ішкі жүйесі және оның драйверлері Windows 3.x жүйесіндегідей 16 разрядты болып қалды. Осыған байланысты әрбір қоңырау дыбыс драйвері Win32 қосымшасынан орындау режимінің екі есе өзгеруі (thunking) жүреді, бұл, өкінішке орай, Celeron-366 процессорларында миллисекундтарға жететін қосымша шығындарға әкеледі. Сонымен қатар, көптеген драйверлер компьютер мен адаптер арасында алмасу жүзеге асырылатын сақиналы буферді жаңарту жиілігін секундына бірнеше ондаған ретпен шектейді, бұл дыбысты беру процесінде кідіріс (кідіріс) тудырады. ISA адаптерлеріне арналған драйверлер үшін бұл кешігу ондаған миллисекундтарға жетуі мүмкін; PCI адаптерлеріне арналған драйверлер үшін әдетте бірнеше миллисекундтармен шектеледі.

Дыбысты жылдамырақ шығару үшін, әсіресе оның нақты уақыттағы модификациясымен Microsoft көбірек әзірледі жаңа интерфейс - DirectSound. Бұл интерфейс адаптердің аппараттық құралын «әкелуге» арналған қолданбалы бағдарламажәне кез келген адаптер үшін максималды кідірістерді миллисекунд бірліктеріне дейін азайта отырып, жүйенің сақина буферіне дыбысты тікелей дерлік жазуға мүмкіндік береді. -мен жұмыс істегенде DirectSoundбағдарлама 32-биттік жүйе адаптері драйверіне (VxD) 32- және 16-биттік орындау режимдері арасында ауысуды айналып өтіп, тікелей қол жеткізеді.

Тиімді жұмыс істеу үшін интерфейс DirectSoundадаптердің жүйелік драйвері қолдау көрсетуі керек. Драйверлері қолдамайтын құрылғылар үшін DirectSound, Windows қалыпты MME драйверінің "жоғарғы жағындағы" жаңа интерфейсті эмуляциялайды, бірақ бұл жағдайда эмуляцияның үстеме шығындарына байланысты барлық кешігулер тіпті артады.

Өкінішке орай, Microsoft кеңейтім спецификациясын әзірледі DirectSoundдыбыс VxD үшін тек дыбысты жаңғырту тұрғысынан, ең алдымен ойын өндірушілерінің мүдделеріне сай әрекет етеді. Аудио жазба арқылы DirectSoundәлі де MME арқылы эмуляция арқылы жүргізіледі.

Айта кету керек, Windows 3.x және 95/98 дыбыстық ішкі жүйесі, сонымен қатар ішкі жүйе қашықтан қол жеткізужеліге (RAS), қателік төзімділігі төмен. Бұл көбінесе дыбыстық құрылғыларды ашатын және олармен жұмыс істейтін бағдарлама істен шыққан кезде жүйенің қолданылып жатқан құрылғыларды дұрыс жаппауынан (тазартудан) көрінеді. Нәтижесінде, кейбір жағдайларда мұндай апаттан кейін қайта жүктеу қажет болуы мүмкін және оған дейін құлыптан босатылған құрылғылар басқа қолданбаларға қолжетімсіз болады. Бұған қоса, 16 биттік ішкі жүйелер 32 биттік ішкі жүйелерге қарағанда қателіктерді әлдеқайда аз қорғайды, сондықтан дыбыстық бағдарламалардағы елеулі қателер бүкіл Windows жүйесін бұзып, қатып қалуы мүмкін.

Windows NT жүйесінде барлық ішкі жүйелер 32-биттік болып табылады, сондықтан сипатталған мәселелер онда болмайды, бірақ дыбысты енгізу және шығару кідірістері әлі де арнайы адаптер драйвері орнатқан сақина буферінің жаңарту жылдамдығымен анықталады.

MME интерфейсін пайдаланатын бағдарламаның мысалы

Иллюстрация ретінде нақты уақытта кешіктіру әсерін жүзеге асыратын бағдарлама берілген. Әсердің мәні бастапқы дыбыстық сигналды оның көшірмесін уақытында аздаған (бірліктер-жүздеген миллисекундтар) кешіктіріп қосу болып табылады. 15-20 мс дейінгі кідіріс дыбыс көзінің «ұсақталуы» ретінде құлаққа қабылданады; хор әсерін жасау осы принципке негізделген. 20-50 мс кешігу реверберация (көлемді сезіну) ретінде қабылданады, ал үлкен кідіріс мәндері қалыпты жаңғырық ретінде қабылданады.

Сипатталған әсерлердің сенімді дыбысын алу үшін әдетте дыбыстың бірнеше кезекті кідірістері жасалады, оларда бастапқы сигналдың көшірмесі бірте-бірте әлсірейді. Жоғарыдағы бағдарламада қарапайымдылық үшін тек бір кідіріс жасалады, ал сигнал көшірмесі әлсіретілмейді.

Бағдарлама C++ тілінде жүзеге асырылады. Шындығында, ол тек C++ тілінің жалпы кеңейтімдерін пайдаланады (цикл тақырыптарындағы айнымалы мәндерді анықтау, құрылым атауларын тип атаулары ретінде пайдалану және т.б.), әйтпесе ол әдеттегі ANSI C тілін пайдаланды деп болжауға болады.

Бағдарлама MS VC++ 4.2 ортасында жасалған. Тек стандартты түрде қолданылады Windows интерфейсі, әзірлеу ортасынан ешқандай кеңейтімсіз.

Бағдарлама нақты уақытта жұмыс істейді, бір уақытта екі дыбыстық құрылғыны ашады - кіріс және шығыс. Енгізу құрылғысынан келетін толтырылған дыбыс буферлері олардың уақыт бойынша ауыстырылған көшірмелерімен қорытындыланады, содан кейін олар шығару құрылғысына жіберіледі; кіріс және шығыс құрылғысы арасында біреуін айналдырады ортақ жиындыбыс буферлері.

Буферлердің айналымын басқару үшін максималды басымдық өсімі тағайындалған жеке жұмыс ағыны жасалады. Дыбыс құрылғылары жұмыс тапсырмасы туралы хабарландыру режимінде ашылады.

Буферлеуге байланысты бағдарламаның дыбыс шығаруы түпнұсқадан біршама артта қалады. Буферлеудің жалпы уақыты мен дыбыс буферлерінің саны бағдарлама параметрлері бөлімінде орнатылады. Үздіксіз аудио тасымалдау үшін буферлердің саны екіден кем болмауы керек; үш немесе төрт буферді пайдаланған кезде қолайлы тұрақтылыққа қол жеткізіледі.

Бағдарлама ADC және DAC бір уақытта жұмыс істеуге мүмкіндік беретін толық дуплексті аудио адаптерді қажет етеді. Қазіргі заманғы адаптерлердің көпшілігі осы шартты қанағаттандырады.

Мысал

ComputerPress 6"2000


Кейде MME.browser қателері және т.б жүйелік қателер BROWSER Windows тізіліміндегі мәселелерге қатысты болуы мүмкін. Бірнеше бағдарламалар MME.browser файлын ортақ пайдалана алады, бірақ бұл бағдарламалар жойылғанда немесе өзгертілгенде, кейде "жетім" (жарамсыз) BROWSER тізілімінің жазбалары артта қалады.

Негізінде, бұл файлдың нақты жолы өзгертілген болса да, оның дұрыс емес бұрынғы орны әлі де Windows тізілімінде жазылғанын білдіреді. Windows осы қате файл сілтемелерін (компьютердегі файл орындары) іздеген кезде MME.browser қателері пайда болуы мүмкін. Сонымен қатар, зиянды бағдарламаның инфекциясы байланысты тізілім жазбаларын зақымдауы мүмкін Microsoft Windows. Сондықтан бұл жарамсыз BROWSER тізілім жазбалары мәселенің түбірін түзету үшін жөнделуі керек.

Жарамсыз MME.browser кілттерін жою үшін Windows тізілімін қолмен өңдеу, егер сіз компьютерлік қызмет көрсету кәсіпқойы болмасаңыз, ұсынылмайды. Тізілімді өңдеу кезінде жіберілген қателер сіздің компьютеріңізді жарамсыз етіп, операциялық жүйеңізге түзетілмейтін зақым келтіруі мүмкін. Шындығында, тіпті дұрыс емес жерде қойылған бір үтір компьютердің жүктелуіне жол бермейді!

Осы қауіпке байланысты MME.browser-ке қатысты тізбе ақаулықтарын сканерлеу және жөндеу үшін WinThruster (Microsoft Gold Certified Partner әзірлеген) сияқты сенімді тізілім тазалау құралын пайдалануды ұсынамыз. Тізілім тазалау құралын пайдалану жарамсыз тізілім жазбаларын, жетіспейтін файл сілтемелерін (мысалы, MME.browser қатесін тудыратын) және тізілімдегі бұзылған сілтемелерді табу процесін автоматтандырады. Әрбір сканерлеу алдында автоматты түрде жасалған сақтық көшірме, ол бір рет басу арқылы кез келген өзгерістерді болдырмауға мүмкіндік береді және сізді компьютердің ықтимал зақымдануынан қорғайды. Ең жақсы бөлігі - тізілім қателерін түзету жүйенің жылдамдығы мен өнімділігін айтарлықтай жақсартады.


Ескерту:Жетілдірілген компьютер пайдаланушысы болмасаңыз, Windows тізілімін қолмен өңдеуді ұсынбаймыз. Тіркеу редакторын дұрыс пайдаланбау күрделі мәселелерге әкелуі мүмкін және қажет етеді Windows жүйесін қайта орнату. Біз тізілім өңдегішін дұрыс пайдаланбау нәтижесінде туындаған мәселелердің шешілетініне кепілдік бермейміз. Тіркеу өңдегішін өз тәуекеліңізбен пайдаланасыз.

Қолмен қалпына келтірмес бұрын Windows тізілімі, сізге MME.browser (мысалы, Microsoft Windows) қатысты тізілімнің бір бөлігін экспорттау арқылы сақтық көшірме жасау қажет:

  1. Түймені басыңыз Баста.
  2. енгізу" команда" в іздеу жолағы... ӘЛІ БАСМАҢЫЗ ЕНГІЗУ!
  3. Кілттерді ұстау CTRL-Shiftпернетақтада түймесін басыңыз ЕНГІЗУ.
  4. Қол жеткізу диалогы көрсетіледі.
  5. басыңыз Иә.
  6. Қара жәшік жыпылықтаған курсормен ашылады.
  7. енгізу" regedit« және түймесін басыңыз ЕНГІЗУ.
  8. Тіркеу өңдегішінде сақтық көшірмесін жасағыңыз келетін MME.browser-қа қатысты кілтті таңдаңыз (мысалы, Microsoft Windows).
  9. Мәзірде Файлтаңдаңыз Экспорттау.
  10. Тізімге енгізілген Сақтау Microsoft Windows кілтінің сақтық көшірмесін сақтағыңыз келетін қалтаны таңдаңыз.
  11. Алаңда Файл атауысақтық көшірме файлының атын енгізіңіз, мысалы, «Microsoft Windows сақтық көшірмесікөшірме».
  12. Өрісті тексеріңіз Экспорт ауқымымән таңдалды Таңдалған филиал.
  13. басыңыз Сақтау.
  14. Файл сақталады reg кеңейтімімен.
  15. Енді сізде MME.browser-қа қатысты тізілім жазбасының сақтық көшірмесі бар.

Тізілімді қолмен өңдеудің келесі қадамдары бұл мақалада қарастырылмайды, себебі олар сіздің жүйеңізді зақымдауы мүмкін. Тізілімді қолмен өңдеу туралы қосымша ақпарат алғыңыз келсе, төмендегі сілтемелерді қараңыз.

Adobe бағдарламасындағы компиляция қатесі Премьера Proпайдаланушылар арасында ең танымал бірі болып табылады. Ол жасалған жобаны компьютерге экспорттауға әрекет жасағанда көрсетіледі. Процесс бірден немесе кейін үзілуі мүмкін белгілі бір уақыт. Не болғанын көрейік.

Adobe Premiere Pro бағдарламасында компиляция қатесі неге пайда болады?

Кодек қатесі

Көбінесе бұл қате экспорт пішімі мен жүйеде орнатылған кодек бумасы арасындағы сәйкессіздікке байланысты орын алады. Алдымен бейнені басқа форматта сақтап көріңіз. Олай болмаса, алдыңғы кодек бумасын жойып, жаңасын орнатыңыз. Мысалға Жылдам уақыт, бұл Adobe өнім желісіндегі өнімдермен жақсы үйлеседі.

барамыз «Басқару тақтасы-Бағдарламаларды қосу/жою», қажет емес кодектер бумасын тауып, оны стандартты жолмен жойыңыз.

Содан кейін біз ресми сайтқа барамыз Жылдам уақыт, орнату файлын жүктеп алып, іске қосыңыз. Орнату аяқталғаннан кейін компьютерді қайта жүктеп, Adobe Premiere Pro бағдарламасын іске қосыңыз.

Дискідегі бос орын жеткіліксіз

Бұл көбінесе бейнелерді белгілі бір пішімдерге сақтау кезінде орын алады. Нәтижесінде файл өте үлкен болады және жай дискіге сыймайды. Файл өлшемі таңдалған бөлімдегі бос орынға сәйкес келетінін анықтаңыз. Біз менің компьютеріме кіріп қараймыз. Егер орын жеткіліксіз болса, біз дискіден артық бөлігін жоямыз немесе оны басқа форматта экспорттаймыз.

Немесе жобаны басқа жерге экспорттаймыз.

Айтпақшы, бұл әдісті дискілік кеңістік жеткілікті болса да қолдануға болады. Кейде бұл мәселені шешуге көмектеседі.

Жад қасиеттерін өзгерту

Кейде бұл қате жадтың жеткіліксіздігінен туындауы мүмкін. Adobe Premiere Pro оның мәнін сәл жоғарылату мүмкіндігіне ие, бірақ сіз жалпы жад көлемінен бастап, басқа қолданбалар үшін белгілі бір маржа қалдыруыңыз керек.

барамыз "Өңдеу-Параметрлер-Жад-ЖЖҚ қолжетімді"және көрме қалаған мәнПремьераға арналған.

Бұл жерде файлдарды сақтауға рұқсаттар жоқ

Шектеуді жою үшін жүйе әкімшісіне хабарласу керек.

Файл атауы бірегей емес

Файлды компьютерге экспорттау кезінде оның бірегей атауы болуы керек. Әйтпесе, ол қайта жазылмайды, бірақ жай ғана қате береді, соның ішінде компиляция. Бұл пайдаланушы бір жобаны қайта-қайта сақтаған кезде жиі орын алады.

Көз және Шығыс бөлімдеріндегі сырғытпалар

Файлды экспорттау кезінде оның сол жақ бөлігінде бейненің ұзындығын реттейтін арнайы жүгірткілер бар. Егер олар толық ұзындығына орнатылмаса және экспорттау кезінде қате орын алса, оларды бастапқы мәндеріне орнатыңыз.

Файлды бөліктерге бөліп сақтау арқылы мәселені шешу

Көбінесе бұл мәселе туындаған кезде пайдаланушылар бейне файлды бөліктерге бөліп сақтайды. Алдымен құралды пайдаланып бірнеше бөлікке кесу керек «Пышақ».

Содан кейін құралды қолданыңыз «Оқшаулау»бірінші үзіндіні белгілеп, оны экспорттаңыз. Және де барлық бөліктермен. Осыдан кейін бейненің бөліктері қайтадан жүктеледі Adobe бағдарламасы Premiere Pro және қосылыңыз. Көбінесе мәселе жоғалады.

Белгісіз қателер

Егер бәрі орындалмаса, қолдау қызметіне хабарласу керек. Adobe Premiere Pro-да қателер жиі орын алатындықтан, олардың себебі бірқатар белгісіздерге жатады. Қарапайым қолданушының оларды шешу әрқашан мүмкін емес.

Мақала ұнады ма? Достарыңызбен бөлісіңіз!
Бұл мақала пайдалы болды ма?
Иә
Жоқ
Пікіріңізге рахмет!
Бірдеңе дұрыс болмады және сіздің дауысыңыз есептелмеді.
рахмет. Сіздің хабарламаңыз жіберілді
Мәтіннен қате таптыңыз ба?
Оны таңдаңыз, басыңыз Ctrl+Enterжәне біз оны түзетеміз!