Patent application number | Description | Published |
20080229912 | SHARED BUFFER MANAGEMENT FOR PROCESSING AUDIO FILES - This disclosure describes techniques that make use of a summing buffer that receives waveform samples from audio processing elements, and sums and stores the waveform sums for a given frame. In one example, a method comprises summing a waveform sample received from an audio processing element to produce a waveform sum associated with a first audio frame, storing the waveform sum in a memory, wherein the memory is logically partitioned into a plurality of memory blocks, and locking memory blocks containing the waveform sum associated with the first audio frame, transferring contents of locked memory blocks to an external processor, unlocking a memory block after contents of the memory block have been transferred to the external processor, and storing a waveform sum associated with a second audio frame within the unlocked memory block concurrently with transferring contents of remaining locked memory blocks associated with the first audio frame. | 09-25-2008 |
20080229916 | EFFICIENT IDENTIFICATION OF SETS OF AUDIO PARAMETERS - Techniques are described of efficiently identifying sets of audio parameters to be applied during a time frame. For example, a list of indicators may be generated. Each of the indicators in the list may indicate a Musical Instrument Digital Interface (MIDI) voice present in a MIDI frame. Furthermore, in generating the list, the indicators in the list may be restricted to those indicators that indicate the most acoustically significant MIDI voices in the MIDI frame. After the list is generated, a digital waveform may be generated for each of MIDI voices indicated by an indicator in the list. A combination of the waveforms of each MIDI voice may constitute an overall waveform for the MIDI frame. | 09-25-2008 |
20080229917 | MUSICAL INSTRUMENT DIGITAL INTERFACE HARDWARE INSTRUCTIONS - Techniques are described of generating a digital waveform for a Musical Instrument Digital Interface (MIDI) voice using a set of machine-code instructions that is specialized for the generation of digital waveforms for MIDI voices. For example, a processor may execute a software program that generates a digital waveform for a MIDI voice. The instructions of the software program may be machine code instructions from an instruction set that is specialized for the generation of digital waveforms for MIDI voices. In particular, the execution of one of the instructions may involve a selection of an operation based on a set of parameters that define a MIDI voice and the performance of the selected operation. | 09-25-2008 |
20080229918 | PIPELINE TECHNIQUES FOR PROCESSING MUSICAL INSTRUMENT DIGITAL INTERFACE (MIDI) FILES - This disclosure describes techniques for processing audio files that comply with the musical instrument digital interface (MIDI) format. In particular, various tasks associated with MIDI file processing are delegated between software operating on a general purpose processor, firmware associated with a digital signal processor (DSP), and dedicated hardware that is specifically designed for MIDI file processing. Alternatively, a multi-threaded DSP may be used instead of a general purpose processor and the DSP. In one aspect, this disclosure provides a method comprising parsing MIDI files and scheduling MIDI events associated with the MIDI files using a first process, processing the MIDI events using a second process to generate MIDI synthesis parameters, and generating audio samples using a hardware unit based on the synthesis parameters. | 09-25-2008 |
20080229919 | AUDIO PROCESSING HARDWARE ELEMENTS - This disclosure describes techniques that make use of a plurality of hardware elements that operate simultaneously to service synthesis parameters generated from one or more audio files, such as musical instrument digital interface (MIDI) files. In one example, a method comprises storing audio synthesis parameters generated for one or more audio files of an audio frame, processing a first audio synthesis parameter using a first audio processing element of a hardware unit to generate first audio information, processing a second audio synthesis parameter using a second audio processing element of the hardware unit to generate second audio information, and generating audio samples for the audio frame based at least in part on a combination of the first and second audio information. | 09-25-2008 |
20080229920 | METHOD AND DEVICE FOR GENERATING TRIANGULAR WAVES - This disclosure describes techniques for generating a set of data points that form a triangular wave having a desired gain and a desired frequency. In one example, the method includes the step of (a) determining an increment value based on the desired frequency and the desired gain of the triangular wave. The method further includes the step of (b) adding the increment value to a current data point to generate a next data point, the current data point and the next data point forming a subset of the set of data points. The method further includes the step of iteratively performing (a) and (b) to generate the set of data points that form the triangular wave. | 09-25-2008 |
20080235494 | MUSICAL INSTRUMENT DIGITAL INTERFACE HARDWARE INSTRUCTION SET - Generating a digital waveform for a Musical Instrument Digital Interface (MIDI) voice using a set of machine-code instructions that is specialized for the generation of digital waveforms for MIDI voices. For example, a processor may execute a software program that generates a digital waveform for a MIDI voice. The instructions of the software program may be machine code instructions from an instruction set that is specialized for the generation of digital waveforms for MIDI voices. | 09-25-2008 |