สร้างเสียงสีขาวเพื่อทำให้ลูกสงบ


121

ฉันมีลูกสามสัปดาห์ เธอไม่ยอมนอนเป็นครั้งคราว บางคนบอกฉันว่านี่เป็นวิถีชีวิตคือบางคนบอกฉันว่าฉันต้องซื้อสิ่งต่าง ๆ เพื่อแก้ไข นี่เป็นรูปแบบที่พบได้ทั่วไปในเกมการเลี้ยงดูนี้

อย่างไรก็ตามหนึ่งในสิ่งเหล่านี้ "ฉันต้องการซื้อ" เป็นเครื่องกำเนิดเสียงสีขาว เสียงสีขาวหมายถึง:

สัญญาณแบบสุ่มถือว่าเป็น "สัญญาณรบกวนสีขาว" หากพบว่ามีคลื่นความถี่คงที่ตลอดช่วงความถี่ที่เกี่ยวข้องกับบริบท สำหรับสัญญาณเสียงตัวอย่างเช่นช่วงที่เกี่ยวข้องคือย่านความถี่เสียงที่ได้ยินได้ระหว่าง 20 ถึง 20,000 Hz

มีหลายสิ่งที่ฉันสามารถซื้อได้ แอพสำหรับ Android กล่องเฉพาะที่ฉันแน่ใจว่าเพิ่งเล่นคลิปเล็ก ๆ ของเสียงรบกวนที่สร้างไว้ล่วงหน้าไปจนถึงเครื่องกำเนิดเสียงสีขาวแบบสุ่มราคาแพงขนาดใหญ่

ฉันต้องการสร้างตัวอย่างเสียงสีขาวของตัวเอง

ฉันรู้ว่าฉันสามารถดาวน์โหลดหนึ่งวิดีโอyoutube-dlจากหนึ่งในหลาย ๆวิดีโอที่นั่น แต่ลิขสิทธิ์กันการบีบอัดความถี่เป็นที่น่ากลัวออนไลน์ที่ฉันต้องการความดีความถี่สีขาวเต็ม หากสิ่งนั้นมีอยู่จริง บวกฉันเป็นคนตะกละสำหรับการลงโทษและฉันเชื่อว่าหากสิ่งที่สามารถทำได้ผ่านบรรทัดคำสั่งนั่นคือวิธีที่เราควรจะทำมัน นั่นเป็นวิธีที่ฉันตั้งเป้าหมายที่จะเลี้ยงอันนี้ต่อไป

ดังนั้นเราจึงมีสิ่งที่ต้องการและ/dev/urandom paplayมีวิธีที่เหมาะสมในการใช้ข้อมูลแบบสุ่มและส่งสัญญาณเสียงในช่วงเสียงสีขาวที่ได้ยินและออกจากลำโพงของฉันหรือไม่? คำตอบที่เขียนไปยังไฟล์ก็โอเคเช่นกัน สิ่งที่สำคัญคือตัวอย่างที่ จำกัด ขอบเขตอย่างต่อเนื่อง ไม่มี squawks

หมายเหตุ: คำตอบที่สร้างบันทึกสีน้ำตาลจะไม่ได้รับการชื่นชม☹


29
ดูคำตอบอื่น ๆ สำหรับฝ่ายเทคโนโลยี ในทางปฏิบัติฉันบอกว่ามีซีดีเสียงท่อง / ฝน / น้ำตกที่อาจไม่ใช่เสียงสีขาวบริสุทธิ์ในเชิงคณิตศาสตร์ แต่อาจใกล้กับขนมหูที่คุณกำลังมองหา (และน่าจะเป็นที่มาของชื่อเสียงของเสียงสีขาว) )
xenoid

5
Would นี้ทำงานหรือไม่
มิทช์

6
โพสต์ที่ @Mitch ชี้ไปที่ไม่ได้อ้างอิงถึง 'โน้ตสีน้ำตาล' "คำว่า" Brown noise "ไม่ได้เกิดจากสี แต่มาจาก Robert Brown ผู้ค้นพบการเคลื่อนไหว Brownian"
Adrian

4
ปรับวิทยุออกจากช่องใด ๆ
gerrit

12
เว้นแต่ว่าคุณได้สอนการทดสอบไคสแควร์ของเพียร์สันลูกน้อยของคุณการสุ่มตัวอย่างที่แท้จริงไม่ได้เป็นเรื่องใหญ่เกินไป
PyRulez

คำตอบ:


152

ใช้มีดทหารสวิสสำหรับการสร้างเสียงSoX

คุณติดตั้งจากที่เก็บอย่างเป็นทางการเพียงแค่พิมพ์:

sudo apt-get install sox

อัปเดต, คำตอบแฟนซี (คลื่นทะเลที่ชื่นชอบ):

หลังจากทดลองเล็กน้อยกับ SoX ฉันได้คำสั่งที่ยอดเยี่ยมนี้ซึ่งเลียนแบบเสียงพึมพำของทะเลพร้อมกับเสียงคลื่นที่ไหลลงบนหาดทรายเรียบในวันฤดูร้อนที่มีแดด ...

บทกวีที่ดีพอนี่คือคำสั่ง ฟังเอง

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

คำอธิบาย:

คำสั่งนี้สร้างและผสมเสียงสีน้ำตาลและเสียงสีชมพูซึ่งฉันพบว่าเป็นเสียงที่สบายที่สุดและเป็นธรรมชาติที่สุด จากนั้นมันจะสร้างคลื่นไซน์ของ0.3เฮิร์ตซ์ที่มีการชดเชย10% และใช้สิ่งนี้เพื่อปรับความกว้างของเสียงผสมของเราเพื่อสร้างเสียงของคลื่นมหาสมุทร

แก้ไข:

  • ตัวจับเวลา:
    คุณสามารถเพิ่มตัวจับเวลาและ จำกัด ระยะเวลาการเล่นได้โดยระบุจำนวนวินาทีจำนวนนาทีและวินาที ( mm:ss) หรือจำนวนชั่วโมงนาทีและวินาที ( hh:mm:ss) ก่อนหน้าbrownnoiseนี้ นี่คือตัวอย่างสำหรับหนึ่งชั่วโมง:

    play -n synth 1:0:0 brownnoise synth pinknoise mix synth sine amod 0.3 10
    
  • ความถี่คลื่น:
    หากคุณต้องการให้คลื่นกระทบชายหาดบ่อยขึ้นหรือน้อยลงเพียงเปลี่ยนความถี่ของคลื่นไซน์ที่ใช้สำหรับการปรับเปลี่ยนแอมพลิจูด ( 0.3ในคำสั่งด้านบน) จำนวนแสดงจำนวนคลื่นต่อวินาทีดังนั้นความถี่ของ0.1Hz จะทำให้เกิดคลื่น 0.1 ต่อวินาทีและทำให้คลื่นหนึ่งคลื่นมีอายุ 10 วินาที:

    play -n synth brownnoise synth pinknoise mix synth sine amod 0.1 10
    
  • ระดับเสียงต่ำสุดของพื้นหลัง:
    ไซน์ที่ใช้สำหรับการปรับความกว้างได้เปลี่ยนไปที่ออฟเซ็ตของ10% ดังนั้นเสียงสีน้ำตาลสีชมพูจะเล่นด้วยระดับความดังอย่างน้อย 10% หากคุณต้องการเสียงพื้นหลังที่แรงขึ้นหรืออ่อนแอลงให้เพิ่มหรือลดออฟเซ็ตนี้ตามความต้องการของคุณ นี่คือตัวอย่างที่มี20% เสียงรบกวนพื้นหลัง:

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

เก่าคำตอบที่น่าเบื่อ (เสียงสีขาวธรรมดา):

ตอนนี้คำสั่งที่ง่ายที่สุดในการเล่นเสียงสีขาวไม่ จำกัด (จนกว่าคุณจะยกเลิกด้วยCtrl+ C) คือ:

play -n synth whitenoise

หากคุณต้องการการ จำกัด hh:mm:ssเวลาคุณอาจเพิ่มว่าในรูปแบบ คำสั่งต่อไปนี้จะส่งเสียงเป็นเวลาหนึ่งชั่วโมงครึ่งเช่น

play -n synth 01:30:00 whitenoise

มันยังแสดงให้คุณเห็นสถิติที่ดีในขณะที่ "กำลังเล่น":

$ 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.

6
ฉันแก้ไขคำตอบของฉันและเพิ่มคำสั่งกำเนิดเสียงคลื่นทะเลที่เรียบง่าย แต่เรียบง่ายซึ่งจะทำให้หูของทารก (และพ่อ) มีความสุขมากกว่าเสียงสีขาวธรรมดา
ผู้บัญชาการ Byte

2
ฉันชอบสิ่งนี้ - แต่การเปลี่ยนแปลงปริมาณคลื่นไซน์ไม่เหมือนเสียงคลื่นบนชายหาด มันจำเป็นต้องเพิ่มปริมาณมากขึ้นอย่างรวดเร็วเมื่อคลื่นแตกบนชายหาดจากนั้นก็ตกลงไปอย่างช้าๆ มีวิธีการที่จะบรรลุเป้าหมายนั้นหรือไม่?
Caesar

7
@Caesar มีข้อ จำกัด วิธีการที่ดีที่คุณจะได้รับกับเครื่องมือเหล่านี้ แต่ฉันคิดว่าplay -n synth brownnoise synth pinknoise mix synth 0 0 0 15 40 80 trapezium amod 0.2 10เป็นผู้ใกล้ชิดกับสิ่งที่คุณขอ :)
ฮอบส์

1
@ ฮอบส์และตอนนี้ถ้าความถี่การทำซ้ำไม่ปกติ ... ;-) :-P
Rmano

2
+1 นี่คือเวอร์ชันที่ปรับแต่งแล้วของฉัน: play -n synth brownnoise synth pinknoise mix synth 0 0 0 10 10 40 trapezium amod 0.1 30ช่วงเวลาที่ยาวนานทำให้ยากที่จะสังเกตเห็นความสม่ำเสมอ ตัวเลขหมายถึง: 0.1 = ความถี่การชนของคลื่น (0.1 Hz = หนึ่งคลื่นทุก ๆ 10 วินาที); 30% = ระดับเสียงรบกวนในระหว่างคลื่น 1st 10% = ระยะเวลา (มากกว่า 10 วินาที) ของส่วนที่เพิ่มขึ้นของคลื่น 10% 2 = เมื่อเริ่มลดลง (ทั้งคู่เป็น 10% เพื่อให้คลื่นหยุดทำงานทันทีที่ปริมาณเพิ่มขึ้น) ระยะเวลา 40% ของคลื่นทั้งหมด: หมายถึง 100% - 40% = 60% ของเวลาที่ใช้รอระหว่างคลื่น
Tobia

44

เสียงสีขาวกำลังทรมาน

โดยเฉพาะอย่างยิ่งสำหรับหูที่บอบบางของเด็กทารก

นี่เป็นเพราะเสียงสีขาวมีพลังงานมากเกินไปในความถี่สูง


25
ในขณะที่คุณมีจุดอยู่ตรงนี้ไม่ตอบคำถาม
leftaroundabout

19
@leftaroundabout ถ้ามันช่วยลดการได้ยินของทารกฉันคิดว่ามันอนุญาต แม้ว่ามันโพสต์ในทางเทคนิคดีกว่าเป็นความคิดเห็นแทนคำตอบ; มันทำได้ดีกว่าอันตราย ขอบคุณสำหรับการชี้เรื่องนี้ไนติงเกลและยินดีต้อนรับสู่ AskUbuntu!
Nick Weinberg

18
คำตอบที่บอกว่า "ไม่คุณไม่ต้องการ" เป็นเกมที่ยุติธรรม คำตอบอื่น ๆ ที่แนะนำเสียง "สีชมพู" ดูเหมือนจะคำนึงถึงเรื่องนี้ คำตอบนี้จะดีกว่าถ้ามันยังอธิบายต่อไป แต่ก็ยัง +1 จากฉัน
Oli

22
@ ΈρικΚωνσταντόπουλοςฉันเป็นเพื่อนที่ดีกับ OP อีกทั้งเขาขอให้ส่งเสียง "สงบทารก" เสียงคดเคี้ยวไม่สงบ
Oli

8
ในขณะที่ฉันมักจะเกลียด "ไม่คุณไม่ต้องการ (หรือไม่ควร) ต้องการ" คำตอบและความคิดเห็นนี้ฉันรู้สึกเหมือนความแตกต่างระหว่างเสียงสีขาวจริงและเสียงพูดขาว "มีความสำคัญพอที่คำตอบนี้คุ้มค่า +1
Kyle Strand

28

คุณสามารถสร้างเสียงสีชมพูโดยใช้คำสั่งเล่นจากโปรแกรมอรรถประโยชน์ sox:

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

ปรับค่าของ. 1 และ 60 เพื่อให้เหมาะกับความต้องการของคุณ เสียงสีชมพูดังก้องที่หูน้อยลงและหวังว่าจะเป็นเสียงที่คุณต้องการ


ฉันคิดว่าspeaker-testทำสิ่งนี้ด้วยเช่นกัน แต่ฉันคิดว่าเสียงสีชมพูน้อยกว่าที่ดีที่สุดมันเป็นเสียงที่แน่นอน แต่ถ้าไม่มีความผันแปรอาจไม่เป็นที่ต้องการ

4
@ bc2946088 สามารถได้ยินเสียงสีขาวบริสุทธิ์ได้นาน 12 ชั่วโมงplay -n synth 12:00:00 whitenoise
Nick Weinberg

5
คุณบอกว่าฉันสามารถปรับได้ แต่สิ่งที่.1และ60ข้อโต้แย้งหมายถึงอะไรจริง?
Oli

.1 นั้นไม่เกี่ยวข้องเลย 60 คือ DC offset ด้านล่างมันเป็นช่วงเพิ่มเติม (ในแอมพลิจูด) ที่คุณมีในรูปแบบของคลื่นการตั้งค่าให้ใกล้กับ 100 จะทำให้ช่วงนั้นมีช่วงที่น้อยลง
โคลินเอียนคิง

21

ไม่แน่ใจว่าสิ่งนี้จะสร้างเสียงสีขาวจริงที่ครอบคลุมทั้งสเปกตรัม แต่เป็นเรื่องง่าย

pacat /dev/urandom

ดูเหมือนว่าจะทำเคล็ดลับในระบบของฉัน (ไม่จำเป็นต้องติดตั้งอะไรใหม่หรือเพิ่มพื้นที่เก็บข้อมูล)


แน่นอนว่าเสียงมากเช่นเสียงสีขาวที่soxผลิต
Oli

2
@linolino ไม่ได้เป็นของคุณบน Ubuntu หรือ หากคุณมีจะต้องติดตั้ง (ยกเว้นว่าคุณจะลบมันด้วยตนเอง) จัดทำโดยpulseaudio-utilsที่เป็นส่วนหนึ่งของระบบสด (ดูรายการ ) หากคุณไม่มีมันแสดงว่าการติดตั้งของคุณอาจเสียหาย ฉันขอแนะนำให้คุณเปิดคำถามใหม่เพื่ออธิบายปัญหาและขอความช่วยเหลือเกี่ยวกับวิธีคืนค่าการติดตั้งของคุณ
dadexix86

1
นอกเสียจากพวกเขากำลังใช้รุ่นเซิร์ฟเวอร์
Arronical

1
ในกรณีใด ๆ คุณยังสามารถใช้แทนaplay ดูเหมือนจะติดตั้งตามค่าเริ่มต้น pacatalsa-utils
Ruslan

1
@ dadexix86 ที่จริงฉันมี lubuntu แล้ว อย่างไรก็ตามอย่างใดไม่ทำงานในกรณีของฉันหลังจากติดตั้ง apt-get แต่การแก้ปัญหา ByteDefenders ทำงานได้ดี ;-)
linolino

15

ฉันเป็นคนตะกละสำหรับการลงโทษดังนั้นฉันจะให้วิธี GUI กับคุณ ลองดูที่ANoise

เสียงเริ่มต้นที่มาพร้อมกับเสียงนั้นไม่ดี แต่คุณสามารถดาวน์โหลดเสียงอื่น ๆ เช่น Forest Rain, Fountain และอื่น ๆ คุณสามารถตั้งค่าให้เริ่มต้นด้วยระบบและแม้กระทั่งตั้งให้หยุดหลังจากเวลาที่กำหนด

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

รหัส ANoiseและสำหรับเสียงแม่น้ำพิเศษ:

sudo apt-get install anoise-community-extension1

+1 ฉันใช้ Anoise ตลอดเวลา แต่มันมีข้อผิดพลาดที่สำคัญบางอย่างกับ 16.04
UniversallyUniqueID

10

เปิดความกล้า

ไปที่ "สร้าง> เสียงรบกวน ... "

เลือก "Brownian" (ให้เสียงก้าวร้าวน้อยกว่าเสียงสีขาวจริง) ความกว้างและระยะเวลาไม่สำคัญมาก

วนShiftซ้ำโดยใช้ปุ่ม + เล่น


6

ยูทิลิตี้ที่ติดตั้งโดยค่าเริ่มต้นspeaker-testจะสร้างเสียงสีชมพู (ซึ่ง @nightingale เป็นสิ่งที่คุณต้องการไม่ใช่เสียงสีขาว) มันสามารถตั้งค่าให้ทำไปเรื่อย ๆ โดยการเรียกใช้

speaker-test -l 0

5

FFMpeg มีตัวกรองแหล่งกำเนิดเสียงรบกวน คุณสามารถเล่นโดยใช้ffplay :

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

หาเรื่องที่จะ-iถูกตีความว่าเป็นกราฟกรอง lavfi -f lavfiเพราะ -showmode 0ปิดใช้งานหน้าต่าง Visualizer เสียงเริ่มต้นของ ffplay ซึ่งจะแสดงตามค่าเริ่มต้นสำหรับอินพุตเสียงเท่านั้น

ดังที่คุณเห็นจากเอาต์พุตffmpeg -h filter=anoisesrcคุณจะได้รับเสียงรบกวนจากน้ำตาล / ชมพู / ขาวในทุกช่วงกว้างที่คุณต้องการและเลือกสุ่มเลือกโดยมีระยะเวลา จำกัด


นอกจากนี้คุณยังสามารถใช้mpvตัวแยก mplayerหรือผู้เล่นอื่น ๆ ที่อนุญาตให้ใช้ ffmpeg filtergraphs เช่น

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

สิ่งนี้อาจมีประโยชน์หากคุณมีการตั้งค่าเสียงออกที่กำหนดเองสำหรับเครื่องเล่นโปรด


5

ฉันเห็นว่ายังไม่มีใครใช้aplayดังนั้นให้ลองทำสิ่งต่อไปนี้:

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

มันไม่ได้เป็นจินตนาการที่ยิ่งใหญ่ดังนั้นฉันได้เพิ่มในตัวจับเวลาเพื่อชดเชย :) การdurationตั้งค่าอยู่ในไม่กี่วินาทีดังนั้นมันจะทำงานเป็นเวลา 1 ชั่วโมงแล้วปิดหวังว่าทารกจะตัดสินโดย ...


3

เสียงสีขาวเป็นศาสตร์ของการกระจายความถี่ คุณสามารถสร้างมันขึ้นกับข้อมูลจากการสุ่มหรือ/dev/random /dev/urandomหากคุณต้องการเปลี่ยน "เสียง" ของเสียงรบกวนที่เกิดขึ้น (ตัวอย่างเช่นเพื่อทำให้ "น้ำหนักน้อยลง" โดยการลบความถี่ที่ต่ำกว่าหรือเพื่อให้ "ลดความสั่นสะเทือน" ด้วยการลบความถี่ที่สูงขึ้น) จากนั้นคุณสามารถใช้คำสั่งเช่นdd bs=1 if=/dev/urandom of=whitenoise.raw count=1048576สร้าง เสียงสีขาวบางส่วนจากนั้นนำเข้าสู่ Audacity และใช้ฟิลเตอร์ high-pass และ low-pass เพื่อปรับให้เข้ากับความชอบของคุณ (เมื่อใช้ฟิลเตอร์โปรดจำไว้ว่าหูมนุษย์โดยเฉลี่ยจะได้ยินความถี่สูงถึง 20kHz)

แก้ไข: ความกล้ายังสามารถสร้างเสียงสีขาวเอง


2

Tom Swiss จาก unreasonable.org ใช้รหัสต่อไปนี้ (ใช้sox) เพื่อสร้างเสียงสีขาว / ชมพู คุณจะต้องติดตั้ง sox ก่อน ( sudo apt install sox) จากนั้นสร้างเชลล์สคริปต์ด้วยรหัสต่อไปนี้:

#!/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

Hat tip http://unreasonable.org/white_noise_generator_with_sox_for_Linux

คำเตือน: ฉันยังไม่ได้ลองตัวเอง


เอาต์พุตนั้นมีอัตราการสุ่มตัวอย่าง 8kHz ดังนั้นจึงไม่มีพลังงานเสียงรบกวนเกิน 4kHz : / เสียงสีชมพูที่เหมาะสมควรมีบางอย่าง ข้อเสนอแนะที่น่าสนใจที่จะใช้ตัวกรอง vibrato / ลูกคอบนเสียง
ปีเตอร์กอร์เดส

1
ทางออกที่ดีกว่า ลบlen='7:00:00', if [ "$1" != '' ];thenและfiการสนับสนุนเพิ่มสำหรับเสียงที่ไม่มีที่สิ้นสุด
EKons

1

นอกจากนี้ยังมี Renoise ซึ่งเป็นซีเควนเสียงที่มีประสิทธิภาพในหลายแพลตฟอร์มแม้ว่าเวอร์ชั่นเต็มจะเป็นเวอร์ชั่นเชิงพาณิชย์ก็ตาม อย่างไรก็ตามรุ่นสาธิตไม่มีข้อ จำกัด มากมายและจะช่วยให้คุณทำสิ่งที่คุณต้องการและเพิ่มตัวกรองเอฟเฟกต์ ฯลฯ ลงในเสียงที่สร้างขึ้น

http://www.renoise.com

เสียงสีขาวจริงพร้อมตัวกรองสัญญาณเสียงต่ำและอาจมีการขับร้องและเสียงสะท้อนบางส่วนเพื่อให้ได้เอฟเฟกต์ธรรมชาติที่ดี

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.