Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Töne von FB unter Win und Lin ?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Eastler_dart



Anmeldungsdatum: 25.09.2005
Beiträge: 177
Wohnort: Baden-Würtemberg + Sachsen

BeitragVerfasst am: 05.02.2008, 23:17    Titel: Töne von FB unter Win und Lin ? Antworten mit Zitat

Hi Leute,

bastle grad an nem Progi, welches später mal auch Töne von sich geben soll.
Nachdem ich per Suche nix aussagekräftiges gefunden hab, dachte ich, frag doch einfach lächeln

worum geht's:
Da mein Programm Grafikintensiv läuft, möchte ich mit dem Sound nur so wenig wie möglich den Rechner belasten.

Es sollte aber auch Betriebssystemunabhängig sein, da ich sowohl für Windows als auch für Linux (und ggf Dos) einen Code schreiben will.

was brauch ich:
Könnt ihr einfach mal mit euerem Fachwissen grob umreisen, wie ich das angehen könnte?
Kann mir ja denken, das die Soundkarten alle unterschiedlich sind, und ehrlich gesagt, direkt ansprechen möcht ich die dann doch nicht wirklich.
Daß sowas mit ner Bibliothek gehen könnte, kann ich mir ebenfalls denken - bei meinen Träumen wirds eh auf sowas rauslaufen lächeln
Geht das auch anders?
Da ich als Bibliothek nur allegro probiert hab - gibt es kleinere Bibliotheken für Soundausgabe?
bzw - hat jemand schon mal probiert, von allegro nur den Soundteil einzubinden ( den Grafikteil brauch ich ja nicht) bleibt dann das fertige .exe kleiner als mit Grafikteil?

Besten Dank schon mal im voraus

Eastler
_________________
Kaum macht mans richtig, schon geht's
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen Yahoo Messenger
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 05.02.2008, 23:23    Titel: Antworten mit Zitat

zur zeit eignet sich FMOD ganz gut für plattformübergreifende soundausgabe, aber spätestens, wenn BASS auch für linux verfügbar ist, gibt es keinen grund mehr, FMOD zu benutzen...
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Stormy



Anmeldungsdatum: 10.09.2004
Beiträge: 567
Wohnort: Sachsen - wo die schönen Frauen wachsen ;)

BeitragVerfasst am: 06.02.2008, 01:00    Titel: Antworten mit Zitat

Also mit FMOD habe ich schon gute Erfahrung gesammelt. Ansonsten könntest du ja mal FBSound von Joshy ausprobieren -> http://fsr.sourceforge.net/forum/viewtopic.php?t=11
_________________
+++ QB-City +++ Die virtuelle Stadt für jeden Freelancer - Join the community!
Projekte: QB-City,MysticWorld (RPG), 2D-OpenGL-Tutorial
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
peter_u



Anmeldungsdatum: 19.09.2006
Beiträge: 17
Wohnort: Remscheid, NRW

BeitragVerfasst am: 06.02.2008, 03:37    Titel: Sound abspielen Antworten mit Zitat

Hallo,

ich hatte auch das Problem. Dank fb_mci.bas von Einlander fixed by Volta (Danke) konnte ich damit problemlos Sound einbinden - vielleicht kannst Du das gebrauchen:

Code:

'' hier ein Include, als ' #include "fb_mci.bas" ' am Anfang deines Programms einfügen.
#include once "windows.bi"
#include once "win/mmsystem.bi"
'[ FREEBASE[IC] AUDIO WRAPPER BY EINLANDER]
'Freebasic specific audio wrapper for the windows mmsystem
'Die Orginalversion von EINLANDER ist leider im Internet nicht mehr zu finden?

'(fixed for FB 0.15b by Volta)
'Das Programm spielt MID, WAV und MP3 Audiodateien ab.
'Es ist so kompakt, das es in dein Programm direkt einkopiert oder als #Include eingebaut werden kann.
'Es lässt dem Anwender alle Freiheiten seine Audiodateien einfach im Programmablauf zu 'starten, stoppen, wiederholen oder abzubrechen.

'Warnung:
'Das Programm hat keine Fehlerabfrage, bei Fehlaufrufen kann es abstürzen oder sich aufhängen.

'Aufrufe:
'öffnen eines Audiofiles zum Abspielen:
'    FB_MCI_open (AudioFILENAME als String, AliasName als String)
'    Mit dem AliasName wird der Aufruf sehr einfach.
'    zuerst  Audiofile öffnen und AliasName vergeben zB.: FB_MCI_open "99lb3.mid", "Volta"
'    dann FB_MCI "play","volta" und nicht vergessen FB_MCI "close","Volta" zum Schluss

'Sartet die Wiedergabe des Audiofiles
'    FB_MCI ("play"["on"]["an"],AliasName als String)

'Beendet das Abspielen des Audiofiles
'    FB_MCI ("close"["off"]["aus"],AliasName als String)

'Stopt das Abspielen des Audiofiles
'    FB_MCI ("Stop",AliasName als String)
'    nach einem Startbefehl wird vom Anfang an abgespielt

'Spieldauer des Audiofiles abfragen (Rückgabewert in Millisekunden)
'    x = FB_MCI ("length"["len"],AliasName als String)

'aktuelle Abspielposition abfragen (Rückgabewert in Millisekunden)
'    x = FB_MCI ("position"["pos"],AliasName als String)

Function FB_MCI(ByVal FB_MCICOMMAND As String, ByVal f_Alias As String) As Integer
    Dim temp As String *256
    f_Alias = UCase(f_Alias)
    Select Case LCase(Trim(FB_MCICOMMAND))
      Case "play","on","an"
          mciSendString("play " & f_Alias &" from " & 0, NULL, 0, 0)
      Case "close","off","aus"
          mciSendString("close " & f_Alias, NULL, 0, 0)
      Case "stop"
          mciSendString("stop " & f_Alias, NULL, 0, 0)
      Case "length","len"
          mciSendString("status " & f_Alias & " length", temp, 256,0)
          FB_MCI = Val(temp)
      Case "position","pos"
          mciSendString("status " & f_Alias & " position", temp, 256, 0)
          FB_MCI = Val(temp)
    End Select
End Function

Function FB_MCI_open(ByVal FILENAME As String, ByVal  f_Alias As String) As Integer
    f_Alias = UCase(f_Alias)
    FB_MCI ("close",f_Alias)
    FB_MCI_open = mciSendString("open " & Chr(34) & FILENAME & Chr(34) & " alias " & f_Alias, NULL, 0, 0)
    mciSendString ("set " & f_Alias & " time format milliseconds", NULL, 0, 0)
End Function



Happy Programming.

peter
_________________
Der alte Mann lernt noch
--- Learning by doing ---
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Cherry



Anmeldungsdatum: 20.06.2007
Beiträge: 249

BeitragVerfasst am: 06.02.2008, 07:42    Titel: Antworten mit Zitat

Aber Vorsicht, die [ code ]-Tags verfälschen einiges.

z.B. hier:

Select Case LCase(Trim(FB_MCICOMMAND))
Case "play","on","an"
mciSendString("play " & f_Alias &" from " & 0, NULL, 0, 0)
Case "CLOSE","off","aus"
mciSendString("close " & f_Alias, NULL, 0, 0)
Case "STOP"
mciSendString("stop " & f_Alias, NULL, 0, 0)
Case "length","LEN"
mciSendString("status " & f_Alias & " length", temp, 256,0)
FB_MCI = Val(temp)
Case "position","pos"
mciSendString("status " & f_Alias & " position", temp, 256, 0)
FB_MCI = Val(temp)
End Select

Das gehört klein (wegen LCase)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 06.02.2008, 11:24    Titel: Antworten mit Zitat

Ist aber auch nur eine Windows-only Lösung durch MCI.
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 06.02.2008, 16:25    Titel: Antworten mit Zitat

Stormy hat Folgendes geschrieben:
Also mit FMOD habe ich schon gute Erfahrung gesammelt. Ansonsten könntest du ja mal FBSound von Joshy ausprobieren -> http://fsr.sourceforge.net/forum/viewtopic.php?t=11

FMOD ist riesig und hat ne schlechte MOD-Engine durchgeknallt
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
croco97



Anmeldungsdatum: 04.11.2005
Beiträge: 260

BeitragVerfasst am: 07.02.2008, 14:19    Titel: Antworten mit Zitat

FBSOUND nur, wenn FBSOUND nicht die Win-API benutzt.

EDIT:
Ah, sorry, habe gerade gesehen, dass es in der Tat ne Linux-Version gibt.

Grüsse!

Croco
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
volta



Anmeldungsdatum: 04.05.2005
Beiträge: 1876
Wohnort: D59192

BeitragVerfasst am: 07.02.2008, 18:33    Titel: Antworten mit Zitat

Hier sind Links zu den FBSOUND-Libs für FB0.18.3 .
_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz