Acerca de
Esta página existe porque una biblioteca que te pide que confíes en sus números te debe el nombre de quien está detrás, el método del que salen esos números y una forma de avisarme cuando alguno esté mal.
Quién mantiene phonometry
Sección titulada «Quién mantiene phonometry»Soy José Manuel Requena Plens. Escribí phonometry (publicada originalmente como PyOctaveBand) y la mantengo: las implementaciones, la batería de tests, este sitio de documentación y las publicaciones de versiones. No hay ninguna empresa detrás ni ningún equipo, así que si algo de este sitio está mal, me toca a mí corregirlo.
Puedes comprobar quién soy por cualquiera de estas vías:
- ORCID: 0000-0003-1250-6212
- Google Scholar: scholar.google.com/citations?user=9b0kPaUAAAAJ
- ResearchGate: Jose Requena Plens
- GitHub: @jmrplens
- Sitio personal: jmrp.io
La misma identidad está publicada también en MathWorks File Exchange, LinkedIn, Mastodon y Keyoxide, donde figura la clave OpenPGP con la que firmo mi trabajo.
Mi formación es de acústica y de tratamiento de señal, y está registrada en lugar de autodescrita: soy Ingeniero de Telecomunicación especializado en Sonido e Imagen por la Universidad de Alicante (2011-2018), cursé el Máster en Ingeniería Acústica de la Universitat Politècnica de València (2018-2019) y trabajé como investigador en acústica en la UPV de 2020 a 2023, donde publiqué sobre metasuperficies acústicas, difusores de sonido y predicción de campos acústicos; los artículos están listados en los perfiles de Google Scholar y ORCID de arriba. Hoy trabajo en I+D industrial como ingeniero de firmware y software.
La biblioteca nació de la parte de medición de ese trabajo: necesitaba una y otra vez niveles de bandas de octava y magnitudes de sonómetro que pudiera defender frente a una tabla de tolerancias, así que los construí bien una sola vez en lugar de volver a deducirlos en cada proyecto.
Cómo construyo la biblioteca
Sección titulada «Cómo construyo la biblioteca»El método es la razón de ser del proyecto, y es deliberadamente estrecho:
- Implemento cada métrica a partir del texto de la norma que la rige, apartado a apartado, y no a partir de una descripción secundaria ni de otra implementación. Cuando una fórmula es ambigua, la ambigüedad se resuelve con el propio documento o con la física, y la lectura que he elegido queda escrita.
- Transcribo a la batería de tests los valores de referencia de la propia norma. Cuando una norma publica un ejemplo resuelto, una tabla de tolerancias o un conjunto de respuestas nominales (los valores de ponderación de la Tabla 3 de IEC 61672-1, las respuestas a ráfagas tonales de su Tabla 4, los límites de filtro de la Tabla 1 de IEC 61260-1, los contornos del Anexo B de ISO 226 y demás), esos números pasan a ser los valores esperados de tests reales.
- CI los exige en cada cambio. Una regresión que saque un valor calculado fuera del límite de aceptación de la norma tumba la compilación, de modo que la afirmación no puede dejar de ser cierta en silencio entre versiones.
No todas las normas publican un ejemplo numérico. Cuando no lo hacen, la implementación se ancla a las expresiones en forma cerrada del texto normativo y se fija con un caso sintetizado a un resultado conocido, lo que es una garantía más débil que un ejemplo resuelto transcrito. Esas comprobaciones lo dicen en el informe de conformidad, en la propia celda del valor esperado y no como una marca aparte por la que pudieras filtrar: la expresión que hay que buscar es «forma cerrada» o «analítico». Prefiero decirlo con claridad antes que redondearlo al alza, y prefiero que sepas qué clase de evidencia tienes entre manos: una comprobación en forma cerrada demuestra que la implementación concuerda con las ecuaciones tal como están escritas, y no puede detectar una mala lectura del apartado del que salieron esas ecuaciones. Por eso existe a su lado el registro de erratas.
Los números son públicos: ese informe recoge, para cada comprobación, la norma y el apartado, el valor esperado normativo, el valor que calcula realmente la biblioteca, la diferencia y un veredicto de cumple o no cumple; CI lo regenera en cada pull request, así que no puede desviarse del código. Por qué phonometry recorre el método sobre un caso resuelto concreto (la ponderación temporal según IEC 61672-1:2013) si quieres verlo aplicado de principio a fin antes de confiar en él de forma general.
Cómo informar de un error
Sección titulada «Cómo informar de un error»Infórmalo, por favor. Un número equivocado del que nadie me avisa se queda equivocado.
Abre una incidencia en github.com/jmrplens/phonometry/issues. El informe más útil me indica la norma y el apartado contra el que estás comprobando, el valor esperado, el valor que ha dado phonometry y un fragmento de código breve que lo reproduzca. Si no puedes compartir la señal, con los parámetros suele bastarme para reconstruir un caso.
Si el gestor de incidencias no es una opción para ti, escríbeme directamente a mail@jmrp.io; aun así la incidencia es el mejor canal, porque el informe y la corrección quedan públicos junto al código al que afectan.
Eso incluye los errores que encuentres en las propias normas. Volver a deducir
las fórmulas y recalcular los ejemplos resueltos a partir de los documentos
originales saca a la luz de vez en cuando defectos en las propias fuentes:
erratas de imprenta, ejemplos resueltos que contradicen su propio texto
normativo, redacciones ambiguas. No los sorteo en silencio. Cada caso
confirmado queda registrado en el
registro de erratas con la localización, la
evidencia, la lectura que implementa la biblioteca y si se ha comunicado al
organismo emisor. Se mantiene como
docs/ERRATA.md
en el repositorio y se trasplanta al sitio al compilar, así que los dos no
pueden discrepar. El registro cubre por igual normas (ISO,
IEC, EN), documentos de orientación e informes técnicos, libros de texto y
artículos de revista. Si no estás de acuerdo con alguna de esas lecturas, esa
es justo la clase de incidencia que quiero recibir.
Cómo citar este software
Sección titulada «Cómo citar este software»Si phonometry ha contribuido a un trabajo publicado, cítalo, por favor. El registro archivado y su DOI están en Zenodo:
doi.org/10.5281/zenodo.21215280
Ese es el DOI de concepto: siempre resuelve a la versión archivada más reciente, y cada versión tiene además su propio DOI en ese mismo registro. Cita la versión que hayas ejecutado realmente.
APA:
Requena-Plens, J. M. (2026). phonometry: acoustic measurement toolkit for Python (formerly PyOctaveBand) (Versión 3.3.0) [Software]. https://doi.org/10.5281/zenodo.21215280
BibTeX:
@software{requenaplens_phonometry, author = {Requena-Plens, Jos{\'e} M.}, title = {phonometry: acoustic measurement toolkit for Python (formerly PyOctaveBand)}, year = {2026}, version = {3.3.0}, doi = {10.5281/zenodo.21215280}, url = {https://jmrplens.github.io/phonometry/}, license = {MIT}}Ambas entradas están derivadas de
CITATION.cff
en el repositorio, que son los metadatos autorizados y el fichero que leen
GitHub y Zenodo. Si usas un gestor de referencias, importa ese fichero en lugar
de copiar el bloque de arriba, y ajusta la versión y el año a la publicación
que hayas utilizado.
Licencia
Sección titulada «Licencia»phonometry se distribuye bajo la licencia MIT, de modo que puedes usarla en trabajos comerciales y académicos, modificarla y redistribuirla, siempre que el aviso de copyright y el texto de la licencia viajen con ella. El software se entrega sin garantía: está verificado frente a las normas que implementa, tal como se describe más arriba, pero no es un instrumento calibrado y no tiene ninguna acreditación. Decidir si un resultado es adecuado para tu propósito sigue siendo cosa tuya.
En concreto, para los laboratorios y las consultoras para los que está escrita sobre todo: la biblioteca calcula y documenta, no mide, así que la trazabilidad se queda en la cadena de instrumentación — un calibrador y un micrófono con certificados en vigor, e instrumentación con aprobación de modelo allí donde la medición tenga efectos legales. Las entidades de acreditación esperan que el software de cálculo esté validado para su uso previsto y que quede registro de ello, y el documento que sirve para eso es el informe de conformidad de la versión exacta que se ejecutó: fija la versión, archiva su informe junto con los datos de medición y guarda al lado el registro de erratas, ya que documenta cada punto en el que la lectura implementada difiere de una fuente impresa. Y la maquinaria de incertidumbre propaga lo que le des: la tolerancia del calibrador y la deriva antes/después siguen siendo cosa tuya.
Las normas en sí tienen los derechos de autor de sus organismos emisores y no se redistribuyen aquí. Esta documentación cita apartados y valores de referencia en la medida necesaria para explicar y verificar las implementaciones; no sustituye a la compra de los documentos.
Adónde ir a partir de aquí
Sección titulada «Adónde ir a partir de aquí»Si has llegado hasta aquí y quieres empezar a usarla, Primeros pasos instala la biblioteca y ejecuta un primer análisis calibrado, ¿Qué necesitas medir? encuentra la página de un trabajo concreto, y Todas las guías es el mapa de la biblioteca entera agrupada por temas. Si has venido a comprobar un número y no a instalar nada, el informe de conformidad y el registro de erratas son las dos páginas que responden a eso.