Difference between revisions of "API Sound.LoadWav"

From Flowcode Help
Jump to navigationJump to search
(XML Import to change Variable types into Variable Types)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<sidebar>API contents</sidebar>
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
Loads a wave file into memory, providing the values needed to play it
+
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''LoadWav'''
 +
|-
 +
| colspan="2" | Loads a wave file into memory, providing the values needed to play it&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
 +
| width="90%" | Filename
 +
|-
 +
| colspan="2" | The formatted file to load into memory&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE[]
 +
| width="90%" | Buffer
 +
|-
 +
| colspan="2" | A buffer to write the wave data to&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
 +
| width="90%" | SampleFormat
 +
|-
 +
| colspan="2" | Variable to receive the format of the samples&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
 +
| width="90%" | Elements
 +
|-
 +
| colspan="2" | Variable to receive the number of sample elements to play&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
 +
| width="90%" | SampleRate
 +
|-
 +
| colspan="2" | Variable to receive the wave source sample rate&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
<div style="width:25%; float:right" class="toc">
 
====Class hierarchy====
 
[[API Sound|Sound]]
 
:[[API Sound|LoadWav]]
 
</div>
 
__TOC__
 
 
==Parameters==
 
[[Variable Types|STRING]] ''Filename''
 
:The formatted file to load into memory
 
 
[[Variable Types|BYTE[]]] ''Buffer''
 
:A buffer to write the wave data to
 
 
[[Variable Types|UINT]] ''SampleFormat''
 
:Variable to receive the format of the samples
 
:''This parameter is returned back to the caller''
 
 
[[Variable Types|ULONG]] ''Elements''
 
:Variable to receive the number of sample elements to play
 
:''This parameter is returned back to the caller''
 
 
[[Variable Types|FLOAT]] ''SampleRate''
 
:Variable to receive the wave source sample rate
 
:''This parameter is returned back to the caller''
 
  
 +
==Detailed description==
 +
This loads WAV files given a ''Filename'' to the data. The ''Filename'' may point to a resource file. The data in the file should be in a RIFF format, see [http://en.wikipedia.org/wiki/WAV WAV file] for a more detailed description of a WAV file.
  
==Return value==
 
[[Variable Types|BOOL]]
 
  
Returns true if the operation is a success, else false
+
On exit from the routine, the ''Buffer'', ''SampleFormat'', ''Elements'' and ''SampleRate'' are all updated to contain data read from the file. These are all written with zero values (''Buffer'' is not altered) if the call fails.
  
  
==Detailed description==
+
If ''Buffer'' is not large enough for the wave data it is resized in the call to an appropriate size.
''<span style="color:red;">No additional information</span>''
 
  
  
Line 43: Line 51:
 
* Declare a variable 'result' of type BOOL
 
* Declare a variable 'result' of type BOOL
 
* Add to a calculation icon: <pre class="brush:[cpp]">result = ::Sound.LoadWav("filename", _arraybuffer, return_sampleformat, return_elements, return_samplerate)</pre>
 
* Add to a calculation icon: <pre class="brush:[cpp]">result = ::Sound.LoadWav("filename", _arraybuffer, return_sampleformat, return_elements, return_samplerate)</pre>
 
''<span style="color:red;">No additional information</span>''
 

Latest revision as of 11:55, 16 January 2023

Fc9-comp-macro.png LoadWav
Loads a wave file into memory, providing the values needed to play it 
Fc9-string-icon.png - STRING Filename
The formatted file to load into memory 
Fc9-u8-icon.png - BYTE[] Buffer
A buffer to write the wave data to 
Fc9-u16-icon.png - UINT SampleFormat
Variable to receive the format of the samples 
Fc9-u32-icon.png - ULONG Elements
Variable to receive the number of sample elements to play 
Fc9-f32-icon.png - FLOAT SampleRate
Variable to receive the wave source sample rate 
Fc9-bool-icon.png - BOOL Return


Detailed description

This loads WAV files given a Filename to the data. The Filename may point to a resource file. The data in the file should be in a RIFF format, see WAV file for a more detailed description of a WAV file.


On exit from the routine, the Buffer, SampleFormat, Elements and SampleRate are all updated to contain data read from the file. These are all written with zero values (Buffer is not altered) if the call fails.


If Buffer is not large enough for the wave data it is resized in the call to an appropriate size.


Examples

Calling in a calculation

  • Declare a variable 'result' of type BOOL
  • Add to a calculation icon:
    result = ::Sound.LoadWav("filename", _arraybuffer, return_sampleformat, return_elements, return_samplerate)