Ich arbeite an einem Projekt, das mit Opus Codec aufnehmen und wiedergeben muss, ich suche viel, aber ich kann kein Demo/Beispiel mit dieser Lösung finden. Ich finde eine Demo mit Encoder, kann aber den Decoder nicht finden. Ich finde den Quellcode dieses Codecs nur mit C, kannst du mir helfen?Aufnahme und Wiedergabe mit Opus Codec in Android
Antwort
Versuchen Sie diese GitHub demo. Ich habe es kompiliert, aber es spielt nicht den aufgenommenen Ton.
Hallo, ich habe es versucht, aber es hat nicht funktioniert.und die Release-Note in diesem Git erwähnt "Was funktioniert nicht: Aufnahme und Wiedergabe mit dem Opus-Codec " –
Hallo, dieses Demo ist ein guter Anfang, er war wirklich nah dran, es zu lösen. Jedes Paket muss jedoch separat vom Encoder zum Decoder gesendet werden. Anstatt alles in eine Datei zu speichern und sie dann ohne Rücksicht auf den Paketstart zurückzulesen.
Ich änderte den Code, um auch die Anzahl der codierten Bytes zu schreiben und wenn ich entschlüssele, lese ich zuerst die Anzahl der Bytes in jedem Paket und dann die Nutzlast.
Hier ist der modifizierte Code in OpusEncoder.java
public void write(short[] buffer) throws IOException
{
byte[] encodedBuffer = new byte[buffer.length];
int lenEncodedBytes = this.nativeEncodeBytes(buffer , encodedBuffer);
Log.i(TAG,"encoded "+lenEncodedBytes+" bytes");
if (lenEncodedBytes > 0)
{
this.out.write(lenEncodedBytes);
this.out.write(encodedBuffer, 0, lenEncodedBytes);
}
else
{
Log.e(TAG, "Error during Encoding. Error Code: " + lenEncodedBytes);
throw new IOException("Error during Encoding. Error Code: " + lenEncodedBytes);
}
}
Hier wird der modifizierte Code in OpusDecoder.java
byte[] encodedBuffer;
int bytesEncoded=this.in.read();
int bytesDecoded=0;
Log.d(TAG, bytesEncoded + " bytes read from input stream");
if (bytesEncoded >= 0)
{
encodedBuffer=new byte[bytesEncoded];
int bytesRead = this.in.read(encodedBuffer);
bytesDecoded = nativeDecodeBytes(encodedBuffer , buffer);
Log.d(TAG, bytesEncoded + " bytes decoded");
}
von" Paket "meinst du" Paket "? Ich habe versucht, den Patch, aber immer noch nicht die Aufnahme und die Wiedergabe zu arbeiten. viele Pops und Klicks nur – spy
spielt immer noch mit diesem, es scheint, um Aufnahme ok, aber die Wiedergabe funktioniert nicht. opus meldet nur 3 Bytes gleichzeitig zu dekodieren. – spy
- 1. Aktiviere und konfiguriere OPUS Codec auf PJSIP 2.5.1 auf Android
- 2. Android Superpowered SDK Aufnahme und Wiedergabe gleichzeitig
- 3. Android Audio Aufnahme und Wiedergabe ist beschädigt
- 4. OPUS Audio-Codec-Codierung für iPhone
- 5. Makefile benötigt für die Kompilierung des Opus Codec für Android
- 6. Wie kann ich Opus Codec von JavaScript
- 7. Cross-compile OPUS-Codec für Blackfin
- 8. Audio-Aufnahme und Wiedergabe in Silverlight
- 9. Phonegap Media API - Aufnahme und Wiedergabe von Audio - Android
- 10. Ändern des Standard (abgehend) Codec OPUS in Freeswitch
- 11. Aufnahme und Wiedergabe von Audio gleichzeitig
- 12. Aufnahme und spätere Wiedergabe von DOM-Änderungen in Firefox?
- 13. Wiedergabe und Aufnahme von Audio zur gleichen Zeit
- 14. Android AudioRecord und AudioTrack Codec-Optionen?
- 15. Aufnahme und Verarbeitung von Audio gleichzeitig mit Thread in Android
- 16. Android Aufnahme Platz Video
- 17. Aufnahme eines Telefonanrufs in Android
- 18. Arraylist mit Wiedergabe Wiedergabe
- 19. ios audio unit remoteIO Wiedergabe während der Aufnahme
- 20. Fehler Aufnahme Videos Android
- 21. UI-Automatisierungs-Tool für eine Windows-basierte WPF-Anwendung mit Aufnahme und Wiedergabe feauture
- 22. Unterstützen Codec für Android-Gerät
- 23. Benutzerdefinierte Wrapper-Codec-Integration in Android
- 24. Android: Aufnahme SoundPool Ausgabe
- 25. Android: Beschneiden Video während der Aufnahme mit MediaCodec und MediaMuxer
- 26. Aufnahme klingt auf Android mit MediaRecorder
- 27. Decode Ogg/Opus-Datei
- 28. Wiedergabe von Playlists und Titeln mit Spotify SDK für Android
- 29. Frontkamera nehmen sehr dunkle Aufnahme in Android
- 30. Wiedergabe Video in Zeitlupe in Android
Haben Sie etwas gefunden? Ich bin auf der Suche nach dem gleichen ... – JVS
Wenn Sie nur aufnehmen müssen, behauptet diese App es zu tun: https://play.google.com/store/apps/details?id=dje073.android.modernrecforgepro –
i realisierte diesen Kommentar ist sehr spät, aber wir haben vor kurzem abgeschlossen: https://github.com/edwardsmarkf/opus-streaming-recorder – edwardsmarkf