From 2abff7b878fa156e4032365e1c55503a9886e8aa Mon Sep 17 00:00:00 2001 From: Dale Glass Date: Sat, 25 Sep 2021 23:02:16 +0200 Subject: [PATCH 1/2] Fix PCM and zlib codec audio crash on packet loss --- plugins/pcmCodec/CMakeLists.txt | 2 +- plugins/pcmCodec/src/PCMCodecManager.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/pcmCodec/CMakeLists.txt b/plugins/pcmCodec/CMakeLists.txt index cce33ecd1a..34e49d908b 100644 --- a/plugins/pcmCodec/CMakeLists.txt +++ b/plugins/pcmCodec/CMakeLists.txt @@ -8,7 +8,7 @@ set(TARGET_NAME pcmCodec) setup_hifi_client_server_plugin() -link_hifi_libraries(shared plugins) +link_hifi_libraries(shared audio plugins) if (BUILD_SERVER) install_beside_console() diff --git a/plugins/pcmCodec/src/PCMCodecManager.h b/plugins/pcmCodec/src/PCMCodecManager.h index 608e9a1556..c8c77f7cee 100644 --- a/plugins/pcmCodec/src/PCMCodecManager.h +++ b/plugins/pcmCodec/src/PCMCodecManager.h @@ -13,6 +13,7 @@ #define hifi__PCMCodecManager_h #include +#include class PCMCodec : public CodecPlugin, public Encoder, public Decoder { Q_OBJECT @@ -44,6 +45,7 @@ public: } virtual void lostFrame(QByteArray& decodedBuffer) override { + decodedBuffer.resize(AudioConstants::NETWORK_FRAME_BYTES_STEREO); memset(decodedBuffer.data(), 0, decodedBuffer.size()); } From e8201324e469c34909218185b26c09c611489964 Mon Sep 17 00:00:00 2001 From: Dale Glass Date: Tue, 28 Sep 2021 21:22:37 +0200 Subject: [PATCH 2/2] Actually fix zLibCodec --- plugins/pcmCodec/src/PCMCodecManager.h | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/pcmCodec/src/PCMCodecManager.h b/plugins/pcmCodec/src/PCMCodecManager.h index c8c77f7cee..178f7cbd9b 100644 --- a/plugins/pcmCodec/src/PCMCodecManager.h +++ b/plugins/pcmCodec/src/PCMCodecManager.h @@ -83,6 +83,7 @@ public: } virtual void lostFrame(QByteArray& decodedBuffer) override { + decodedBuffer.resize(AudioConstants::NETWORK_FRAME_BYTES_STEREO); memset(decodedBuffer.data(), 0, decodedBuffer.size()); }