In Java habe ich eine Methode
public int getNextFrame( byte[] buff )
die aus einer Datei in den Puffer liest und die Anzahl der gelesenen Bytes zurückgibt. Ich lese aus .MJPEG, die einen 5-Byte-Wert hat, sagen wir "07939", gefolgt von so vielen Bytes für das Jpeg.
Das Problem ist, dass die JPEG-Bytegröße den Puffer überlaufen lassen könnte. Ich kann anscheinend keine saubere Lösung für die Zuweisung finden. Mein Ziel ist es, nicht für jedes Bild einen neuen Puffer zu erstellen. Ich habe es mit einer direkten ByteBuffer
damit ich seine array()
Methode, um direkten Zugriff auf den zugrunde liegenden Puffer zu erhalten. Die ByteBuffer
wird nicht dynamisch erweitert.
Sollte ich einen Verweis auf den Parameter zurückgeben? Zum Beispiel:
public ByteBuffer getNextFrame( ByteBuffer ref )
Wie kann ich die gelesenen Bytes ermitteln? Danke.