Convertir un fichier wave to octal data

Fermé
Utilisateur anonyme - 10 mai 2015 à 17:50
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 16 mai 2015 à 01:06
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 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
Modifié par Patrice33740 le 11/05/2015 à 16:16
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
11 mai 2015 à 17:13
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 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
Modifié par Patrice33740 le 12/05/2015 à 11:50
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
12 mai 2015 à 22:56
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 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
13 mai 2015 à 09:05
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 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
13 mai 2015 à 16:30
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 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
13 mai 2015 à 19:26
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
14 mai 2015 à 18:29
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 mercredi 26 mars 2014 Statut Membre Dernière intervention 7 mars 2019 26 > Utilisateur anonyme
Modifié par PlacageGranby le 15/05/2015 à 14:45
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 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776 > PlacageGranby Messages postés 393 Date d'inscription mercredi 26 mars 2014 Statut Membre Dernière intervention 7 mars 2019
Modifié par Patrice33740 le 16/05/2015 à 01:31
"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