{"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\/es\/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>El 24 de febrero, despu\u00e9s de m\u00e1s de un a\u00f1o de desarrollo, se lanz\u00f3 la versi\u00f3n 0.11.22 de la biblioteca multiplataforma para la captura y reproducci\u00f3n de sonido. <a rel=\"nofollow\" href=\"https:\/\/miniaud.io\">miniaudio<\/a>, escrita en C y distribuida como dominio p\u00fablico.<br \/><\/noindex> miniaudio funciona en todas las principales plataformas de escritorio y m\u00f3viles, incluyendo Windows, macOS, Linux, BSD, iOS, Android y Web (a trav\u00e9s de Emscripten) sin dependencias externas.<br \/> La biblioteca cuenta con una API simple, flexible y modular con decodificadores incorporados (WAV, MP3 y FLAC), mezcla avanzada y procesamiento de efectos (incluido 3D), gesti\u00f3n de recursos, filtros, conversi\u00f3n de datos y mucho m\u00e1s.<\/p>\n<p>Principales cambios:<\/p>\n<ul>\n<li>A partir de la versi\u00f3n 0.12, miniaudio adoptar\u00e1 una separaci\u00f3n de archivos .c\/.h, abandonando el uso de un \u00fanico archivo de encabezado. Para prepararse para esto, se ha a\u00f1adido el archivo miniaudio.c al repositorio. Hasta ahora, solo es un envoltorio alrededor de miniaudio.h y MINIAUDIO_IMPLEMENTATION. No se ha realizado ning\u00fan cambio en miniaudio.h, sin embargo, cuando se publique la versi\u00f3n 0.12, ser\u00e1 necesario usar miniaudio.c para la compilaci\u00f3n. Se recomienda comenzar la transici\u00f3n del uso de MINIAUDIO_IMPLEMENTATION hacia el uso de miniaudio.c. Si desea continuar compilando su proyecto como una \u00fanica unidad, puede hacer #include \"miniaudio.c\". Este m\u00e9todo se seguir\u00e1 soportando en la versi\u00f3n 0.12 y posteriores.<\/li>\n<li>Los archivos miniaudio_libvorbis.h y miniaudio_libopus.h en el directorio extras se han declarado obsoletos. Ahora est\u00e1n separados en archivos individuales .c y .h en el directorio extras\/decoders. Los archivos antiguos a\u00fan existen por compatibilidad, pero deber\u00e1 cambiar a las nuevas versiones. La transici\u00f3n debe ser trivial.<\/li>\n<li>Se han a\u00f1adido las opciones MA_SOUND_FLAG_LOOPING y MA_RESOURCE_MANAGER_DATA_SOURCE_FLAG_LOOPING. Estas se pueden usar para inicializar sonidos y fuentes de datos administradas para el bucle por defecto. Esta es la forma recomendada de habilitar el bucle para los flujos. Las opciones de configuraci\u00f3n isLooping en ma_sound_config y ma_resource_manager_data_source_config se han declarado obsoletas. Si las est\u00e1 utilizando, debe cambiar a las nuevas opciones, de lo contrario, al actualizar a futuras versiones, recibir\u00e1 errores de compilaci\u00f3n.<\/li>\n<li>ma_rb_commit_read(), ma_rb_commit_write(), ma_pcm_rb_commit_read() y ma_pcm_rb_commit_write() ya no devuelven MA_AT_END. La raz\u00f3n de este cambio es que no existe el concepto de \"fin\" en un b\u00fafer circular, lo que hac\u00eda que el c\u00f3digo de resultado fuera confuso. Adem\u00e1s, estas funciones pueden devolver algo diferente a MA_SUCCESS incluso si la operaci\u00f3n fue exitosa, lo que generaba m\u00e1s confusi\u00f3n. La forma correcta de verificar si hay espacio en el b\u00fafer circular es observar el contador de fotogramas que devuelven las funciones rb_acquire_read\/write().<\/li>\n<li>La implementaci\u00f3n de la fuente de datos ma_pcm_rb se ha modificado de manera que la salida se rellena con silencio si hay insuficientes datos en el b\u00fafer circular para cumplir con la solicitud. Esto significa que ma_data_source_read_pcm_frames() para ma_pcm_rb ya no debe devolver una cantidad de cuadros menor que la solicitada, y por lo tanto nunca devolver\u00e1 MA_AT_END, lo cual no tiene sentido para un b\u00fafer circular, ya que no tiene un concepto de fin. Este cambio deber\u00eda simplificar considerablemente el uso del b\u00fafer circular como fuente de datos para ma_sound.<\/li>\n<li>Se ha realizado un peque\u00f1o cambio en la funci\u00f3n ma_calculate_buffer_size_in_milliseconds_from_frames() resultando en que devuelve un valor redondeado al entero m\u00e1s cercano.<\/li>\n<li>En caso de una inicializaci\u00f3n fallida del decodificador, ahora se devuelve el primer c\u00f3digo de error encontrado, en lugar de MA_NO_BACKEND independientemente del error, como era anteriormente.<\/li>\n<li>Se ha agregado la funci\u00f3n ma_device_id_equal() para comparar identificadores de dispositivos.<\/li>\n<li>Se ha agregado soporte para MA_NO_RUNTIME_LINKING en el backend AAudio.<\/li>\n<li>Documentaci\u00f3n actualizada.<\/li>\n<li>Se han corregido errores encontrados.<\/li>\n<\/ul>\n<p>Fuente: <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.2 - 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\/es\/blog\/news\/miniaudio-0-11-22\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\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\/es\/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":"El 24 de febrero, despu\u00e9s de m\u00e1s de un a\u00f1o de desarrollo, se lanz\u00f3 la versi\u00f3n 0.11.22.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/news\/miniaudio-0-11-22","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","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\/es\/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\/es\/wp-json\/wp\/v2\/posts\/122100","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=122100"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/122100\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/122101"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=122100"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=122100"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=122100"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}