AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Bass.dll Internet Radio - wie die letzten 5 Minuten bekommen, ohne Aufnahme stoppen ?
Thema durchsuchen
Ansicht
Themen-Optionen

Bass.dll Internet Radio - wie die letzten 5 Minuten bekommen, ohne Aufnahme stoppen ?

Ein Thema von Julian M. · begonnen am 12. Jan 2016 · letzter Beitrag vom 15. Jan 2016
 
Julian M.

Registriert seit: 28. Dez 2010
41 Beiträge
 
#12

AW: Bass.dll Internet Radio - wie die letzten 5 Minuten bekommen, ohne Aufnahme stopp

  Alt 14. Jan 2016, 15:23
Also ich weiß nicht, ob der Ringbuffer das richtige ist. Konnte jetzt mit diesem Code testweise 1 Minute in einen 'normalen' memorystream ms aufnehmen, dann 20 sec mp3 ab der Mitte von ms in einen zweiten Memorystream ms2 kopieren und diesen auf die Platte schreiben. Ich werde weiter rumprobieren..

Delphi-Quellcode:

procedure StatusProc(buffer: Pointer; len, user: DWORD); stdcall;
begin
   if (ms = nil) then ms:= TMemoryStream.Create; // create the stream
   if (buffer = nil) then ms.Free // finished downloading
   else
   begin // Ab hier geänderter Code
     if ms.Size<=1474560 then //angabe in byte, entsprechend 1 Minuten bei 192kbit/s Stream
     ms.Write(buffer^, len) //schreibe memorystream voll
     else // wenn memorystream 1min beinhaltet, dann kopiere einen teil davon in ms2
     begin
       ms.Position:=round(ms.Size/2);//ab der hälfte von ms kopieren
       ms2:= TMemoryStream.Create;
       ms2.CopyFrom(ms,500000); //500000 Byte=20 sec
       ms2.Position:=0;
       ms2.savetofile('memorystream.mp3');
       application.terminate; //nur damit es erst mal keine Fehlermeldungen gibt, wenn das Programm weiter läuft
     end;
   end;
end;

Gruß Julian

Geändert von Julian M. (14. Jan 2016 um 15:26 Uhr)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz