Frage

Was ist die beste Lösung WAV-Dateien in WMA (und umgekehrt) in C # für die Umwandlung? Ich habe dies tatsächlich umgesetzt schon einmal den Windows Media Encoder SDK verwenden, aber mit Windows Media Encoder verteilt mit meiner Anwendung umständlich ist, gelinde gesagt. Das Windows Media Format SDK hat große Teile der API als veraltet markiert. Es sieht aus wie könnte es einige DirectX Media Objects (DMOs) sein, die ich aus dem Windows SDK verwenden könnte, aber es würde eine Menge von Interop zu schreiben.

Ich frage mich, ob es vielleicht ein guter verwalteten Wrapper für eine nicht verwaltete Bibliothek, die die Umwandlungen durchführen kann. Es wäre eine Lizenz benötigen, die sie verteilt werden als Teil einer Closed-Source-kommerziellen Anwendung ermöglicht.

War es hilfreich?

Lösung

Ich habe versucht, es nicht persönlich (also nicht sicher, ob es die ‚beste‘ Lösung ist), aber http://www.codeproject.com/KB/audio-video/WmaCompressor.aspx sieht aus wie es Ihren Anforderungen entsprechen sollte ...

Andere Tipps

Sie können einen Blick auf die BASS Bibliothek . Es verfügt über Add-ons, wie BASSWMA und BASSEnc für die Codierung / Decodierung zu tun. Alle seine APIs sind von .NET mit dem BASS.Net Wrapper.

Sowohl BASS und BASS.Net könnten für die kommerzielle Nutzung lizenziert werden, mit einer angemessenen Gebühr (€ 100 pro Stück).

Wenn Sie bequem sind ein bisschen von C ++ / CLI schreiben, dann müssen Sie nicht viel Code, um einen Wrapper um Directshow zu erstellen, dies zu tun. Dies kann dann direkt aus einer C # Montage ohne die Notwendigkeit zu verwirren über mit Interop aufgerufen werden. Tun Sie es mit Directshow ist viel einfacher als die Verwendung von WMF direkt, weil Sie müssen jede Datei Parsing nicht tun oder I / O - es ist alles für Sie getan hat. Als Referenz habe ich Code in einer kommerziellen Anwendung, die kodieren / dekodieren WMA zu / von WAV-Dateien in weniger als 100 Zeilen C ++, die alle in einer freundlichen .NET-Klasse eingewickelt. Vernünftige Nutzung von Smart-Pointer hilft, wenn Sie diesen Weg gehen ...

Zu allererst sieh dir das an:

http://windowsmedianet.sourceforge.net/

Dann wird für IWMWritter suchen - und verschiedene Möglichkeiten, es zu initialisieren. Sie werden rohe PCM-Daten liefern, und es wird WMA-Datei schreiben.

Tag meine Antwort für weitere Informationen wenden Sie sich bitte zu diesem Thema.

Sie können sehen www.mitov.com . Es gibt einige es Bibliotheken, die helfen können. Sie müssen eine Kopie kaufen in einem kommerziellen Produkt zu versenden, glaube ich, aber ich denke, es ist ein angemessener Preis.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top