Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

p5.sound's midiToFreq() allows microtonality (decimal MIDI notes)

Abierto
#92 3 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
1/5
Tiempo estimado
Menos de una hora
Aptitud para principiantes
38/100
Tipo de issue
Documentación
Claridad
Bien especificado
Estado de actividad
Estancado
Stack tecnológico
javascript

Línea de trabajo

Comienza en la página de referencia de p5.sound midiToFreq() enlazada en el issue y revisa cómo presenta su descripción de General MIDI los valores aceptados. Se considera completado al añadir una nota que indique que los valores MIDI decimales producen frecuencias microtonales sin redondeo; en el issue no se menciona ningún archivo fuente ni ninguna prueba específicos.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug
Most appropriate sub-area of p5.js?
  • Accessibility
  • Color
  • Core/Environment/Rendering
  • Data
  • DOM
  • Events
  • Image
  • IO
  • Math
  • Typography
  • Utilities
  • WebGL
  • Build process
  • Unit testing
  • Internationalization
  • Friendly errors
  • Other (specify if possible)
p5.js version

1.11.1

Web browser and version

Firefox 133.0.3

Operating system

Windows 11

Steps to reproduce this
Steps:
  1. Decimal numbers in midiToFreq() return microtonal values, because they're not rounded first.
  2. This is actually a pretty cool feature, and allows some creative possibilites (microtonal music!), but it might be unexpected for some because the reference implies the value should be an integer MIDI note number:

General MIDI treats notes as integers where middle C is 60, C# is 61, D is 62 etc. Useful for generating musical frequencies with oscillators.

Rather than 'fix' this, adding a note to the reference description along the lines of 'Decimal values return microtonal frequencies.' Might clarify that those values won't be rounded to equal temperament tuning, but keep a pretty cool, if unexpected, feature?

Snippet:

  console.log(midiToFreq(60)); // returns 261.6255653005986 (Hz) = C4
  console.log(midiToFreq(60.5)); // returns 269.2917795270241 = C4 quarter-sharp!
  console.log(midiToFreq(61)); // returns 277.1826309768721 = C#4

I'd be happy to add this note to the reference if it's accepted.

Lenguaje dominante
JavaScript
Estrellas
60
Forks
26
Merge medio
2 d 3 h
PR fusionados (30 d)
7

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de processing/p5.sound.js

Todos los issues de processing/p5.sound.js

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.