Forum: PC-Programmierung C# Daten zu Soundfiles speichern


von Billy _. (slowflyer)


Lesenswert?

Hi,

ich versuche mich gerade an einem Player (C# .NET 2.0 und bass.dll und 
bass_fx.dll von un4seen.com), der extern noch eine "Lichtorgel" über die 
serielle Schnittstelle ansteuern soll. Nun möchte ich gewisse Daten z.B 
Equalizer-Einstellungen, Abstimmung der Lichtorgel etc. für jedes Lied 
abspeichern können. Ich würde nur ungern eine Datenbank (z.B. mySQL) 
wegen der begrenzten Ressourcen laufen lassen und dort die Daten 
ablegen.

Da fallen mir 2 Möglichkeiten ein:
1. für jedes Lied ein separates File im gleichen Ordner (XML, Text, 
Binär etc.)
        o Vorteil: leicht über z.B. den gleichen Dateinamen und andere 
Extension ansprechbar
        o Nachteil: nicht machbar mit CDs (gleiche Track-Namen, nicht 
beschreibbar etc.)

2. zentrales File für alle Lieder
       o Vorteil: unabhängig vom Medium (beschreibbar oder nicht etc.)
       o Nachteil: Bei größer werdenden Anzahl von Liedern evtl. lange 
Suche nach den passenden Daten (Wie funktioniert die Navigation in einem 
XML-File? Gibts es Anfragen wie z.B SELECT bei einer Datenbank, die 
einen bestimmten Datensatz liefern?)

Fällt euch vielleicht eine einfachere Lösung dazu ein? Für Tips und 
Tricks wäre ich dankbar.

von gerd (Gast)


Lesenswert?

wie wäre es mit sqlite?
das ist eine sql-datenbank, die in einer datei gespeichert wird und sehr 
wenig ressourcen benötigt (sicher weniger als .net)

von Billy _. (slowflyer)


Lesenswert?

Hi,

keine schlechte Idee, es wäre genau das richtige. Leider gibt es da 
keinen Wrapper für .NET. Wie gesagt, ich programmiere in c# und wüsste 
nicht wie ich sqlite in meinem Projekt einbinden könnte. Ich werde da 
mal am Ball bleiben, vielleicht bekommt man es irgendwie doch hin.

Danke und Gruß, Willi

von Bartli (Gast)


Lesenswert?

http://adodotnetsqlite.sourceforge.net/
http://sqlite.phxsoftware.com/

Beide Projekte bieten ADO.NET Provider, was willst du mehr...

von Billy _. (slowflyer)


Lesenswert?

@Bartli: Hab es ebenfalls gefunden, du warst nur schneller mit dem Post, 
trotzdem Danke

Alternativ dazu hab ich noch die Embedded Firebird Datenbank gefunden
http://www.codeproject.com/cs/database/EmbeddedFirebird.asp

werd mir mal beide anschauen

Gruß, Willi

von arc (Gast)


Lesenswert?

Wie wärs mit einem einfachen (XML-)DataSet?
"Projekt->Neues Element hinzufügen->DataSet", dann die Tabelle/n etc. 
erstellen. Das erstellte DataSet kann dann entweder über die Toolbox 
einer Form hinzugefügt werden oder man deklariert einfach einen 
entsprechenden Member.

MyDataSet ds = new MyDataSet();
ds.ReadXML("fileName");
ds.MyDataTable.Select("Name ='Test'");

von Alex (Gast)


Lesenswert?

Wenns wenig Daten sind:

Ein mp3 hat doch auch Meta-Daten, die man dafür zweckentfremden könnte. 
Warum sollte man dort nicht einfach die Informationen hinterlegen 
können? So sind Datei und Konfiguration miteinander direkt verbunden.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.