2
ลดระดับเสียงพูดเพื่อลบเนื้อหาทางอารมณ์
ฉันยินดีที่จะรับข้อเสนอแนะทั้งใน R หรือ Matlab แต่รหัสที่ฉันแสดงด้านล่างคือ R-only ไฟล์เสียงที่แนบมาด้านล่างเป็นการสนทนาสั้น ๆ ระหว่างคนสองคน เป้าหมายของฉันคือการบิดเบือนคำพูดของพวกเขาเพื่อให้เนื้อหาทางอารมณ์จะกลายเป็นไม่รู้จัก ความยากลำบากคือฉันต้องการพื้นที่ว่างสำหรับการบิดเบือนนี้พูดได้ตั้งแต่ 1 ถึง 5 โดยที่ 1 คือ 'อารมณ์ที่จดจำได้สูง' และ 5 คือ 'อารมณ์ที่ไม่รู้จัก' มีสามวิธีที่ฉันคิดว่าฉันสามารถใช้เพื่อให้บรรลุด้วยอาร์ 'ความสุข' คลื่นเสียงดาวน์โหลดได้จากที่นี่ ดาวน์โหลด 'โกรธ' คลื่นเสียงจากที่นี่ วิธีแรกคือการลดความเข้าใจโดยรวมโดยการลดเสียงรบกวน โซลูชันนี้มีการนำเสนอด้านล่าง (ขอบคุณ @ carl-witthoft สำหรับคำแนะนำของเขา) สิ่งนี้จะลดทั้งความเข้าใจและเนื้อหาทางอารมณ์ของคำพูด แต่มันเป็นวิธีที่ 'สกปรก' - ยากที่จะทำให้ถูกต้องเพื่อให้ได้พื้นที่พาราเมทริกเพราะสิ่งเดียวที่คุณสามารถควบคุมได้คือความกว้างของเสียง require(seewave) require(tuneR) require(signal) h <- readWave("happy.wav") h <- cutw(h.norm,f=44100,from=0,to=2)#cut down to …