AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Ich brauche ein Tutorial
Thema durchsuchen
Ansicht
Themen-Optionen

Ich brauche ein Tutorial

Ein Thema von nikluetke · begonnen am 14. Apr 2005 · letzter Beitrag vom 28. Apr 2005
Antwort Antwort
Seite 3 von 3     123   
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#21

Re: Ich brauche ein Tutorial

  Alt 19. Apr 2005, 15:53
Zitat von nikluetke:
danke für das tutor, aber das kann ich auch noch.
mein problem ist folgendes: wenn ich eine musik datei öffne, dann soll sie in die TListBox. Dies funktionirt aber nicht, wie kriege ich dsa hin? Man soll die verschiedenen musik stücke naher auch auswählen können und abspielen können.
Also das hat ja nun gar nichts mit der Bass.dll zu tun.

Delphi-Quellcode:
if OpenDialog1.Execute then
  Listbox1.Items.Add(OpenDialog1.Filename);
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
nikluetke

Registriert seit: 1. Apr 2005
25 Beiträge
 
#22

Re: Ich brauche ein Tutorial

  Alt 20. Apr 2005, 18:38
guck mam, so habe ich es jetzt gemacht :
Delphi-Quellcode:
unit nik;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Bass, StdCtrls, ExtCtrls, Buttons, Menus;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    ListBox1: TListBox;
    OpenDialog1: TOpenDialog;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    mods: array[0..128] of HMUSIC;
    modc: Integer;
    sams: array[0..128] of HSAMPLE;
    samc: Integer;
    strs: array[0..128] of HSTREAM;
    strc: Integer;
  public
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
  Listbox1.Items.Add(OpenDialog1.Filename);
end;

procedure TForm1.Button2Click(Sender: TObject);
var
   i: Integer;
begin
   i := ListBox1.ItemIndex;
   // Play the stream (continuing from current position)
   if i >= 0 then
      if not BASS_ChannelPlay(strs[i], False) then
end;

end.
wenn ich jetzt eine datei aus der listbox auswähle spielt er die nicht ab warum???? bzw wie kann ich amchen das er die abspielt?
  Mit Zitat antworten Zitat
Benutzerbild von TOC
TOC

Registriert seit: 5. Jan 2005
Ort: Trier
248 Beiträge
 
Delphi 7 Personal
 
#23

Re: Ich brauche ein Tutorial

  Alt 22. Apr 2005, 17:01
Hi!

Ist das der ganze Code in Deiner Anwendung? Ich seh nit wie du die Bass.dll initialisierst!
Vielleicht liegts daran.

Füge doch mal folgendes in Dein Programm ein:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  // Wenn die Bass.dll nicht initalisiert werden konnte dann...
  If not Bass_Init(1,44100,0,Form1.Handle,Nil) then Begin
    // Fehlermeldung ausgeben
    ...
    ...
  End;
end;
Und außerdem, wo öffnest Du den den Stream und definierst strs[N] ?
In Deinem Button1Click schreibst Du ja NUR den Namen der Datei in die ListBox- sonst nix!
Bevor du Bass_ChannelPlay aufrufst mußt Du den Stream öffnen!

Probier mal folgendes:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
Var
  HS:HStream;
begin
  if OpenDialog1.Execute then Begin
    // Stream öffnen
    HS:=Bass_StreamCreateFile(False,PChar(OpenDialog1.FileName),0,0,0);
    // Wenn es geklappt hat dann...
    If HS<>0 then Begin
      // Pfad und Name in ListBox schreiben
      Listbox1.Items.Add(OpenDialog1.Filename);
      // Händel des Streams merken
      strs[ListBox1.Items.Count-1]:=HS;
    End;
  End;
end;
Du könntest aber auch das Ereignis 'OnDoubleClick' der ListBox verwenden. Dann bräuchte der User nur doppelt auf einen Eintrag klicken um eine Datei abzuspielen.

Grüße von TOC!
Lars Uwe Hohmann
"Wäre die Erde eine Bank, ihr hättet sie längst gerettet!"
(Zitat GreenPeace)
  Mit Zitat antworten Zitat
nikluetke

Registriert seit: 1. Apr 2005
25 Beiträge
 
#24

Re: Ich brauche ein Tutorial

  Alt 22. Apr 2005, 20:34
TOC!!!! Groooooooßen dankeschööööön.
echt danke es funktioniert.
ich kann mich nicht mehr als bedanken

jetzt noch eine frage
wie kann ich das so machen das er die nacheinander abspielt, also das man nicht immer paly drücken muss?

danke

LG NiK!!!!!!!
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#25

Re: Ich brauche ein Tutorial

  Alt 23. Apr 2005, 14:18
@nikluetke
das kannst du abschalten indem du einen start parameter bei der init funktion hinzufügst.

Das geht bei meiner units gans einfach:
du hast eine playliste vom typ TStringList z.b. und jetzt muss du nur noch ein ereginis:
OnNewSound mit einer porcedure bestetzen und Sound.NewSound in einen Timer aufrufe und fertig.
und in dieser procedure kannst du dann bestimmen welche datei als nächste kommt.
Ich vermute mal du hast eine ListBox als playliste dann kannst du z.b. es so machen:
Delphi-Quellcode:
procedure Tform1.ChangeSoundFile;
begin
  if ListBox1.ItemIndex+1 <= ListBox1.items.Count-1 then begin
    ListBox1.ItemIndex:=ListBox1.ItemIndex+1
    ListBox1Click(sender); // musst du noch anpassen.
  end;
end;
Das wars schon.
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
nikluetke

Registriert seit: 1. Apr 2005
25 Beiträge
 
#26

Re: Ich brauche ein Tutorial

  Alt 23. Apr 2005, 20:13
das funktioniert nicht
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#27

Re: Ich brauche ein Tutorial

  Alt 23. Apr 2005, 20:27
Poste mal code....
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Benutzerbild von TOC
TOC

Registriert seit: 5. Jan 2005
Ort: Trier
248 Beiträge
 
Delphi 7 Personal
 
#28

Re: Ich brauche ein Tutorial

  Alt 24. Apr 2005, 13:10
Hi!

Zitat von nikluetke:
TOC!!!! Groooooooßen dankeschööööön.
echt danke es funktioniert.
ich kann mich nicht mehr als bedanken

jetzt noch eine frage
wie kann ich das so machen das er die nacheinander abspielt, also das man nicht immer paly drücken muss?
Ein einfaches 'Danke' reicht völlig !

Schick uns mal als Anhang Dein Programm.

Ich würde Dir empfehlen nach dem Öffnen des Streams noch einen Sync auf das Stream-Ende zu setzen.
Dann wird am Ende des Stückes automatisch die CallBack-Funktion 'SyncProc' aufgerufen, und diese Funktion kann dann das nächste Stück abspielen. Schau nun bitte doch mal in das Mini-Tutoriol hinein das ich Dir gepostet habe, da kannst Du nachlesen (im QuellCode) wie das mit den Syncs und der SyncProc funktioniert.

Grüße von TOC!
Lars Uwe Hohmann
"Wäre die Erde eine Bank, ihr hättet sie längst gerettet!"
(Zitat GreenPeace)
  Mit Zitat antworten Zitat
nikluetke

Registriert seit: 1. Apr 2005
25 Beiträge
 
#29

Re: Ich brauche ein Tutorial

  Alt 25. Apr 2005, 17:37
Hier das Programm im Anhang
Angehängte Dateien
Dateityp: rar ya_107.rar (445,3 KB, 33x aufgerufen)
  Mit Zitat antworten Zitat
Cicaro

Registriert seit: 9. Feb 2005
285 Beiträge
 
Delphi 7 Personal
 
#30

Re: Ich brauche ein Tutorial

  Alt 28. Apr 2005, 09:55
Was ist denn eigentlich das Problem ? Die GUI ?
Denn der TMediaPlayer besitzt ja alle nötigen Funktionen zum Abspielen von mp3s.
Wo ich bis jetzt meine Probleme hatte, ist die PlayList. Wie kann man denn Files aus dem Explorer in die ListBox übertragen ? Aber das ist ja 'ne andere Geschichte.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz