Tengo un bebé de tres semanas. De vez en cuando se niega a dormir. Algunas personas me dicen que así es la vida, algunas personas me dicen que necesito comprar cosas para arreglarlo. Esto se está convirtiendo en un patrón alarmantemente común en este juego de crianza.
De todos modos, una de estas cosas "Necesito comprar" es un generador de ruido blanco . Ruido blanco definido como:
una señal aleatoria se considera "ruido blanco" si se observa que tiene un espectro plano sobre el rango de frecuencias que es relevante para el contexto. Para una señal de audio, por ejemplo, el rango relevante es la banda de frecuencias de sonido audible, entre 20 y 20,000 Hz.
Hay varias cosas que puedo comprar. Aplicaciones para Android, cajas dedicadas que estoy seguro solo reproducen un pequeño clip de ruido pregenerado, todo el camino hasta generadores de ruido blanco verdaderamente aleatorio mega-caros.
Quiero generar mi propia muestra de ruido blanco
Sé que podría descargar uno youtube-dl
de uno de los muchos videos disponibles, pero aparte de los derechos de autor, la compresión de frecuencia es horrible en línea. Quiero la bondad de la frecuencia de blanco completo. Si tal cosa realmente existe. Además, soy un glotón del castigo y creo que si algo se puede hacer a través de la línea de comando, esa es la forma en que deberíamos hacerlo. Así es como pretendo plantear este de todos modos.
Entonces tenemos cosas como /dev/urandom
y paplay
. ¿Hay una manera sensata de tomar datos aleatorios y canalizarlos dentro del rango audible del ruido blanco y fuera de mis altavoces? Las respuestas que escriben en el archivo también están bien. Lo importante es una muestra estable de rango limitado. No hay graznidos.
Nota: las respuestas que generan la nota marrón no serán apreciadas ☹
Respuestas:
Use la navaja suiza para la generación de sonido, SoX .
Lo instala desde los repositorios oficiales, simplemente escribiendo:
Respuesta actualizada y elegante (agradables olas oceánicas):
Después de experimentar un poco con SoX, se me ocurrió este gran comando que imita el suave murmullo del mar con su suave sonido de olas que fluyen sobre una playa de arena plana en un soleado día de verano ...
Bueno, suficiente poesía, aquí está el comando. Escuchate a ti mismo.
Explicación:
Este comando primero genera y mezcla ruido marrón y ruido rosa, que considero el ruido más cómodo y natural. Luego genera una onda sinusoidal de
0.3
Hz con un desplazamiento del10
% y lo utiliza para modular la amplitud de nuestros ruidos mixtos para producir el sonido de las olas del océano.Modificaciones:
Temporizador:
puede agregar un temporizador y limitar la duración de la reproducción especificando la cantidad de segundos, la cantidad de minutos y segundos (
mm:ss
) o la cantidad de horas, minutos y segundos (hh:mm:ss
) justo antesbrownnoise
. Aquí hay un ejemplo para una hora:Frecuencia de olas:
si desea que las olas golpeen la playa con más o menos frecuencia, simplemente cambie la frecuencia de la onda sinusoidal utilizada para la modificación de amplitud (
0.3
en el comando anterior). El número representa la cantidad de ondas por segundo, por lo que una frecuencia de0.1
Hz causará 0.1 ondas por segundo y, por lo tanto, hará que una onda dure 10 segundos:Volumen mínimo de ruido de fondo:
el seno que se usa para la modulación de amplitud se desplazó a un desplazamiento de
10
%, por lo que el ruido marrón-rosa siempre se reproducirá con al menos un 10% de volumen. Si desea un ruido de fondo más fuerte o más débil, aumente o disminuya este desplazamiento según sus necesidades. Aquí hay un ejemplo con20
% de ruido de fondo:Vieja y aburrida respuesta (ruido blanco):
Ahora el comando más fácil para reproducir ruido blanco infinitamente (hasta que lo canceles con Ctrl+ C) es este:
Si prefiere un límite de tiempo, puede agregarlo en el formato
hh:mm:ss
. El siguiente comando haría ruido durante una hora y media, por ejemplo:Incluso te muestra algunas buenas estadísticas mientras "juegas":
fuente
play -n synth brownnoise synth pinknoise mix synth 0 0 0 15 40 80 trapezium amod 0.2 10
está más cerca de lo que estás pidiendo :)play -n synth brownnoise synth pinknoise mix synth 0 0 0 10 10 40 trapezium amod 0.1 30
el período más largo hace que sea más difícil notar la regularidad. Los números significan: 0.1 = frecuencia de choque de la onda (0.1 Hz = una onda cada 10 segundos); 30% = nivel de ruido entre olas; 1er 10% = duración (durante los 10 segundos) de la parte ascendente de la ola; 2do 10% = cuando comienza a caer (ambos son 10% para que la ola se bloquee tan pronto como termine de subir de volumen); 40% de duración de toda la ola: esto significa 100% - 40% = 60% del tiempo que se pasa esperando entre olas.El ruido blanco es tortura.
Especialmente para las delicadas orejas de los bebés.
Esto se debe a que el ruido blanco tiene demasiada energía en las frecuencias altas.
fuente
Puede generar ruido rosa con el comando play de las utilidades de los sox:
Ajuste los valores de .1 y 60 para satisfacer sus necesidades. El ruido rosa es menos duro en el oído y es de esperar que sea el sonido que necesita
fuente
speaker-test
que esto también lo hace, pero creo que el ruido rosa es menos que óptimo, es seguro, pero ¿no tener variación podría no ser deseable?play -n synth 12:00:00 whitenoise
.1
y60
argumentos significa realmente?No estoy seguro de que esto produzca ruido blanco real que cubra todo el espectro, pero un simple
parece hacer el truco en mi sistema (no es necesario instalar nada nuevo o agregar un repositorio).
fuente
sox
produce.pulseaudio-utils
, que es incluso parte del sistema en vivo (ver el manifiesto ). Si no lo tiene, entonces probablemente su instalación esté dañada. Le sugiero que abra una nueva pregunta que explique el problema y solicite ayuda sobre cómo restaurar su instalación.aplay
lugar depacat
.alsa-utils
parece estar instalado por defecto.Soy un glotón del castigo, así que te daré la forma de GUI. Echa un vistazo a ANoise .
El sonido predeterminado que viene es malo, pero puede descargar otros sonidos como Forest Rain, Fountain y otros. Puede configurarlo para que comience con el sistema e incluso configurarlo para que se detenga después de un cierto tiempo.
ANoise Code , y para sonido extra de río:
fuente
Audacia abierta.
Vaya a "Generar> Ruido ..."
Seleccione "Browniano" (mucho menos agresivo que el ruido blanco real). La amplitud y la duración no importan mucho.
Loop usando el Shiftbotón + Play.
fuente
La utilidad instalada por defecto
speaker-test
genera ruido rosa (que, como @nightingale, es lo que realmente quieres, no ruido blanco). Se puede configurar para hacerlo indefinidamente ejecutandofuente
FFMpeg tiene un filtro de fuente de ruido de audio. Puedes jugarlo usando
ffplay
:El argumento to
-i
se interpreta como un gráfico de filtro lavfi, debido a-f lavfi
.-showmode 0
deshabilita la ventana del visualizador de audio predeterminado de ffplay, que se muestra por defecto para las entradas de solo audioComo puede ver en la salida de
ffmpeg -h filter=anoisesrc
, puede elegir entre ruido marrón / rosa / blanco con la amplitud y frecuencia de muestreo que desee, opcionalmente con una duración finita.También puedes usar
mpv
una buena bifurcación de mplayer u otros jugadores que permitan filtros gráficos ffmpeg. p.ejEsto puede ser útil si tiene una configuración de salida de audio personalizada configurada para su reproductor favorito.
fuente
Veo que nadie lo ha usado
aplay
aún, así que intente lo siguiente:No es terriblemente imaginativo, así que agregué un temporizador para compensar :). La
duration
configuración es en segundos, por lo que esto se ejecutará durante 1 hora y luego se apagará, con suerte el bebé se habrá asentado para entonces ...fuente
El ruido blanco es matemáticamente una distribución uniforme de frecuencias. Puede producirlo con datos aleatorios de
/dev/random
o/dev/urandom
. Si desea cambiar el "tono" del ruido producido (por ejemplo, para hacerlo menos "pesado" eliminando las frecuencias más bajas, o para "amortiguarlo" eliminando las frecuencias más altas), puede usar un comando comodd bs=1 if=/dev/urandom of=whitenoise.raw count=1048576
para generar algo de ruido blanco, luego impórtelo a Audacity y use los filtros de paso alto y bajo para ajustarlo a su gusto (cuando use los filtros recuerde que el oído humano promedio escuchará frecuencias de hasta 20 kHz).EDITAR: Audacity también puede generar ruido blanco en sí mismo.
fuente
Tom Swiss de unreasonable.org usa el siguiente código (usando
sox
) para generar ruido blanco / rosa. Primero deberá instalar sox (sudo apt install sox
), luego crear un script de shell con el siguiente código:Punta de sombrero http://unreasonable.org/white_noise_generator_with_sox_for_Linux
Descargo de responsabilidad: todavía no lo he probado
fuente
len='7:00:00'
,if [ "$1" != '' ];then
yfi
, agregando soporte para ruido infinito.También está Renoise, un secuenciador de audio multiplataforma muy potente, aunque la versión completa es comercial. Sin embargo, la versión demo no tiene muchas limitaciones y le permitirá hacer lo que quiera y agregar filtros, efectos, etc. al sonido generado.
http://www.renoise.com
El verdadero ruido blanco con un filtro de paso bajo, y tal vez algunos coros y reverberaciones agregados para un efecto natural agradable, sonarían bastante agradables.
fuente