Moin Leute,
ich baue mir gerade einen kleinen Wave-Editor und möchte ausschließlich den gerade in Bearbeitung befindlichen Ausschnitt wieder geben.
Wenn ich der Beschreibung vertraue, sollte dies funktionieren:
Laut Beschreibung sind offset und length Start und Dauer in Bytes, Audio.ByteRate ist der entsprechende Wert aus dem Wave-Header (176400).
Leider wird entweder die gesamte Datei abgespielt oder gar nichts.
Alle gefundenen Beispiele haben da
Hat jemand von Euch schon mal Ausschnitt-Wiedergabe gearbeitet?
ich baue mir gerade einen kleinen Wave-Editor und möchte ausschließlich den gerade in Bearbeitung befindlichen Ausschnitt wieder geben.
Wenn ich der Beschreibung vertraue, sollte dies funktionieren:
C#-Quellcode
- /// <summary>
- /// Starten der Wiedergabe
- /// </summary>
- /// <param name="startTime">in Sekunden</param>
- /// <param name="endTime">in Sekunden</param>
- public static void Play(double startTime, double endTime)
- {
- long offset = (long)(startTime * Audio.ByteRate);
- long length = (long)((endTime - startTime) * Audio.ByteRate);
- Audio.Channel = Bass.BASS_StreamCreateFile(Audio.FileToPlay, offset, length, 0);
- Bass.BASS_ChannelPlay(Audio.Channel, false);
- }
Leider wird entweder die gesamte Datei abgespielt oder gar nichts.
Alle gefundenen Beispiele haben da
0
als Parameter:Hat jemand von Euch schon mal Ausschnitt-Wiedergabe gearbeitet?
Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch
Ein guter .NET-Snippetkonverter (der ist verfügbar).
Programmierfragen über PN / Konversation werden ignoriert!
Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch
Ein guter .NET-Snippetkonverter (der ist verfügbar).
Programmierfragen über PN / Konversation werden ignoriert!