1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html> 3 4<head> 5<LINK rel="stylesheet" type="text/css" href="../../CSS/revolution.css"> 6<title>SEQRunAudioFrame</title> 7<META http-equiv="Content-Type" content="text/html; charset=windows-1252"> 8<META http-equiv="Content-Style-Type" content="text/css"> 9</head> 10 11<body> 12 13<h1 align="left">SEQRunAudioFrame</h1> 14 15<h2>Syntax</h2> 16<dl><dd><pre class="construction"> 17#include <revolution.h> 18#include <revolution/seq.h> 19 20void SEQRunAudioFrame(void); 21</pre></dd></dl> 22 23<h2>Arguments</h2> 24<p>None.</p> 25 26<h2>Return Values</h2> 27<p>None.</p> 28 29<h2>Description</h2> 30<p>The <code>SEQRunAudioFrame</code> function runs the sequence process for a single audio frame. It must be called from the AX callback routine for each audio frame. For example:</p> 31 32<BLOCKQUOTE> 33<pre><CODE>static void callbackForAudioFrame(void) 34{ 35SEQRunAudioFrame(); // Runs MIDI sequencer 36SYNRunAudioFrame(); // Runs synthesizer 37MIXUpdateSettings(); // Reflects the setting changes made by SYN 38} 39 40void main(void) 41{ 42 ... 43 44 AXInit(); 45 MIXInit(); 46 SYNInit(); 47 SEQInit(); 48 AXRegisterCallback(&callbackAudioFrame); 49 50 ... 51 52 SEQQuit(); 53 SYNQuit(); 54 MIXQuit(); 55 AXQuit(); 56 ... 57}</CODE></pre> 58</BLOCKQUOTE> 59 60<p><CODE>SEQRunAudioFrame</CODE> can run with interrupts enabled.</p> 61 62<h2>See Also</h2> 63<p class="reference"> 64<a href="../../ax/Initialization/AXRegisterCallback.html">AXRegisterCallback</a>, 65<a href="../Synthesizer/SYNRunAudioFrame.html">SYNRunAudioFrame</a>, 66<a href="../Mixer/MIXUpdateSettings.html">MIXUpdateSettings</a> 67</p> 68 69<h2>Revision History</h2> 70<P> 712006/03/01 Initial version.<BR> 72</P> 73 74<hr><p>CONFIDENTIAL</p></body> 75</html> 76