{"id":122100,"date":"2025-02-26T14:22:18","date_gmt":"2025-02-26T12:22:19","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/miniaudio-0-11-22"},"modified":"2025-02-26T14:22:18","modified_gmt":"2025-02-26T12:22:19","slug":"miniaudio-0-11-22","status":"publish","type":"post","link":"https:\/\/prohoster.info\/lv\/blog\/news\/miniaudio-0-11-22","title":{"rendered":"miniaudio 0.11.22","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"miniaudio 0.11.22\" src=\"\/wp-content\/uploads\/2025\/02\/535745f2d2bcd17a4611a5a5eb0fc4db.jpg\" style=\"display:block;margin: 0 auto;\" \/>                              <noindex>      <\/p>\n<p>2023. gada 24. febru\u0101r\u012b, p\u0113c vair\u0101k nek\u0101 gada izstr\u0101des, tika izlaista 0.11.22 daudzplatformu audio ievades un izvades bibliot\u0113ka. <a rel=\"nofollow\" href=\"https:\/\/miniaud.io\">miniaudio<\/a>, kas uzrakst\u012bta C valod\u0101 un tiek izplat\u012bta k\u0101 publiskais \u012bpa\u0161ums.<br \/><\/noindex> miniaudio darbojas vis\u0101s galvenaj\u0101s darbvirsmas un mobilaj\u0101s platform\u0101s, tostarp Windows, macOS, Linux, BSD, iOS, Android un Web (ar Emscripten), bez tre\u0161o pu\u0161u atkar\u012bb\u0101m.<br \/> Bibliot\u0113kai ir vienk\u0101r\u0161s, elast\u012bgs un modul\u0101rs API ar ieb\u016bv\u0113tiem dekoderiem (WAV, MP3 un FLAC), papla\u0161in\u0101tu miks\u0113\u0161anu un efektu apstr\u0101di (tostarp 3D), resursu p\u0101rvald\u012bbu, filtriem, datu p\u0101rv\u0113r\u0161anu un daudz ko citu.<\/p>\n<p>Galven\u0101s izmai\u0146as:<\/p>\n<ul>\n<li>S\u0101kot ar versiju 0.12, miniaudio tiks p\u0101riet uz atsevi\u0161\u0137u .c un .h failu p\u0101ri, atteicoties no viena galvenes faila. Sagatavo\u0161an\u0101s nol\u016bkos repozitorij\u0101 tika pievienots fails miniaudio.c. \u0160obr\u012bd tas ir vienk\u0101r\u0161i apvalks ap miniaudio.h un MINIAUDIO_IMPLEMENTATION. miniaudio.h nekas nav main\u012bjies, ta\u010du, kad izn\u0101ks versija 0.12, b\u016bs j\u0101izmanto miniaudio.c kompil\u0101cijai. Ieteicams s\u0101kt p\u0101reju no MINIAUDIO_IMPLEMENTATION izmanto\u0161anas uz miniaudio.c izmanto\u0161anu. Ja v\u0113laties turpin\u0101t veidot savu projektu k\u0101 vienotu kompil\u0101cijas vien\u012bbu, varat izmantot #include \"miniaudio.c\". \u0160is veids tiks atbalst\u012bts versij\u0101 0.12 un turpm\u0101k.<\/li>\n<li>Faili miniaudio_libvorbis.h un miniaudio_libopus.h extras direktorij\u0101 ir atz\u012bti par novecoju\u0161iem. Tagad tie ir sadal\u012bti atsevi\u0161\u0137os .c un .h failos extras\/decoders direktorij\u0101. Vecie faili joproj\u0101m past\u0101v sader\u012bbas labad, ta\u010du jums b\u016bs j\u0101p\u0101riet uz jaunaj\u0101m versij\u0101m. P\u0101reja ir j\u0101veic bez sare\u017e\u0123\u012bjumiem.<\/li>\n<li>Pievienotas opcijas MA_SOUND_FLAG_LOOPING un MA_RESOURCE_MANAGER_DATA_SOURCE_FLAG_LOOPING. Tos var izmantot, lai inicializ\u0113tu ska\u0146as un p\u0101rvald\u012btos resursus datu avotiem, kas p\u0113c noklus\u0113juma atk\u0101rtojas. Tas ir ieteicamais veids, k\u0101 iesp\u0113jot atk\u0101rto\u0161anos pl\u016bsm\u0101m. Opcijas isLooping konfigur\u0101cij\u0101 ma_sound_config un ma_resource_manager_data_source_config ir atz\u012btas par novecoju\u0161\u0101m. Ja t\u0101s izmantojat, jums vajadz\u0113tu p\u0101riet uz jaunaj\u0101m opcij\u0101m, cit\u0101di, atjauninot uz turpm\u0101kaj\u0101m versij\u0101m, sa\u0146emsiet kompilatora k\u013c\u016bdas.<\/li>\n<li>ma_rb_commit_read(), ma_rb_commit_write(), ma_pcm_rb_commit_read() un ma_pcm_rb_commit_write() vairs neatgrie\u017e MA_AT_END. \u0160\u012bs izmai\u0146as iemesls ir tas, ka ri\u0146\u0137a bufer\u012b nav j\u0113dziena \"gala\", kas padar\u012bja rezult\u0101ta kodu neskaidru. Turkl\u0101t \u0161\u012bs funkcijas var atgriezt nevis MA_SUCCESS, bet kaut ko citu, pat ja darb\u012bba ir pabeigta veiksm\u012bgi, kas rad\u012bja papildu confusion. Pareizais veids, k\u0101 p\u0101rbaud\u012bt, vai ri\u0146\u0137a bufer\u012b v\u0113l ir vieta, ir paskat\u012bties uz kadru skait\u012bt\u0101ju, ko atgrie\u017e funkcijas rb_acquire_read\/write().<\/li>\n<li>Datu avota ma_pcm_rb realiz\u0101cija ir main\u012bta t\u0101, lai izejas dati tiktu aizpild\u012bti ar klusumu, ja gredzenveida bufer\u012b nav pietiekami datu, lai izpild\u012btu piepras\u012bjumu. Tas noz\u012bm\u0113, ka ma_data_source_read_pcm_frames() ma_pcm_rb vairs nedr\u012bkst atgriezt maz\u0101k kadrus, nek\u0101 piepras\u012bj\u0101t, un l\u012bdz ar to nekad neatgriez\u012bs MA_AT_END, kas nav j\u0113gas, jo gredzenveida buferim nav j\u0113dziena par beig\u0101m. \u0160\u012b izmai\u0146as b\u016btiski atvieglos gredzenveida bufera izmanto\u0161anu k\u0101 datu avotu ma_sound.<\/li>\n<li>Funkcij\u0101 ma_calculate_buffer_size_in_milliseconds_from_frames() ir veikta neliela izmai\u0146a, kuras rezult\u0101t\u0101 t\u0101 atgrie\u017e v\u0113rt\u012bbu, kas noapa\u013cota l\u012bdz tuv\u0101kajam veselajam skaitlim.<\/li>\n<li>Ja dekodera inicializ\u0101cija neizdodas, tagad tiek atgriezts pirmais sastaptais k\u013c\u016bdas kods, nevis MA_NO_BACKEND neatkar\u012bgi no k\u013c\u016bdas k\u0101 iepriek\u0161.<\/li>\n<li>Pievienota funkcija ma_device_id_equal() ier\u012b\u010du identifikatoru sal\u012bdzin\u0101\u0161anai.<\/li>\n<li>Pievienota MA_NO_RUNTIME_LINKING atbalsts AAudio aizmugur\u0113.<\/li>\n<li>Dokument\u0101cija ir atjaunin\u0101ta.<\/li>\n<li>Labotas konstat\u0113t\u0101s k\u013c\u016bdas.<\/li>\n<\/ul>\n<p>Avots: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/development\/17896481\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>24 \u0444\u0435\u0432\u0440\u0430\u043b\u044f, \u043f\u043e\u0441\u043b\u0435 \u0431\u043e\u043b\u0435\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a 0.11.22 \u043a\u0440\u043e\u0441\u0441\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0437\u0430\u0445\u0432\u0430\u0442\u0430 \u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0437\u0432\u0443\u043a\u0430 miniaudio, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 C \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u043c\u043e\u0439, \u043a\u0430\u043a \u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0434\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435. miniaudio \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 \u0432\u0441\u0435\u0445 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043d\u044b\u0445 \u0438 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430\u0445, \u0432\u043a\u043b\u044e\u0447\u0430\u044f Windows, macOS, Linux, BSD, iOS, Android \u0438 Web (\u0447\u0435\u0440\u0435\u0437 Emscripten) \u0431\u0435\u0437 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439. \u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0438\u043c\u0435\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e\u0439, \u0433\u0438\u0431\u043a\u0438\u0439 \u0438 \u043c\u043e\u0434\u0443\u043b\u044c\u043d\u044b\u0439 API [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":122101,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-122100","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - aioseo.com -->\n\t<meta name=\"description\" content=\"24 \u0444\u0435\u0432\u0440\u0430\u043b\u044f, \u043f\u043e\u0441\u043b\u0435 \u0431\u043e\u043b\u0435\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a 0.11.22.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/lv\/blog\/news\/miniaudio-0-11-22\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"lv_LV\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47miniaudio 0.11.22 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"24 \u0444\u0435\u0432\u0440\u0430\u043b\u044f, \u043f\u043e\u0441\u043b\u0435 \u0431\u043e\u043b\u0435\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a 0.11.22.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/lv\/blog\/news\/miniaudio-0-11-22\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-02-26T12:22:19+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-02-26T12:22:19+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47miniaudio 0.11.22 | ProHoster","description":"2023. gada 24. febru\u0101r\u012b, p\u0113c vair\u0101k nek\u0101 gada izstr\u0101des, tika izlaists 0.11.22.","canonical_url":"https:\/\/prohoster.info\/lv\/blog\/news\/miniaudio-0-11-22","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"lv_LV","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47miniaudio 0.11.22 | ProHoster","og:description":"24 \u0444\u0435\u0432\u0440\u0430\u043b\u044f, \u043f\u043e\u0441\u043b\u0435 \u0431\u043e\u043b\u0435\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a 0.11.22.","og:url":"https:\/\/prohoster.info\/lv\/blog\/news\/miniaudio-0-11-22","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2025-02-26T12:22:19+00:00","article:modified_time":"2025-02-26T12:22:19+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"122100","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 10:55:24","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 10:55:24","updated":"2026-01-23 10:55:24","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/122100","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/comments?post=122100"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/122100\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media\/122101"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media?parent=122100"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/categories?post=122100"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/tags?post=122100"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}