Waveform Buffer Threshold Management for Audio Noise Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional musical sound generation devices face issues with musically unacceptable noise due to the write pointer potentially passing the read pointer in the waveform buffer, leading to incomplete data transfer and silencing of sound production channels without considering the importance of sounds, especially when the read speed increases and the number of simultaneous sounds produced increases.
Innovation Solution
The implementation of an electronic musical instrument with a processor that sets specific threshold margin values for each waveform buffer region, identifies when the waveform read margin reaches these thresholds, and stops sound generation from the identified buffer region to prevent noise, allowing for differentiated priority management and efficient data transfer.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If waveform data is transferred from first memory to waveform buffer in second memory for multiple sound production channels, then the number of simultaneously producible sounds increases, but the read speed increases and the waveform read margin decreases, causing the write pointer to potentially pass the read pointer and generate noise
Solution Approach 1:
The patent dynamically adjusts the threshold margin value based on the playback pitch. When playback pitch increases, the read speed increases, so the threshold margin value is increased to maintain an adequate waveform read margin. This parameter adjustment prevents the write pointer from passing the read pointer while allowing multiple sounds to be produced simultaneously.
Solution Approach 2:
The system continuously monitors the waveform read margin by comparing the write pointer position and read pointer position in the waveform buffer. When the margin approaches the threshold, the system provides feedback to stop sound generation for that channel, preventing the write pointer from passing the read pointer and maintaining audio quality.
2Device complexity
If a single threshold value is used for all waveform buffers, then the system complexity is reduced, but the probability of read pointer catching up to write pointer increases when read speed is high, causing musically unacceptable sounds
Solution Approach 1:
The patent assigns different threshold margin values to different waveform buffers based on their specific characteristics and playback requirements. Each waveform buffer has a customized threshold that accounts for its read speed, allowing the system to maintain adequate margins for high-speed buffers while using lower thresholds for slower buffers, thereby preventing read pointer catch-up without excessive complexity.
3Productivity
If waveform data transfer continues until just before write pointer passes read pointer, then data transfer efficiency is maximized, but discrepancies in waveform data amounts across buffers cause undesirable silencing of sound channels
Solution Approach 1:
The system performs preliminary actions by proactively stopping sound generation for a waveform buffer when the waveform read margin approaches the threshold value, before the write pointer actually passes the read pointer. This preventive measure ensures complete data transfer and maintains consistent waveform data amounts across all buffers, preventing undesirable silencing while maintaining high transfer efficiency.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
An electronic musical instrument includes a first memory storing a plurality of waveform data; and a second memory having a plurality of waveform buffer regions that respectively function as ring buffers, wherein one of a processor or a sound source executes the following: setting a plurality of threshold margin values respectively for the plurality of waveform buffer regions, at least some of the threshold margin values are different from each other; identifying, at a prescribed timing, among the plurality of waveform buffer regions, a waveform buffer region in which a waveform read margin calculated for said waveform buffer region reaches the threshold margin value set and assigned to said waveform buffer region; and stopping a sound that has been generated from the waveform data read from the waveform buffer region that is identified by the identified process.