Salut,

J'ai un petit problème d'algorithme qui me plait pas trop, même si ça marche :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
        'On sait que le debut du fichier audio commence par "RIFF"
        For i = 0 To byteCount - 1
 
            'On recherche l'en-tête du fichier WAV (RIFF), si trouvé, on décode le fichier wav
            If requestBin(i) = retour_ligne(0) Then
                If requestBin(i + 1) = retour_ligne(1) Then
                    If requestBin(i + 2) = retour_ligne(2) Then
                        If requestBin(i + 3) = retour_ligne(3) Then
                            FoundWav = True
                            Exit For
                        End If
                    End If
                End If
            End If
 
        Next
retour_ligne est définit comme ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Dim retour_ligne() As Byte = {Asc("R"), Asc("I"), Asc("F"), Asc("F")}
Il s'agit en fait de traiter l'en-tête d'un fichier wave.

Quelle solution plus "sympa" pourrait-on écrire ? Ici, ça va parce qu'il n'y a que 4 octets, mais si y'en avait plus...

Et le requestbin comme ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
        Dim byteCount As Integer
        Dim requestBin As Byte()
Je récupère un fichier wav par le flux http en fait.