Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Auswertung von Wave Dateien

Frage Entwicklung VB for Applications

Mitglied: Shadow377

Shadow377 (Level 1) - Jetzt verbinden

03.09.2007, aktualisiert 04.09.2007, 4026 Aufrufe, 6 Kommentare

Ich will eine Wave Datei auswerten und habe mich dafür schon ein bisschen durch die Wave Spezifikationen gekämpft. Nachdem ich jetzt in etwa weiß wie der Header aufgebaut ist, wollte ich mir das ganze mal an ein paar Beispielen anschauen, wobei ich jedoch auf folgendes Problem gestoßen bin:
Nachdem ich eine Wave Datei mit dem Editor geöffnet habe, ist steht z.B. folgendes am Anfang der Datei (in diesem Fall der XP Anmeldesound aus dem Verzeichnis %windir%\Media ->wer das ganze etwas besser nachvollziehen will kann diese Datei ja mit dem Editor aufmachen):
01.
RIFFøæ WAVEfmt    "V ˆX   dataÔæ         %  8
]Dabei weiß ich zwar mit "RIFF", "WAVE", "fmt" etwas anzufangen, allerdings sollten dazwischen noch Werte stehen anstelle der Kästchen, Leer- und sonstigen (Sonder)zeichen. Für mich ergibt sich der Schluss, dass es sich dabei um eine falsche Interpretation des Editors handelt, der einen anderen Zeichensatz, eine andere Darstellungsform o.ä. verwenden müsste um ALLE Werte korrekt anzuzeigen.
Jetzt die konkrete Frage: Wie kann ich erstmal manuell und später auch zum programmieren unter C#.Net die "richtigen" Werte bekommen?

Danke schon im vorhinein für alle Antworten, wäre mir relativ wichtig hier (rasch) eine Lösung zu finden.
Mitglied: bastla
03.09.2007 um 20:50 Uhr
Hallo Shadow377!

Für die manuelle Vorgangsweise sollte ein beliebiger Hex-Editor (etwa tiny hexer) ausreichen ...

Grüße
bastla
Bitte warten ..
Mitglied: Shadow377
04.09.2007 um 00:06 Uhr
Danke für deine schnelle Antwort bastla
Ich habe den Editor mal runtergeladen und installiert. Allerdings muss ich gestehen dass ich noch nie mit einem Hex Editor gearbeitet habe und deshalb nicht so recht damit umgehen kann. Kannst du mir das bitte kurz erklären?
Prinzipiell ist mir mal aufgefallen, dass für den Wert für die Länge der Datei (abzüglich 8 Byte) 4 Byte verwendet werden, ganz wie es die Spezifikationen vorschreiben. Ich habe das ganze mal als eine Hex Zahl gesehen und umgerechnet, allerdings kommt das irgendwie so übehaupt nicht hin: F0BD0200 (Hex) = 4038918656 (Dez)
Die Dateigröße (Abmeldesound) ist allerdings 179.704 Byte und irgendwie verstehe ich nicht wie ich die zwei Zahlen in Einklang bringen soll. Man muss noch 8 Byte abziehen ok, aber selbst dann geht sich das nicht wirklich aus..
Habe ich hier einen Denkfehler, oder woran scheitert das?
Grüße Shadow377
Bitte warten ..
Mitglied: bastla
04.09.2007 um 00:31 Uhr
Hallo Shadow377!

Soweit ich das auf die Schnelle gesehen habe, wird die Länge im "Little Endian"-Format gespeichert - daher ist die entsprechende Hex-Zahl 0002BDF0 = Dezimal 179696 - das passt doch ganz gut.

Grüße
bastla
Bitte warten ..
Mitglied: Shadow377
04.09.2007 um 00:56 Uhr
Hmm....Da ist was wahres dran. Jetzt wo du es sagst glaube ich auch mich erinnern zu können dass da was von Little Endian gestanden ist, allerdings müsste ich da nochmal genauer nachlesen.
Allerdings gibt es auch hier wieder ein Problem:
F0BD0200 (Big Endian) = 0020DB0F (Little Endian) und nicht 0002BDF0. Das Ergebnis wäre zwar relativ schön und auch das, das ich gerne sehen würde, nur ist mir leider nicht ganz klar wie ich darauf kommen soll..
Ich hoffe es handelt sich hierbei um keinen Schreib-/Denkfehler meinerseits, was ich um diese Uhrzeit auch nicht mehr ausschließen kann da ich leider schon relativ müde bin.
Grüße und nochmals Dankeschön für die bisherige Hilfe
Shadow377
Bitte warten ..
Mitglied: bastla
04.09.2007 um 18:13 Uhr
Hallo Shadow377!

Du musst die Zahl byteweise betrachten, also
01.
F0 BD 02 00
Jetzt schreibst Du einfach die 4 Bytes in umgekehrter Reihenfolge an:
01.
00 02 BD F0
Die Nibbles musst Du nicht zusätzlich auch noch austauschen.

Grüße
bastla
Bitte warten ..
Mitglied: Shadow377
04.09.2007 um 23:59 Uhr
Danke für deine bisherige Hilfe bastla. Hat ganz gut geklappt und beim Little Endian hab ich das ganze leider Pro Hex Ziffer und nicht pro Byte umgedreht; danke für den Hinweis dass das ja falsch ist.
Werd mich jetzt mal weiter daran machen die Wave Datei manuell zu analysieren, gibt es gute Ideen , wie ich den Daten Teil auswerten könnte?

Weißt du (oder jemand anderer) vllt auch noch, wie ich das Ganze in ein C#.Net Programm einlesen kann und zwar so, dass es auswertbar ist (also in dem Fall wohl als Hex)?
Grüße Shadow377
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows 7
Kopierte Dateien im Hintergrund anzeigen (1)

Frage von MichiBLNN zum Thema Windows 7 ...

Festplatten, SSD, Raid
Reallocated sectors count: Welche Dateien befinden sich in den beschädigten Sektoren? (9)

Frage von DunkleMaterie zum Thema Festplatten, SSD, Raid ...

VB for Applications
VBS Script zum versenden mehrerer Verknüpfungen zu Dateien per Lotus Notes

Frage von Sentinel87 zum Thema VB for Applications ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...