myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
   » Plugin für Firefox
   » Plugin für IE7
   » Gadget für Vista
» Regeln
» Wie poste ich richtig?
» Datenschutzerklärung
» wbb-FAQ

Mitglieder
» Liste / Suche
» Stadt / Anleitung dazu
» Wer ist wo online?

Angebote
» ASP.NET Webspace
» Bücher
» Zeitschriften
   » dot.net magazin
» Accessoires

Ressourcen
» .NET-Glossar
» guide to C#
» openbook: Visual C#
» openbook: OO
» .NET BlogBook
» MSDN Webcasts
» dotnetjob.de
» Search.Net

Team
» Kontakt
» Übersicht
» Wir über uns
» Bankverbindung
» Impressum

» Unsere MiniCity
MiniCity
» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Gemeinschaft » .NET-Komponenten und C#-Snippets » SimpleBassPlay
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

SimpleBassPlay

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Kravnos Kravnos ist männlich
myCSharp.de-Mitglied

Dabei seit: 29.05.2007
Beiträge: 46
Entwicklungsumgebung: Visual Studio.NET Express


Kravnos ist offline

SimpleBassPlay

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo an Alle.

Ich habe mich in der Vergangenheit mit Bass.Net beschäftigt. Für mich war es schwierig mit der API umzugehen da es ja doch recht "umständlich" gemacht ist. Das rührt aus der Vielzahl von Möglichkeiten die Bass.Net bietet. Um es Einsteigern wie mir einfacher zu machen habe ich mal eine sehr stark vereinfachte Klasse geschrieben und möchte hier mal einen kleinen Workshop einbinden.

1. Was sind die Vorteile zu DirectX.Net
-Der User muss sich nicht die über 100 MB grosse DirectX SDK runterladen.
-Es ist relativ einfach eine Visualisierung darzustellen.
-Beherrsch mann die API erst einmal kann man damit sehr viel machen und sie ist nur 1 MB gross.

2. Was brauche ich dafür?

1. Lade dir die Bass.Net API runter und installiere Sie. erhältlich  hier
2. Nun brauchen wir noch die originale Bass.dll, erhältlich  hier. In der Zip-Datei ist die bass.dll enthalten. Diese musst du in deinen Debug-Ordner deines Porjektes kopieren. Damit sind wir in der Lage MP3 sowie auch OGG-Dateien abzuspielen.
3. Lade dir meine SimpleBassPlay.cs runter (ganz unten als Dateianhang) und binde es in dein Porjekt ein. Dabei ist zu beachten dass du noch den Namespace deinem Programm-Namespace angleichen musst. Nun noch einen Verweis mit Rechtsklick auf "Verweise" und dann "Verweis hinzufügen" dort "BASS.NET API for .NET 2.0" hinzufügen.

3. Und los geht es

Wie bedient mann die SinpleBassPlay-Klasse?
Als erstes erstellen wir uns ein Objekt von der Klasse.

C#-Code:
SimpleBassPlay s = new SimpleBassPlay();

Nun initialisieren wir das Audioobjekt erstmal.

C#-Code:
s.InitialBass();

Als nächstes geben wir die Läutstärke von 0 - 100 Porzent an.

C#-Code:
s.SetLautstärke(75);

Jetzt können wir mit der Wiedergabe beginnen. Komplette Pfadangabe. Z.B. "D:\Musik\hallo.mp3"

C#-Code:
s.Play("DeineDatei.mp3");

Infos über den eingetragenen Interpret & Titel rufen wir so ab.

C#-Code:
Titel=s.tags.artist +" - "+s.tags.title;

Um die Lautstärke herauszufinden

C#-Code:
s.GetVolume()

Soll die Wiedergabe Pausiert werden oder eine bereits pausierte Wiedergabe fortsetzt geht das mit

C#-Code:
s.Pause();

Es gibt Situationen in denen es nützlich ist zu wissen ob die Wiedergabe schon beendet ist, um das abzufragen

C#-Code:
s.IsPlaying()

Wenn man wissen will wie die Aktuelle Position in Sekunden der Wiedergabe ist

C#-Code:
s.GetCurrentPosition();

Um die Dauer in Sekunden abzurufen

C#-Code:
s.GetDuration();

Die Aktuelle Position in Sekunden zu Setzen geht so

C#-Code:
s.SetCurentposition(112);

Wenn wir die Wiedergabe stoppen wollen

C#-Code:
s.Stop();

Soo ich hoffe ich konnte wem damit helfen und habe mich nicht zu kompliziert ausgedrückt. Schreibt mir ob es euch geholfen hat. Bis dahin viel spass beim proggen und basteln.

Liebe Grüsse

Kravnos


PS: Ich würde mich über Antworten freuen smile


Dateianhang:
unknown SimpleBassPlay.cs (3 KB, 292 mal heruntergeladen)

Dieser Beitrag wurde 6 mal editiert, zum letzten Mal von Kravnos am 30.01.2009 22:25.

Neuer Beitrag 30.12.2008 01:37 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
AXEMAN
myCSharp.de-Mitglied

Dabei seit: 09.01.2009
Beiträge: 3


AXEMAN ist offline

SimpleBassPlay

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hi, ich habe dies nach deiner Anleitung gemacht. Habe bei verweise die bass.net eingefügt. Beim ausführen wird diese Zeile angekreidet: Bass.BASS_PluginLoad("basswma.dll");

Meine eigentliches Problem ist, das ich nen Sound aus ner resource abspielen will und das dann auf möglichst vielen fremden rechnern läuft! Habe es mit direktx hinbekommen, dann ging es jedoch auf beiden test PC's noch nicht.

Wie ist das mit der Bass.dll? Muss ich die dann extra mit meiner xxx.exe datei mitschicken? Wollte halt eine Datei die alles kann und überall läuft, dachte das directx hat doch jeder drauf....

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von AXEMAN am 09.01.2009 21:23.

Neuer Beitrag 09.01.2009 21:21 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Counterfeit Counterfeit ist männlich
myCSharp.de-Mitglied

Dabei seit: 16.02.2004
Beiträge: 116
Entwicklungsumgebung: Visual Studio 2008
Herkunft: Kassel


Counterfeit ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Die Bass.dll musst du mitliefern, da dies eine extra Bibliothek ist, die mit DirectX nichts zu tun hast.
Neuer Beitrag 11.01.2009 20:00 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Kravnos Kravnos ist männlich
myCSharp.de-Mitglied

Dabei seit: 29.05.2007
Beiträge: 46
Entwicklungsumgebung: Visual Studio.NET Express

Themenstarter Thema begonnen von Kravnos

Kravnos ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

ja die bass.dll muss auf jeden Fall immer im Programmverzeichnis liegen. Wenn du Addondateien wie die basswma nutzen willst müssen diese auch dabei. Das ist aber auch der einzige Nachteil. Wie mann es hinbekommt dass die bass.dll z.B in deine exe miteingebunden wird weiss ich leider nicht. Der Gedanke ist natürlich verführerisch ;-)

Liebe Grüsse

Kravnos

PS: Meinen fertigen Player könnt ihr übrigends  hier als Porjekdatei herunterlanden. Tipp: lest die Readme.htm wegen der Tastenkombies ;-))

Dieser Beitrag wurde 4 mal editiert, zum letzten Mal von Kravnos am 31.01.2009 17:28.

Neuer Beitrag 14.01.2009 16:42 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Kravnos Kravnos ist männlich
myCSharp.de-Mitglied

Dabei seit: 29.05.2007
Beiträge: 46
Entwicklungsumgebung: Visual Studio.NET Express

Themenstarter Thema begonnen von Kravnos

Kravnos ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo nochmal, dickes SORRY an alle die an der Fehlermeldung dass er die basswma.dll nicht finden kann gescheitert sind. Sie ist ein Addon dass ich als so selbstverständlich verstand dass ich garnicht daran gedacht hatte, dass ihr ja garnicht wissen könnt (weil ich es nicht erwähnt habe) dass diese Datei dann natürlich auch im Debugverzeichniss liegen muss. Sonnst versucht er diese Datei zu öffnen und findet sie natürlich nicht. Ich habe die Klasse aktualiesiert und jetzt tritt dieser Fehler nicht mehr auf.

Liebe Grüsse

Kravnos

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Kravnos am 30.01.2009 22:26.

Neuer Beitrag 30.01.2009 22:15 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Zwischen diesen beiden Beiträgen liegen mehr als 4 Jahre.
ForTN0X
myCSharp.de-Mitglied

Dabei seit: 08.03.2013
Beiträge: 1


ForTN0X ist offline

Danke!!

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Ich habe mich extra für diese Antwort hier Regestriert.

DANKE!

Ich programmiere jetzt schon eine ganze Weile, hatte aber mit Bass so meine
Problemchen. Insbesondere auf die schnelle!
Mit deiner Erweiterung von Bass ist es jetzt allerdings super Easy!

Es stört dich aber wohl hoffentlich nicht das ich es für meine Zwecke noch etwas erweitert habe. Nähmlich um die Funktion

C#-Code:
setAudioOutput(int Id);

mit welcher ich jederzeit das OutputDevice einstellen kann.

Aber nocheinmal DANKE

Mit freundlichen Grüßen
ForTN0X
Neuer Beitrag 08.03.2013 02:27 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als 4 Jahre.
Der letzte Beitrag ist älter als 2 Monate.
Antwort erstellen


© Copyright 2003-2013 myCSharp.de-Team. Alle Rechte vorbehalten. 21.05.2013 20:35