Frage

Ich möchte den rohen Audio-Puffer c senden ++ für Audio-Transcoding. Ich habe zwei Option

  1. mit verrohrt Strom
    • mit Direkt Puffer (java.nio)

Sind diese wirklich meine 2 besten Möglichkeiten (und die Leute würden empfehlen?) Danke!

War es hilfreich?

Lösung

Direkt Puffer in NIO wird mit ziemlicher Sicherheit eine bessere Leistung haben. Das ist so ziemlich der Idealfall für die direkten Puffer.

Ich bin nicht sicher, was der Punkt Ihrer Frage ist - wenn Sie wissen, ob es möchten, dass andere Optionen sind, dann ist die Antwort sicherlich noch ist (man könnte zum Beispiel schreiben in eine Datei dann mit einem externen Programm aufrufen, um verarbeiten es - oder man könnte JNI verwenden, ohne direkten Puffer). Aber wenn man einen eng gekoppelten, hochperformante Schnittstelle zwischen Java und C ++ Code möge, JNI zusammen mit direkten Puffern, wird das Werkzeug zu benutzen sein.

Andere Tipps

JNI ist einfach zu vermasseln, daher neigen die Menschen dazu, darüber zu beschweren. Aber es ist eine hervorragende und äußerst stabile Option, wenn es richtig gemacht.

Sie können Sockets verwenden (das übernimmt Verbindung von lokalen), aber das ist effektiver auf * nix-Systemen, denke ich.

Wenn Sie keine Echtzeit-Transcodierung benötigen, würde ich den Puffer Ansatz wählen. Auf diese Weise haben Sie eine bessere Kontrolle und Sie werden sicher sein, dass kein Byte verloren.

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