Genera ruido blanco para calmar a un bebé

121

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-dlde 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/urandomy 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 ☹

Oli
fuente
29
Ver otras respuestas para el lado técnico. El experto en prácticas dice que hay CD de ruido de surf / lluvia / cascada que pueden no ser un ruido blanco matemáticamente puro, pero que probablemente estén mucho más cerca del dulce relajante que está buscando (y probablemente en el origen de la reputación del ruido blanco )
xenoid
55
¿Funcionaría esto ?
Mitch
66
La publicación a la que apuntó @Mitch no hace referencia a la 'nota marrón'. "El término" ruido marrón "no se origina en el color, sino en Robert Brown, quien descubrió el movimiento browniano".
Adrian
44
¿Sintoniza la radio lejos de cualquier canal?
gerrit
12
A menos que ya haya enseñado la prueba de ji cuadrado de su bebé Pearson , la aleatoriedad verdadera no es un gran problema.
PyRulez

Respuestas:

152

Use la navaja suiza para la generación de sonido, SoX .

Lo instala desde los repositorios oficiales, simplemente escribiendo:

sudo apt-get install sox

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.

play -n synth brownnoise synth pinknoise mix synth sine amod 0.3 10

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.3Hz con un desplazamiento del 10% 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 antes brownnoise. Aquí hay un ejemplo para una hora:

    play -n synth 1:0:0 brownnoise synth pinknoise mix synth sine amod 0.3 10
    
  • 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.3en el comando anterior). El número representa la cantidad de ondas por segundo, por lo que una frecuencia de 0.1Hz causará 0.1 ondas por segundo y, por lo tanto, hará que una onda dure 10 segundos:

    play -n synth brownnoise synth pinknoise mix synth sine amod 0.1 10
    
  • 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 con 20% de ruido de fondo:

    play -n synth brownnoise synth pinknoise mix synth sine amod 0.3 20
    

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:

play -n synth whitenoise

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:

play -n synth 01:30:00 whitenoise

Incluso te muestra algunas buenas estadísticas mientras "juegas":

$ play -n synth 00:00:05 whitenoise 

  Encoding: n/a           
  Channels: 1 @ 32-bit   
Samplerate: 48000Hz      
Replaygain: off         
  Duration: unknown      

In:0.00% 00:00:05.12 [00:00:00.00] Out:240k  [!=====|=====!] Hd:0.0 Clip:0    
Done.
Byte Commander
fuente
66
Edité mi respuesta y agregué un elegante pero simple comando de generador de sonido de olas oceánicas que complacerá a los oídos del bebé (y de papá) mucho más que el simple ruido blanco.
Byte Commander
2
Me encanta esto, pero el cambio de volumen de la onda sinusoidal no se parece mucho al sonido de las olas en la playa. Necesita aumentar su volumen bastante rápido a medida que la ola rompe en la playa, luego se cae mucho más lentamente. ¿Hay alguna manera de lograr eso?
César
77
@ Caesar, hay un límite para lo bueno que puedes ser con estas herramientas, pero creo que play -n synth brownnoise synth pinknoise mix synth 0 0 0 15 40 80 trapezium amod 0.2 10está más cerca de lo que estás pidiendo :)
hobbs
1
@hobbs y ahora si la frecuencia de repetición no fuera tan regular ... ;-)
:-P
2
+1. Aquí está mi versión ajustada: play -n synth brownnoise synth pinknoise mix synth 0 0 0 10 10 40 trapezium amod 0.1 30el 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.
Tobia
44

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.

ruiseñor
fuente
25
Si bien tiene un punto allí, esto no responde la pregunta.
Leftaroundabout
19
@leftaroundabout Si salva la audición de un bebé, creo que está permitido. Incluso si es técnicamente mejor publicado como un comentario en lugar de una respuesta; está haciendo más bien que mal. ¡Gracias por señalar esto, ruiseñor, y bienvenido a AskUbuntu!
Nick Weinberg
18
Una respuesta que dice "No, no quieres eso" es un juego justo. Las otras respuestas que sugieren el ruido "rosa" parecen tener esto en cuenta. Esta respuesta sería mejor si continuara explicando eso pero todavía es +1 de mi parte.
Oli
22
@ ΈρικΚωνσταντόπουλος Soy un buen amigo del OP. Además, pidió un ruido para "calmar a un bebé". Los ruidos tortuosos rara vez son calmantes.
Oli
8
Si bien normalmente odio "no, en realidad no quieres (o no quieres) estas" respuestas y comentarios, creo que la distinción entre ruido blanco real y "ruido blanco" coloquial es lo suficientemente importante como para que esta respuesta valga la pena. +1.
Kyle Strand
28

Puede generar ruido rosa con el comando play de las utilidades de los sox:

sudo apt-get install sox
play -t sl -r48000 -c2 -n synth -1 pinknoise .1 60

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

Colin Ian King
fuente
Creo speaker-testque 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?
44
@ bc2946088 de 12 horas de ruido blanco puro se puede lograr conplay -n synth 12:00:00 whitenoise
Nick Weinberg
55
Usted dice que puedo ajustar ellos, pero ¿qué hacen los .1y 60argumentos significa realmente?
Oli
El .1 es algo irrelevante aquí; el 60 es el desplazamiento DC. Cuanto más bajo sea, más rango (en amplitud) tendrá en la forma de onda, si lo coloca más cerca de 100 hará que tenga menos rango, ya que está casi al 100% del rango completo.
Colin Ian King
21

No estoy seguro de que esto produzca ruido blanco real que cubra todo el espectro, pero un simple

pacat /dev/urandom

parece hacer el truco en mi sistema (no es necesario instalar nada nuevo o agregar un repositorio).

dadexix86
fuente
Eso ciertamente se parece mucho al ruido blanco que soxproduce.
Oli
2
@linolino ¿no estás en Ubuntu? Si es así, debe instalarse (a menos que lo elimine manualmente). Es proporcionado por 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.
dadexix86
1
A menos que estén usando una versión de servidor.
Arronical
1
En cualquier caso, aún puede usar en aplaylugar de pacat. alsa-utilsparece estar instalado por defecto.
Ruslan
1
@ dadexix86 en realidad tengo un lubuntu. De todos modos, de alguna manera no funciona en mi caso después de apt-get install. Pero la solución ByteDefenders funciona bien ;-)
linolino
15

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.

sudo add-apt-repository ppa:costales/anoise
sudo apt-get update
sudo apt-get install anoise

ANoise Code , y para sonido extra de río:

sudo apt-get install anoise-community-extension1
Mitch
fuente
+1 Uso Anoise todo el tiempo. Pero tiene algunos errores importantes con 16.04.
UniversallyUniqueID
10

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.

Marin
fuente
6

La utilidad instalada por defecto speaker-testgenera ruido rosa (que, como @nightingale, es lo que realmente quieres, no ruido blanco). Se puede configurar para hacerlo indefinidamente ejecutando

speaker-test -l 0
Jules
fuente
5

FFMpeg tiene un filtro de fuente de ruido de audio. Puedes jugarlo usandoffplay :

ffplay -f lavfi -showmode 0 -i 'anoisesrc=color=brown'

El argumento to -ise interpreta como un gráfico de filtro lavfi, debido a -f lavfi. -showmode 0deshabilita la ventana del visualizador de audio predeterminado de ffplay, que se muestra por defecto para las entradas de solo audio

Como 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 mpvuna buena bifurcación de mplayer u otros jugadores que permitan filtros gráficos ffmpeg. p.ej

mpv  av://lavfi:anoisesrc=color=brown

Esto puede ser útil si tiene una configuración de salida de audio personalizada configurada para su reproductor favorito.

Peter Cordes
fuente
5

Veo que nadie lo ha usado aplayaún, así que intente lo siguiente:

aplay --channels=2 --format=S16_LE --rate=44100 --duration=3600 /dev/urandom

No es terriblemente imaginativo, así que agregué un temporizador para compensar :). La durationconfiguració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 ...

andrew.46
fuente
3

El ruido blanco es matemáticamente una distribución uniforme de frecuencias. Puede producirlo con datos aleatorios de /dev/randomo /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 como dd bs=1 if=/dev/urandom of=whitenoise.raw count=1048576para 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.

Micheal Johnson
fuente
2

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:

#!/bin/sh

len='7:00:00'

if [ "$1" != '' ]; then
  len=$1
fi

play -t sl - synth $len  pinknoise band -n 1200 200 tremolo 20 .1 < /dev/zero

Punta de sombrero http://unreasonable.org/white_noise_generator_with_sox_for_Linux

Descargo de responsabilidad: todavía no lo he probado

Nick Weinberg
fuente
Eso genera una frecuencia de muestreo de 8kHz, por lo que no hay energía de ruido por encima de 4kHz. : / El ruido rosado adecuado debería tener algo. Sin embargo, una sugerencia interesante para usar un filtro de vibrato / tremolo en el ruido.
Peter Cordes
1
Mejor solución? Eliminar len='7:00:00', if [ "$1" != '' ];theny fi, agregando soporte para ruido infinito.
EKons
1

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.

delt
fuente