WinFuture-Forum.de: Media-player / Mp3 Idtags - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 2 Seiten +
  • 1
  • 2

Media-player / Mp3 Idtags C++

#16 Mitglied ist offline   Fabi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.958
  • Beigetreten: 30. August 04
  • Reputation: 1
  • Geschlecht:Männlich

geschrieben 03. April 2006 - 21:34

und wie bau ich diese zeile jetzt in meine c++ code ein?
0

Anzeige



#17 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.533
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 04. April 2006 - 00:19

Z.B. String-Splitten mit 'ner RegExp?
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#18 Mitglied ist offline   mo 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.796
  • Beigetreten: 17. Juni 02
  • Reputation: 0
  • Wohnort:Ulm / BaWü

geschrieben 04. April 2006 - 10:46

(hab beim themazusammenfügen unsinn gebaut, der beitrag ist eigentlich von gewup)
Hi Leute

ich bin immer noch am Media-Player programmieren,

möchte jetzt gern den Track pausieren und an dieser stelle dann wieder weiterspielen lassen über die Funktion mciSendString(?)
Weiß jemand wie das gehen könnte?

thx Gewup
I'm mó. mo's good twin.
0

#19 Mitglied ist offline   Fabi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.958
  • Beigetreten: 30. August 04
  • Reputation: 1
  • Geschlecht:Männlich

geschrieben 04. April 2006 - 12:28

@Rika:tut mir leid, hab leider keine ahung wie das geht, könntest du das vielleicht an nem beispiel in code form hier posten?
waäre echt voll nett.... :cursing:

Dieser Beitrag wurde von F$KiNg bearbeitet: 04. April 2006 - 12:29

0

#20 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.533
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 04. April 2006 - 14:02

Sagen wir mal du nimmst Boost-Regex.

if (noID3TagFound) {
//trying to parse the filename in a useful manner
static regex blah = new regex(L"\d{1,2}\$0\s((\w+?)\$1\s-\s)?\w+?\$2\.\w+?$");
if (blah.match(filename)) {
int titlenr=strtoint(blah.results[0]);
CString interpret = blah.results[1]?blah.results[1]:"";
CString title = blah.results[2];
} else {
throw E_NO_USEFUL_INFORMATION_FOUND;
}
}
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#21 Mitglied ist offline   gewup 

  • Gruppe: aktive Mitglieder
  • Beiträge: 43
  • Beigetreten: 08. März 06
  • Reputation: 0

geschrieben 04. April 2006 - 21:06

Aber wie soll ich dieses format dann in einem program verwenden und auslese?

kannst du mir vielleicht leicht verständlichen c++ code zeigen?
bin nämlich noch nicht der erfahrenste, wie du leicht an meiner Gigantischen Anzahl an Beiträgen erkennen kannst :blush:
0

#22 Mitglied ist offline   mo 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.796
  • Beigetreten: 17. Juni 02
  • Reputation: 0
  • Wohnort:Ulm / BaWü

geschrieben 05. April 2006 - 06:33

gewub, ohm, rika hat ne kleine feine regexp geschrieben, mit der du eine zeichenfolge im stil von:
[Tracknummer][ ]([Interpret][ - ])[Titel].ext
in tracknummer, interpret und titel aufteilen kannst.

es schadet als programmierer ganz sicher ned, sich ein klitzewenigig mit regulären ausdrücken auszukennen. :blush:

siehe auch: http://en.wikipedia.org/wiki/Regexp
http://www.google.co...ssions+tutorial

mit boost ( http://www.boost.org/ ) hast du ausserdem eine feine bibliothek für regexpr, multithreading, und vieles vieles mehr, siehe auch http://www.boost.org...s/libraries.htm
I'm mó. mo's good twin.
0

#23 Mitglied ist offline   Fabi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.958
  • Beigetreten: 30. August 04
  • Reputation: 1
  • Geschlecht:Männlich

geschrieben 05. April 2006 - 08:51

gut danke, wir werden uns mal damit auseinandersetzten! und das ganze verarbeiten!
vielen dank mal bis hier her.
wir werden dann das hoffentlich erreichte ergebnis hier posten!

Gruß F$KiNg


EDIT:

könnte mir das hier jemand erklären ist C# und ich versteh kein word, hab ich von der site: Link

ist zum auslesen des id tags, auch wenn das hier sehr umstritten ist:

FileInfo file = new FileInfo(this.Filename);  Stream s = file.OpenRead();   		  byte[] bytes = new byte[128];  s.Seek(-128, SeekOrigin.End);  int numBytesToRead = 128;  int numBytesRead = 0;  while (numBytesToRead > 0) {	  int n = s.Read(bytes, numBytesRead, numBytesToRead);		if (n==0) {		  break;	  }	  numBytesRead += n;	  numBytesToRead -= n;  }  s.Close();




private static String ConvertByteToString(byte[] bytes, int pos1, int pos2)  {	 //pos2 muß größer oder gleich pos1 sein und	 //pos2 darf Länge des Arrays nicht überschreiten	 if ((pos1 > pos2) || (pos2 > bytes.Length - 1))	 {	  throw new ArgumentException("Aruments out of range");	 }		   //Länge des zu betrachtenden Ausschnittes	 int length = pos2 - pos1 + 1;		   //neues Char-Array anlegen der Länge length	 Char[] chars = new Char[length];		   //packe alle Bytes von pos1 bis pos2 als	 //Char konvertiert in Array chars	 for (int i = 0; i < length; i++)	 {	  chars[i] = Convert.ToChar(bytes[i + pos1]);	 }//end for		   //konvertiere Char-Array in String und gebe es zurück	 return new String(chars);  }




String tag = ConvertByteToString(bytes, 0, 2);  if (tag != "TAG") {	  return false;  }	m_title  = ConvertByteToString(bytes, 3, 32);  m_artist = ConvertByteToString(bytes, 33, 62);  m_album  = ConvertByteToString(bytes, 63, 92);  m_year = Int32.Parse(ConvertByteToString(bytes, 93, 96));  m_comment = ConvertByteToString(bytes, 97, 126);  m_genre = bytes[127];

wäre echt voll nett.........

Dieser Beitrag wurde von F$KiNg bearbeitet: 05. April 2006 - 09:28

0

Thema verteilen:


  • 2 Seiten +
  • 1
  • 2

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0