Convertir un fichier wave to octal data

Utilisateur anonyme -  
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   -
Salut tout le monde!

je cherche à convertir un fichier wave en sorte qu'il soit en octal ou binaire ..ou meme texte, s'il vous plait si vous avez des idées n'hésitez pas.

ou si vous avez un code visual basic qui peut faire cette tache là

cordialement

Cynthia.
A voir également:

3 réponses

Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
Bonjour,

Il ne s'agit pas d'une conversion mais d'une forme d'affichage du fichier.

Un éditeur de texte sert à afficher un fichier sous forme de texte (le plus simple étant le Bloc-note). Il suffit de faire ouvrir avec.

Pour l'afficher en binaire, utilises un éditeur Hexadécimal, la plupart permettent aussi l'affichage en binaire et en texte, par contre l'affichage en octal est moins courant.

Cordialement
Patrice
0
Utilisateur anonyme
 
Bonjour,

Merci beaucoup pour votre réponse Patrice,
en fait j'ai pas bien saisi ce que vous voulez dire exactement

j'attends impatiemment de recevoir des détails, j'ai un fichier son que des bips comment faire pour transformer ça à un fichier octal


Merci
0
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
Tous les fichiers sont composés de bits.
On peut donc les visualiser dans un éditeur sous forme binaire, ou en hexadécimal ou en octal (plus rarement) ou encore en texte (ASCII).
Pourquoi tiens-tu à de l'octal ???
L'hexadécimal me semble plus facile à trouver.
0
Utilisateur anonyme
 
merci de votre réponse, mais saches que c'est pas moi qui tien à l'octal, chui entrain de réaliser un projet et chui bloqué là je peux pas avancer, faut que je convertisse ce fichier là en octal, si vous connaissez un moyen s'il vous plait aidez moi.
0
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Bonjour,

vois si cela te convient:

Sub LectBinaire()
 Dim f As Integer
 f = FreeFile
 Dim i As Integer
 Dim x1 As Byte
 Dim bHeader(0 To 43) As Byte
 Open "c:\windows\Media\ding.wav" For Random As #f
 'Lecture entête
    Get #f, , bHeader
    'Ensuite faut analyser l'entête...???
    For i = 0 To 43
      ListBox1.AddItem (i & " : " & bHeader(i))
    Next
    Get #f, , x1 ' Lecture byte/byte...
 Debug.Print "X1 : " & x1
 Close #f
End Sub


les valeurs sont affichées dans une listBox
0
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
Bonjour,

«saches que c'est pas moi qui tien à l'octal, chui entrain de réaliser un projet et chui bloqué là je peux pas avancer»
Effectivement cette réponse ne fait pas avancer !

Quel est le but de ton projet ?
Pourquoi est-il préférable d'utiliser l'octal plutôt que l'hexadécimal ?
S'agit-il d'un exercice ?

Aujourd'hui (de même qu'hier), l'octal n'est pratiquement jamais utilisé !!!
Il est plus simple et plus logique de travailler en hexadécimal, car 2 digits représentent un octet.

Ici un éditeur hexa portable et gratuit :
HxD fr portable
0
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
PS:
La conversion d'un fichier en octal n'est pas toujours possible!!!

En effet, un digit octal correspond à 3 bits, donc le nombre de bits du fichier doit être un multiple de 3, sinon on saura pas exprimer ceux qui restent.
Hors la taille d'un fichier est exprimée en octets c'est à que le nombre de bits d'un fichier est un multiple de 8 (8 bits = 1 octet).
Il n'y a donc que les fichier dont la taille en octets est un multiple de 3 qui peuvent être convertis en octal (1 chance sur 3 !!!)

Exemple de conversion Hexa et ASCII avec une macro Excel :
Option Explicit
Option Private Module

Sub ConvHexASCII()
Dim wbkR As Workbook              'fichier résultat
Dim cel As Range                  '1° cellule de la ligne
Dim nomF As String                'nom complet du fichier
Dim strF As String                'texte du fichier
Dim ptr As Long                   'pointeur texte
Dim nbC As Long                   'nombre de colonnes
Dim n°C As Long                   'numéro de colonne
    
  'Sélection du fichier
  On Error Resume Next
  Application.FileDialog(msoFileDialogFilePicker).AllowMultiSelect = False
  Application.FileDialog(msoFileDialogFilePicker).Show
  nomF = Application.FileDialog(msoFileDialogFilePicker).SelectedItems(1)
  If nomF = "" Then Exit Sub
  On Error GoTo 0
  'Lecture fichier
  strF = LireTexte(nomF)
  'Créer le fichier résultat
  Set wbkR = Application.Workbooks.Add(xlWBATWorksheet)
  wbkR.Worksheets(1).Cells.NumberFormat = "@"
  'Arrêt mise à jour écran et calculs
  Application.ScreenUpdating = False
  Application.Calculation = xlCalculationManual
  'Edition fichier
  nbC = 16
  Set cel = wbkR.Worksheets(1).Range("A1")
  Do While ptr < Len(strF)
    cel.Value = Right("0000000" & Hex$(ptr), 8)
    For n°C = 1 To nbC
      If ptr + n°C < Len(strF) Then
        cel.Offset(0, n°C).Value = Right("0" & Hex(Asc(Mid(strF, ptr + n°C, 1))), 2)
        cel.Offset(0, nbC + 1 + n°C).Value = WorksheetFunction.Clean(Mid(strF, ptr + n°C, 1))
      End If
    Next
    ptr = ptr + nbC
    Set cel = cel.Offset(1)
  Loop
  'Mise en forme résultat
  wbkR.Worksheets(1).Columns(nbC + 2).ColumnWidth = 4
  wbkR.Worksheets(1).Columns.AutoFit
  wbkR.Worksheets(1).Cells.HorizontalAlignment = xlCenter
  'Restauration calculs et mise à jour écran
  Application.Calculation = xlCalculationAutomatic
  Application.ScreenUpdating = True
  
End Sub

Private Function LireTexte(ByVal nomCompletFichier As String) As String
' Lecture  d'un fichier binaire sous forme de texte (caractères ASCII).
'
Dim n°F As Integer                'numéro du fichier

  On Error GoTo Lp_fin
  If Dir(nomCompletFichier) = "" Then Exit Function
  n°F = FreeFile
  Open nomCompletFichier For Binary Access Read As #n°F
  If LOF(n°F) > 1048576 Then   ' 65536 x 16
     MsgBox "Fichier trop grand pour cette application", vbCritical
     Close #n°F
     Exit Function
  End If
  LireTexte = Space$(LOF(n°F))
  Get #n°F, , LireTexte
  Close #n°F

Lp_fin:

End Function
0
Utilisateur anonyme
 
merci beaucoup beaucoup pour vous 2, mais franchement c'est pas ça ce que je cherche, de tte façon, j'ai reçu le fichier converti par un pro mais j'ignore toujours comment peut on convertir un wav to octal

merci encore une fois.
0
PlacageGranby Messages postés 393 Date d'inscription   Statut Membre Dernière intervention   26 > Utilisateur anonyme
 
Bonjour,
Dans la question, on parle OCTAL DATA.
Je vois sur google que un "Octal data receiver" est un appareil électronique au sujet des fréquences.
Donc, c'est pas convertir un fichier en octal, mais plutôt formater un fichier wave dans un format autre qui sera lisible par un bidule octal data.

C'est une manipulation de fichier audio et cela n'a probablement rien a voir avec la programmation VB
0
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780 > PlacageGranby Messages postés 393 Date d'inscription   Statut Membre Dernière intervention  
 
"Octal data receiver" n'a rien à voir avec la question : c'est un récepteur à 8 entrées.
Quand Cynthyaa demande « en octal ou binaire ..ou meme texte », je ne suis pas sûr qu'elle ait clairement exprimé son besoin ! Je pense aussi qu'il s'agit d'une manipulation de fichier audio (peut-être vers GNU Octal)
En effet tous les fichiers informatiques, quel que soit leur utilisation, sont avant tout des fichiers binaires !!!
0