AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme mit FMod

Ein Thema von FBrust · begonnen am 19. Jan 2003 · letzter Beitrag vom 24. Jun 2004
Antwort Antwort
Seite 2 von 3     12 3      
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#11
  Alt 6. Feb 2003, 19:14
ich glaube ich weiß wo das problem liegt:
so eine änliche fehldermeldung habe ich auch erhalten du musst einfach in die FMod.pas gehen und dort:
(oben)
{$Define MSWindows}
wobei ich garnicht mehr weiß ob das MSWindwos war(muss halt mal nach schauen

ich habe jetzt auch noch ein kleines problem:
kann mir jemmand ein einfaches beispiel schreiben ?
wie spiele ich eine datei mit den FMod lib ab ?
das ist mein problem.........
mein versuch:
Code:
  FSOUND_Stream_OpenFile(PChar(FileListe.Strings[ListBox1.ItemIndex]), FSOUND_NORMAL or FSOUND_LOOP_NORMAL, 0);
  FMUSIC_LoadSong(PChar(FileListe.Strings[ListBox1.ItemIndex]))
geht aber leider nicht
Michael Springwald
  Mit Zitat antworten Zitat
janjan

Registriert seit: 16. Jan 2003
Ort: Bonn ("links über Königswinter ")
240 Beiträge
 
Delphi 4 Standard
 
#12
  Alt 6. Feb 2003, 19:30
ich habs so gemacht:

Delphi-Quellcode:

// OPEN STREAM
  Stream := FSOUND_Stream_OpenFile(PChar(Datei), FSOUND_LOOP_NORMAL or FSOUND_NORMAL, 0);
  if stream = nil then
    begin
      Showmessage('Error! Opening file - ' + FMOD_ErrorString(FSOUND_GetError()));
      FSOUND_Close();
      Exit;
    end;

// PLAY STREAM
  channel := FSOUND_Stream_Play(FSOUND_FREE, stream);
  if channel < 0 then
    begin
      showmessage('Error! Play - ' + FMOD_ErrorString(FSOUND_GetError()));
      FSOUND_Close();
      exit;
    end;
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#13
  Alt 6. Feb 2003, 21:24
Danke! werde ich testen

MFG
Michael Springwald
Michael Springwald
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#14
  Alt 6. Feb 2003, 21:28
also bei:
Code:
var
  test:PFMusicModule;
  Datei:String;
  Stream: PFSoundStream;
  Channel: Integer;

begin
  Datei:='E:\test.it';

// OPEN STREAM
  Stream := FSOUND_Stream_OpenFile(PChar(Datei), FSOUND_LOOP_NORMAL or FSOUND_NORMAL, 0);
  if stream = nil then
    begin
      Showmessage('Error! Opening file - ' + FMOD_ErrorString(FSOUND_GetError()));
      FSOUND_Close();
      Exit;
    end;

// PLAY STREAM
  channel := FSOUND_Stream_Play(FSOUND_FREE, stream);
  if channel < 0 then
    begin
      showmessage('Error! Play - ' + FMOD_ErrorString(FSOUND_GetError()));
      FSOUND_Close();
      exit;
    end;
so sieht nur nun der code aus
aber es kommt eine Fehlermeldung vom Programm.
Fehlermeldung:
Code:
Error! Opening file - This command failed because FSound_Init was not called
was einer was los ist ?

MFG
Michael Springwald
Michael Springwald
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#15
  Alt 6. Feb 2003, 21:33
Ich habe es jetzt hinbekommen aber:
Wie spiele ich .it Dateien ab ?
in der Demo geht das alles aber warum nicht in meinem progrmam ?

MFG
Michael Springwald
Michael Springwald
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#16
  Alt 6. Feb 2003, 21:50
so ich habe jetzt alle Problme gelöst erstmal.
Mein code:
Code:
var
  test:PFMusicModule;
  Datei:String;
  Stream: PFSoundStream;
  Channel: Integer;
  Module: PFMusicModule;

begin
  Datei:=FileListe.Strings[ListBox1.ItemIndex];
  if not FSOUND_Init(22050, 128, 0) then
  begin
    Application.MessageBox(FMOD_ErrorString(FSOUND_GetError), 'FSOUND_Init', MB_OK or MB_ICONHAND);
    Halt;
  end;

// OPEN STREAM
  Stream := FSOUND_Stream_OpenFile(PChar(Datei), FSOUND_LOOP_NORMAL or FSOUND_NORMAL, 0);

  if Stream = Nil then
    Module:=FMUSIC_LoadSong(PChar(Datei) );
   
  if Module = nil then begin
    Showmessage('Error! Opening file - ' + FMOD_ErrorString(FSOUND_GetError()));
    FSOUND_Close();
    Exit;
  end;

// PLAY STREAM
  if Stream <> nil then begin
    channel := FSOUND_Stream_Play(FSOUND_FREE, stream);
    if channel < 0 then begin
      showmessage('Error! Play - ' + FMOD_ErrorString(FSOUND_GetError()));
      FSOUND_Close();
      exit;
    end;
  end
  else
    if Module <> NIL then
      FMUSIC_PlaySong(Module);


//  FSOUND_SetPan(Channel, FSOUND_STEREOPAN);
//  FSOUND_SetVolume(Channel, 255);
was kann man andres bzw. besser machen ?
nun habe ich noch ein paar fragen:
Was für Datentypen werden in meiner version unterstützt ?
(ich weiß das it,s3m,xm,mod,wav,mp3,wav,midi einbandfrei funktionieren)

und darf ich ein programm wo ich die "FMod lib" nutze veröffentlichen ?
also als Freeware oder was muss ich da beachten ?
(weil ich kann nicht so gut ENGLISCH)

Wie kann ich wenn ich eine datei anhöhre pause machen bzw stoppen.

so mehr Fragen habe ich erstmal nicht.

Danke schonmal im vorraus für die antworten.

MFG
Michael springwald
Michael Springwald
  Mit Zitat antworten Zitat
Benutzerbild von illegal eagle
illegal eagle

Registriert seit: 15. Jan 2003
Ort: Jena
10 Beiträge
 
Delphi 5 Standard
 
#17
  Alt 7. Feb 2003, 10:25
Code:
if not FSOUND_Init(22050, 128, 0) then
Warum nicht 44100 und 32 ?
Und du musst sicher noch FSOUND_Close am Ende aufrufen?


Zitat:
und darf ich ein programm wo ich die "FMod lib" nutze veröffentlichen ?
also als Freeware oder was muss ich da beachten ?
Zitat:
if your product is not intended to make any money, and is not charged for in any way, then you may use FMOD in it for FREE!
Wenn du mit deinem Programm kein Geld verdienst und dafür keine Gebühr verlangst, dann ist es kostenlos.
Ansonsten siehe http://www.fmod.org/ifmodlicense.html


Zitat:
Wie kann ich wenn ich eine datei anhöhre pause machen bzw stoppen.
Falls es mit FMUSIC abgespielt wird, dann FMUSIC_SetPause(True/False), sonst FSOUND_SetPaused(channel number / handle, True/False). Zum Stoppen FMUSIC_StopSong(song) oder FSOUND_StopSound(channel) nehmen.
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#18
  Alt 7. Feb 2003, 14:02
Code:
Warum nicht 44100 und 32 ? 
Und du musst sicher noch FSOUND_Close am Ende aufrufen?
das habe ich aus der Demo
FSound_Close rufe ich glaube ich nicht auf.
gut!Dann habe ich erstmal keine Frage mehr

MFG
Michael Springwald
Michael Springwald
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#19
  Alt 7. Feb 2003, 19:42
noch eine Frage:
Wie bekomme ich die MaxiMale zeit eines MusikFiles raus ?

MFG
Michael Springwald
Michael Springwald
  Mit Zitat antworten Zitat
bj-Wishmaster

Registriert seit: 13. Jun 2004
5 Beiträge
 
#20

Re: Probleme mit FMod

  Alt 20. Jun 2004, 23:25
Code:
function TFmodEngine.Get_Time : integer;                      // Get Time
begin
if Stream <> nil then
   result:= FSOUND_Stream_GetTime(Stream);

  if (PlayerState = ENGINE_STOP) or
     (PlayerState = ENGINE_SONG_END) then
      Result := 0
end;


function TFmodEngine.Get_SongLen : Integer;                    //Get SongLen
var MilliSec : integer;
begin
  if Stream <> nil then
   begin
    MilliSec := FSOUND_Stream_GetLengthMs(stream);
    result:= MilliSec;
   end;

 if (PlayerState = ENGINE_STOP) or
    (PlayerState = ENGINE_SONG_END) then
     Result := 0
end;


Code:

function SecondToTime(const m_secondes : String) : string;
var
  minutes        : Integer;
  secondes       : Integer;
  m_secondsToTime : String;

begin
  minutes := StrToInt(m_secondes) div 60;
  secondes := StrToInt(m_secondes) - minutes * 60;
  m_secondsToTime := Format('%.2d:%.2d', [minutes, secondes]);
  result := m_secondsToTime;
end;


Total_Time.Caption:= FormatDateTime ('hh:nn:ss',(Get_Time div 1000)/ (24 * 60 * 60));
Cur_time.Caption:= FormatDateTime ('hh:nn:ss',(Get_SongLen / 1000)/ (24 * 60 * 60));
label1.Caption:= SecondToTime(inttostr(Get_SongLen div 1000));
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 09:25 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