105255
Goto Top

Audiorecorder WAV-Datei Speichern ---Visual Basic---

Habe einen Audiorecorder mit Microsoft Visual Basic 2010 Express geschrieben. Der kann Dateien aber immer nur unter einem bestimmten Dateipfad speichern.

Morgen da draußen!

Ich habe ein kleines Problem:
ich sitze jetzt vor meinem Audiorecorder und komm nicht weiter.
Der speichert die Audiodateien nämlich immer nur unter "C:\wavdatei.wav"

Mein Code


<code type vb>Public Class Form1

Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Integer, ByVal hwndCallback As Integer) As Integer


Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Button2.Enabled = False
Button3.Enabled = False
Label1.Text = "Bereit zur Aufnahme!"
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Aufnehmen
Button1.Enabled = False
Button2.Enabled = True
Button3.Enabled = False
mciSendString("open new Type waveaudio Alias recsound", "", 0, 0)
mciSendString("record recsound", "", 0, 0)
Label1.Text = "Aufnahme..."
Label1.Visible = True
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click 'Stoppen
Button1.Enabled = True
Button2.Enabled = False
Button3.Enabled = True
mciSendString("save recsound c:\wavdatei.wav", "", 0, 0)
mciSendString("close recsound", "", 0, 0)
MsgBox("File Created: C:\wavdatei.wav")
Label1.Text = "Aufnahme gestoppt..."
Label1.Visible = False
My.Computer.Audio.Stop()
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click 'Wiedergabe
Label1.Text = "Wiedergabe..."
Label1.Visible = True
My.Computer.Audio.Play("c:\wavdatei.wav", AudioPlayMode.Background)
End Sub
End Class


Wüsste nicht, wie ich das Speichern da jetzt in ein SaveFileDialog1 rein machen kann,
noch dazu würde ich es gerne so machen, dass das Programm mich darüber aufklärt, wenn ich beim Speichern eine andere Datei überschreiben würde.
Auch eine Möglichkeit währe, dass der Benutzer den Speicher-Pfad gar nicht selber auswählen kann, sondern dass das Programm einfach die erste Wavedatei "wav001" nennt und die nächste dann "wav002". In Batch währe es ja einfach (%irgendwas%+1), aber wie geht das in Visual Basic?
Und wie mache ich es, dass dann hinter Aufnahme noch "Aufnahmedauer: " steht un das in folgendem Format "0:00:00:000" (std.min.sek.millisek); das gleiche am besten auch beim Abspielen.
Weiß vielleicht noch jemand Verbesserungsvorschläge?
Ich wäre sehr dankbar, da ich noch nicht mal 3 Monate mit VB programmiere und erst 13 Jahre alt bin.

Danke schon mal jetzt,
Chris

P.S.: Bitte helft mir doch einfach. Die ersten paar Kommentare waren nicht wirklich hilfreich. Ich habe (schwaches) ADHS und bin Autist!

Content-ID: 185624

Url: https://administrator.de/forum/audiorecorder-wav-datei-speichern-visual-basic-185624.html

Ausgedruckt am: 12.04.2025 um 06:04 Uhr

MrTrebron
MrTrebron 30.05.2012 um 08:25:42 Uhr
Goto Top
Servus Chris,

mein Tipp:
Hold dir ein VB Buch und lerne das mal von Anfang an.

Es gibt bei Galileo Computing auch gute, kostenlose Openbooks zum Download.

Gruß
Norbert
Skyemugen
Skyemugen 30.05.2012 um 08:34:48 Uhr
Goto Top
... Mann, du bist doch langsam lange genug hier und hast genügend mit Code-Zeugs rumgefuhrwerkelt, dass du unsere ##blue|##-Formatierung doch endlich mal kennen müsstest ...
wiesi200
wiesi200 30.05.2012 um 09:58:27 Uhr
Goto Top
Also ich bin ja echt dafür der Jugend zu helfen, aber langsam stört's mich auch ein wenig.

Ich bin auch der Meinung besorg dir ein Buch. Das Galileo Zeug's zum Starten gut verwenden.
Arbeite alles Sorgfälltig durch und dann sehen wir weiter.
105255
105255 30.05.2012 aktualisiert um 11:15:25 Uhr
Goto Top
Hallo Skyemugen
Schau es dir noch mal an. Zufrieden?
wiesi200
wiesi200 30.05.2012 um 11:49:22 Uhr
Goto Top
105255
105255 30.05.2012 um 12:05:07 Uhr
Goto Top
Vielen, vielen Dank "wiesi200",
du hast mir echt geholfen!

Und wie mache ich es, dass dann hinter Aufnahme noch "Aufnahmedauer: " steht un das in folgendem Format "0:00:00:000" (std.min.sek.millisek); das gleiche am besten auch beim Abspielen. Kann ich auch irgendwie einen "Pause"-Button reinmachen?

Danke

Chris
105255
105255 31.05.2012 um 17:26:03 Uhr
Goto Top
Beitrag erledigt;
ich mach es einfach anders;

Ich lerne jetzt erst mal noch ein bisschen und habe aber auch schon viele Programme geschrieben.
wiesi200
wiesi200 31.05.2012 um 20:11:14 Uhr
Goto Top
Ich will dich ja nicht Schocken aber schau dir das mal an.

http://www.vbarchiv.net/api/details.php?id=mcisendstring

Ein wirklich ernst gemeinter Tipp.
Arbeite erst mal 1-2 Bücher durch und wenn's ein Jahr dauert du hast noch genug Zeit. Fang z.b. mit dem Galileo Open Book an. Ist sicher am Anfang furchtbar langweilig. Und irgendwas selber basteln ist sicher schöner, aber du wirst so schnell auf Grenzen stoßen die um so mehr frustrieren und dir werden auch viele (langweilige aber wichtige) Grundlagen fehlen.