UDF > Sound >


_SoundPos

Retourne la position de lecture actuelle du son

#include <Sound.au3>
_SoundPos ( $aSndID [, $iMode = 1] )

Param�tres

$aSndID Tableau d'identification du son retourn� par _SoundOpen() ou le nom du fichier
$iMode [optionnel] Cet indicateur d�termine dans quel format la position dans le son est retourn�e
    1 = (par d�faut) hh:mm:ss o� h = heures, m = minutes et s = secondes
    2 = millisecondes

Valeur de retour

Succ�s: Retourne la position de lecture du son.
�chec: Retourne 0 et d�finit @error <> 0.
@error: 1 = $iMode est invalide
3 = ID du son invalide. Utiliser le tableau retourn� par _SoundOpen() ou un nom de fichier valide.

Remarque

Il est recommand� d'ouvrir un fichier son avec _SoundOpen() et passer le tableau d'identification plut�t que d'utiliser le nom de fichier dans cette fonction. Un fichier encod� VBR a tr�s peu de chance de retourner la position correcte si le nom du fichier est pass� directement � cette fonction.

En relation

_SoundLength, _SoundOpen

Exemple

#include <MsgBoxConstants.au3>
#include <Sound.au3>

Local $aSound = _SoundOpen(@WindowsDir & "\media\tada.wav")
If @error = 2 Then
    MsgBox($MB_SYSTEMMODAL, "Erreur", "Le fichier n'existe pas!")
    Exit
ElseIf @extended <> 0 Then
    Local $iExtended = @extended ; Parce que @extended sera d�fini apr�s DllCall.
    Local $tText = DllStructCreate("char[128]")
    DllCall("winmm.dll", "short", "mciGetErrorStringA", "str", $iExtended, "ptr", DllStructGetPtr($tText), "int", 128)
    MsgBox($MB_SYSTEMMODAL, "Erreur", "L'ouverture a �chou�." & @CRLF & "Num�ro de l'erreur: " & $iExtended & @CRLF & "Description de : " & DllStructGetData($tText, 1) & @CRLF & "Notez SVP: Le son peut toujours jouer correctement.")
Else
    MsgBox($MB_SYSTEMMODAL, "Succ�s", "L'ouverture du fichier a r�ussi.")
EndIf

_SoundPlay($aSound, 0)
SplashTextOn("Position courante", _SoundPos($aSound, 1), 300, 90, Default, Default, 18, Default, 55)

Do
    Sleep(100)
    ControlSetText("Position courante", "", "Static1", _SoundPos($aSound, 1))
Until _SoundPos($aSound, 2) >= _SoundLength($aSound, 2)

_SoundClose($aSound)