Un software que convierte el sonido en valor de Hertz [cerrado]

Me gustaría analizar las notas de una canción para convertirla en forma de onda o en valor de Hertz.

El objetivo es conservar estas notas tal como son, sin cambios de vibración, sin tener que corregir cada nota individual hacia el sistema europeo.

Por lo tanto, el software debe leer el archivo y dar un resultado en valor de Hertz.

Berhane

¿Alguna preferencia de sistema operativo?
Si puede resolver el problema, los programas Win y Mac son buenos. La plataforma preferida podría ser Windows.
@Fractaliste Creo que el otro es ligeramente diferente, y Berhane explica la diferencia en un comentario allí.
Estimado Nick, como mencionaste, la declaración anterior se modificó varias veces, lo que dificulta un poco la comprensión de los principales enlaces de pensamientos.
Has hecho tres variantes de esta pregunta ahora y todavía no está del todo claro. Realmente necesitas parar y pensar en lo que quieres. Has escrito mucho en los comentarios a continuación. Ahora haga un esfuerzo similar para explicar lo que quiere en su pregunta, en lugar de quejarse porque recibió una respuesta que no coincidía con los requisitos que tenía en mente pero que no escribió.
Además, los comentarios no son un lugar para una conversación prolongada. Si necesita dejar comentarios, escriba un comentario. Enfoca tus pensamientos y haz un esfuerzo por ser comprensible.

Respuestas (1)

Lo que está buscando es probablemente una transformada rápida de Fourier o "Análisis de frecuencia".

Audacity puede hacer esto, con la Analyze -> Plot Spectrum…herramienta.

ingrese la descripción de la imagen aquí

Esto generará un gráfico, y usted simplemente encuentra dónde alcanza su punto máximo para determinar el valor de Hertz de cualquier sonido que esté analizando. Por supuesto, esto solo funciona si el tono es constante.

Si su archivo de sonido consta de múltiples frecuencias (tonos) en secuencia, es probable que necesite ingresar a la programación personalizada de una herramienta llamada Max/MSP o algo similar, según lo que realmente esté tratando de hacer.

Si aún no es evidente, un programa single-in single-out que toma una pieza musical o un sonido grabado arbitrariamente y genera un solo valor de Hertz no sería un programa útil. En el mejor de los casos, sería un valor de frecuencia promedio para todo el clip, y si eso es realmente lo que necesita, debería considerar la automatización de una de las opciones anteriores.


Transcripción programática del sonido grabado a valores de Hz:

(solo confiable para música con una melodía de una sola línea en una grabación clara)

  1. Tome como entrada una forma de onda, que consta de +/- amplitud en el tiempo.
  2. Decida una resolución temporal con la que analizar la forma de onda, n segundos.
  3. Divida el archivo de sonido en fragmentos de n segundos de duración y ejecute una FFT en cada fragmento
  4. Encuentre la frecuencia máxima para cada curva FFT
  5. Transforme sus resultados en frecuencia a lo largo del tiempo
  6. Lógica de diseño para decidir cómo dividir esta curva de frecuencia en "notas".
Como dijiste, el software Audocity presenta el Spectrum. Sin embargo, el valor Hz que es un campo de cálculo del espectro no se edita. Mi solicitud es: ¿cómo obtendré las notas que representan sus valores en hercios? Digamos que la canción tiene solo 5 notas, espero el resultado escrito en valor Hz. Estas 5 notas pueden ser: "ACGB D" o "La Do Sol Si Re" como resultado, el software debe dar la salida en su valor Hz. Espero saber si hay en el mercado un Software o Programación de "java o si no" o las Universidades tienen la solución. Aprecié tu amabilidad.
La referencia que trajiste de que no hay necesidad de enumerar todas las notas, es correcta. Espero sólo el promedio de la misma.
Lo sentimos, pero la segunda oración de su comentario no tiene significado sintáctico; Todavía no entiendo qué, matemáticamente, estás tratando de lograr. ¿Quizás si elabora lo que planea hacer con este programa, se volverá más claro? Si ya conoce los nombres de las notas, las frecuencias se pueden calcular fácilmente mediante programación en su propio código: phy.mtu.edu/~suits/notefreqs.html
Estimado Reilingh, la explicación que ha dado es correcta. usted miró en la vista científica. Me estoy enfocando en resolver problemas. Quiero hacer una investigación. Me gusta encontrar valores o datos para ver la diferencia entre las notas enumeradas que existen en una canción. Mi objetivo es captar las notas de la canción. Lo que significa obtener los resultados en números (valor hz). A partir de esta salida puedo hacer la referencia que quiero seguir. Y esto es: buscar el sonido de cualquier canción. (No es necesario corregir las notas en tonos estándar). Luego enumérelos en un archivo de Excel/Word. De la lista de datos construiré el módulo, la teoría.
Encontrar todas las notas en una canción en valor Hertz es un problema igualmente difícil que encontrar todas las notas en una canción por nombre de letra de tono. El hecho de que esté utilizando una simbología numérica no cambia el problema.
Déjame plantearlo de esta manera: si te grabaste tarareando la primera frase de "Oda a la alegría", que son 15 notas en un espacio de aproximadamente 8 segundos, ¿el programa generaría 15 valores de Hz diferentes, o solo 1?
Estimado Reiligh: tiene razón, conocer el valor de Hz y el sonido en sí no cambia ningún significado. Sin embargo, conocer el valor de Hz le dará una pista al respecto. Con hz, nota la diferencia, realiza pruebas y comparaciones adicionales, descubre el contexto, o captará el patrón o procedimiento, y en música definirá la escala. Te ayudará a eliminar con confianza cierto sabor a cantante. Hay un valor, supongo.
si existen 15 voces, las notas representativas se darán, por supuesto, como salida. El tiempo es relativo, unos van rápido y otros lentos. La repetición también reflexionará sobre este tema. En caso de que la persona cante la misma canción durante 15 segundos, la salida es una sola. Gracias Reinligh.
Mi punto es que lo que le está pidiendo al software que haga es un problema de inteligencia artificial muy complicado. La transcripción de música todavía la realiza con mayor precisión un ser humano. Es posible que pueda escribir un software de IA que interprete una FFT en movimiento, pero esto solo será confiable para música de una sola línea. Para transcribir con precisión la mayoría de la música, deberá generar múltiples valores de Hz para múltiples picos en la FFT para un solo punto en el tiempo, y no podrá averiguar cuál es la melodía sin el uso de un músico humano.
@ NReilingh: ¿podemos enumerar la transferencia real? 1- una canción, 2- transferir a FFT, 3- transcribir a hz. Si solo necesitamos estos 3 pasos para realizar, ¿cómo puedes decir muchas actividades? Si como dijiste los pasos son demasiados. Me importaría decirme por qué es incómodo. Lo aprecio.
Su primera observación en la primera línea fue tratar con FFT para transferir un sonido a hz. ¿Le importaría elaborar ese argumento, por favor? Parte de la solución parece estar ahí. ¿Dónde ve pasos que evalúan el valor de Hz para detectar una forma de controlar el sonido manualmente? Y si es así, ¿cuáles son los pasos principales (2 o 3) que conducen a convertir el sonido en valor de hercios?
Permítanme reformular acerca de los datos. 1er paso - La canción grabada es un solo. Si es en grupo, las notas son las mismas para todos. Entonces no hay canción a 3 o 3 o 4 voces juntas. 2do paso - el canto debe ser transcrito en hz. Cuántos pasos crees que necesita para convertir una canción de 3 minutos en un valor de Hz. Me gustaría encabezar su conjetura. 3er paso: ¿cómo puedo recopilar los datos de la lista en un documento de archivo de Word, Excel o Access? Estas son las claves que me ayudan a encontrar una solución. Reiling usted señaló temas interesantes. Gracias
Las ilustraciones que me enviaste en la tabla SOUND TEMPERED, el sonido se mide en valor hz y valor de forma de onda. Déjame ver si puedo pasarlo aquí: "A3 220.00 156.82 A#3/Bb3 233.08 148.02 B3 246.94 139.71 C4 261.63 131.87" (estos son 4 grupos de notas, la nota, el valor de hz y el valor de forma de onda). ¿Cuál es el proceso fácil para obtener una salida de un sonido vocal grabado? ¿Es fácil captar el valor de hz o forma de onda? Una vez que lleguemos a uno de estos, se derivará el segundo, creo. NReilingh, a la espera de su comentario.
Abordé problemas al dirigir el sonido para filtrar sus hz desde un software. Esa fue mi petición al principio. Ahora, con cualquier script Java similar, mi pregunta es si hay alguna forma de convertir el sonido sin procesar en hz. Espero haber acotado la pregunta. Gracias
Mire, ahora me está pidiendo que diseñe su programa para usted. Respondí la pregunta de recomendación de software lo mejor que pude. Debe leer la página de Wikipedia sobre el algoritmo FFT usted mismo. Cuando lo comprenda por completo y haya experimentado un poco por su cuenta, podrá tomar sus propias decisiones sobre cómo estructurar su programa.
como reiteraste es cierto lo que dijiste en términos de teoría. Sin embargo, dado que estoy interesado en verificar canciones que toman más de días, sé que no puedo continuar con actividades tan largas e intrincadas. Lo siento si no lo reformulé bien. Estoy buscando en un integrado en un software. Si puede hacerlo y nos ponemos de acuerdo en el precio, es un trabajo administrativo. Mi enfoque es, si hay algún software que realice esta actividad. Sé que hay algunos, pero no continúo con ese software porque necesito más rendimiento, como el valor de hz para cambiar al procesador de textos.
Y de ahí a la base de datos, y tan pocas o dos actividades más. Entiendo que debo hacer mi investigación y no relegar eso. Si sabe que existen buenos procedimientos, es bienvenido. Por lo tanto, sigo buscando procedimientos simples que garanticen el resultado y/o el software disponible en el mercado. Estoy preguntando si hay software para poder comprar uno para mi proyecto. Hablando de procedimiento, como los enumeró en la página principal, está bien. Pero vamos a comprobar cuáles son las ventajas entre las dos vías. Para calcular el cómodo de los dos, todavía estamos buscando alguna prueba.
Como mi interés, revisé el software Audocity. En el espectro, existe la opción de comprobar el valor de la frecuencia. De lo que obtuve del espectro son estos datos: La frecuencia en valor hz y el nivel db. La frecuencia en estos datos es un número constante, como un contador. Mientras que el nivel db es un número discreto. ¿De estos 2 datos qué conclusión puedes deducir? Gracias.
Por otro lado, los datos de Hz aparecen en el espectro. Pero está relacionado con el movimiento del mouse, y es un punto muy inestable que casi es difícil de precisar. Si hay formas mejores bien, pero desde esta plantilla es muy difícil controlar todos los datos de cualquier canción, porque es una tarea demasiado larga e ineficiente. En este punto, sería mejor implementar un software o un software de realidad virtual similar. A pesar de que con el software audocity se puede lograr un resultado esencial, para obtener resultados directos de los datos de la canción hacia un valor de hz no se puede reanudar desde la plantilla de audocity.
Berhane: estás malinterpretando completamente el punto aquí. Lo que te ha dicho NReilingh es: hay aplicaciones que pueden ayudarte a encontrar las frecuencias presentes en un punto en el tiempo de una pieza musical. Necesitará encontrar una manera de recorrer su música, extrayendo todas esas frecuencias a medida que avanza. Audacity proporciona una visualización: deberá programar una herramienta como MaxMSP para extraer realmente las frecuencias. Es posible que también necesite calcular la longitud de las notas de su muestreo.
No puedo decir que entendí todo lo que dijo el Sr. Reilingh. Podría ser una persona profesional que ya obtuvo la respuesta. Para hacer mi tarea volví a revisar la audacia. El espectro mencionado anteriormente me dio un valor constante de Hz en referencia a db. Esto no podría ser de ayuda. Puedo decir que puede haber trucos para activar, y si fue bueno compartirlos. Esta parte fue buena porque pude exportar el archivo en Excell. El valor de Hz y db estaban disponibles para la prueba, pero falta algo, es decir, la función que conduce al valor de Hz correcto. Agradezco a Rory, estoy tratando de concentrarme en no culpar a nadie.