SNDSETPOS: Difference between revisions

From QB64 Phoenix Edition Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
Line 18: Line 18:
{{CodeStart}}
{{CodeStart}}
SoundFile& = {{Cl|_SNDOPEN}}("YourSoundFile.mp3") '<<< your MP3 sound file here!
SoundFile& = {{Cl|_SNDOPEN}}("YourSoundFile.mp3") '<<< your MP3 sound file here!
{{Cl|_SNDSETPOS}} SoundFile&, 5.5  'set to play sound 5 1/2 seconds into music  
{{Cl|_SNDSETPOS}} SoundFile&, 5.5  'set to play sound 5 1/2 seconds into music
{{Cl|_SNDPLAY}} SoundFile&  'play sound  
{{Cl|_SNDPLAY}} SoundFile&  'play sound
Do: {{Cl|_LIMIT}} 60    
Do: {{Cl|_LIMIT}} 60
   LOCATE 5, 2: PRINT "Current play position> "; {{Cl|_SNDGETPOS}}(SoundFile&)
   LOCATE 5, 2: PRINT "Current play position> "; {{Cl|_SNDGETPOS}}(SoundFile&)
LOOP UNTIL {{Cl|_KEYDOWN}}(27) OR {{Cl|NOT}} {{Cl|_SNDPLAYING}}(SoundFile&) 'ESC or end of sound exit
LOOP UNTIL {{Cl|_KEYDOWN}}(27) OR {{Cl|NOT}} {{Cl|_SNDPLAYING}}(SoundFile&) 'ESC or end of sound exit
Line 27: Line 27:


{{PageSeeAlso}}
{{PageSeeAlso}}
* [[_SNDGETPOS]], [[_SNDLEN]]  
* [[_SNDGETPOS]], [[_SNDLEN]]
* [[_SNDOPEN]], [[_SNDLIMIT]]
* [[_SNDOPEN]], [[_SNDLIMIT]]




{{PageNavigation}}
{{PageNavigation}}

Latest revision as of 02:44, 23 January 2023

The _SNDSETPOS statement changes the current/starting playing position in seconds of a sound.


Syntax

_SNDSETPOS handle&, position!


Description

  • Changes the current/starting playing position in seconds (a SINGLE value) of a sound in memory.
  • If position! is past the length of the sound, playback will be interrupted.
  • Function cannot be called while a looping sound is being played (see _SNDLOOP).
  • In versions prior to build 20170811/60, the sound identified by handle& must have been opened using the "SETPOS" capability to use this statement.


Examples

Example: To check the current playing position in an MP3 file, use _SNDPLAY with _SNDGETPOS printed in a loop

SoundFile& = _SNDOPEN("YourSoundFile.mp3") '<<< your MP3 sound file here!
_SNDSETPOS SoundFile&, 5.5   'set to play sound 5 1/2 seconds into music
_SNDPLAY SoundFile&  'play sound
Do: _LIMIT 60
   LOCATE 5, 2: PRINT "Current play position> "; _SNDGETPOS(SoundFile&)
LOOP UNTIL _KEYDOWN(27) OR NOT _SNDPLAYING(SoundFile&) 'ESC or end of sound exit


See also



Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link