Zum Inhalt springen

lajourtoujours

Mitglieder
  • Gesamte Inhalte

    1
  • Benutzer seit

  • Letzter Besuch

  1. Hallo Leute, habe gestern folgende Aufgabe gestellt bekommen und komm keinen Schritt weiter. Mein Chief will, ein Programm welches mit dem Codec von Windows bzw. über directx arbeited. Aber hier erst mal das Programm: Erstellen Sie eine Dialoganwendung, welche 2 Dateinamen als Eingabe annimmt und wahlweise eine mp3-Datei in eine wav-Datei oder umgekehrt umwandelt. Sie können als Vorlage auch eine Kopie (!) Ihres Programms aus der vorangegangenen Aufgabe verwenden. Ereugen Sie die entsprechenden Filtergraphen manuell: mp3_to_wav-Filtergraph: Source: CLSID_AsyncReader mpeg1 Splitter: CLSID_MPEG1Splitter MP3 Decoder: DShowUtils::CLSID_MP3Decoder Waveformat erzeugen: DShowUtils::CLSID_WAVDEST FileWriter im RIFF-Format: CLSID_FileWriter wav_to_mp3-Filtergraph: Source: CLSID_AsyncReader Waveformat Parser: DShowUtils::CLSID_WAVEParser MP3 Encoder: DShowUtils::CLSID_LameMP3Encoder File Writer (ohne RIFF): DShowUtils::CLSID_DumpFile Auch hier sind die Dateinamen für Quell- und Zieldatei über ein IFileSourceFilter-Interface (bzw. über ein IFileSinkFilter-Interface) zu benennen: IFileSourceFilter* FileSource=NULL; g_pSource->QueryInterface(IID_IFileSourceFilter, (void**)&FileSource); FileSource->Load(DShowUtils::AnsiToUnicode(aktname),NULL); FileSource->Release(); IFileSinkFilter* FileDest=NULL; g_pDest->QueryInterface(IID_IFileSinkFilter, (void**)&FileDest); FileDest->SetFileName(DShowUtils::AnsiToUnicode(aktname),NULL); FileDest->Release(); Fügen Sie die erzeugten Filter dem Filtergraphen hinzu und verbinden Sie die entsprechenden Pins wie in der nachstehenden Grafik angegeben (achten Sie dabei auf die genaue Pin-Bezeichnung!). Wenn die Filter in den Graphen eingefügt sind, können Sie die Interfaces freigeben (Release) und den Graphen testen. Vergessen Sie nicht, die für diese Aufgabe zusätzlich notwendigen DirectShow-Filter zu registrieren. Dies können Sie aus Ihrem Programm heraus zur Laufzeit tun DShowUtils::RegisterFilterDll("DUMP.AX",true); DShowUtils::RegisterFilterDll("lame_dshow.ax",true); DShowUtils::RegisterFilterDll("WAVDEST.AX",true); oder aus der Programmshell heraus regsvr32.exe DUMP.AX /s regsvr32.exe lame_dshow.ax /s regsvr32.exe WAVDEST.AX /s wobei Sie natürlich die entsprechenden Rechte benötigen. Zerstören Sie den Filtergraphen im Ereignishandler EC_COMPLETE bzw. EC_USERABORT. Bemerkung 1: Der mp3-Encoder unterstützt einen Einstellungsdialog. Testen Sie diesen über das in der Vorlesung besprochene Interface. PS: Die Funktionalität reicht. Das Programm muss nicht nach Anweisung geschrieben werde. Ich bin irgendwie noch immer für die ActivX Schiene. Bin mal gespannt. Danke im Voraus Bene

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...