From fe77b56b2c140b390241ce225cfc123cc25d6406 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=AF=E4=BF=8A=E6=A1=A6?= Date: Sat, 12 Jul 2025 16:15:57 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E4=BC=A0=E8=BE=93=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=91=8A=E8=AD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 冯俊桦 --- .../output_control/src/time_statistician.cpp | 4 ++++ av_transport/common/src/av_sync_utils.cpp | 5 ++--- av_transport/common/src/softbus_channel_adapter.cpp | 9 ++++++++- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/av_transport/av_trans_engine/plugin/plugins/av_trans_output/output_control/src/time_statistician.cpp b/av_transport/av_trans_engine/plugin/plugins/av_trans_output/output_control/src/time_statistician.cpp index ff17e082..1717fefe 100644 --- a/av_transport/av_trans_engine/plugin/plugins/av_trans_output/output_control/src/time_statistician.cpp +++ b/av_transport/av_trans_engine/plugin/plugins/av_trans_output/output_control/src/time_statistician.cpp @@ -60,6 +60,10 @@ void TimeStatistician::CalAverPushInterval(const int64_t pushTime) pushIndex_++; pushIntervalSum_ += pushInterval_; averPushInterval_ = pushIntervalSum_ / pushIndex_; + if (pushIndex_ == 0) { + AVTRANS_LOGE("pushIndex_ is zero"); + return; + } lastPushTime_ = pushTime_; AVTRANS_LOGD("Statistic pushInterval: %{public}lld, pushIndex: %{public}" PRIu32 ", averPushInterval: %{public}lld", pushInterval_, pushIndex_, averPushInterval_); diff --git a/av_transport/common/src/av_sync_utils.cpp b/av_transport/common/src/av_sync_utils.cpp index 616871ce..5dc76bb5 100644 --- a/av_transport/common/src/av_sync_utils.cpp +++ b/av_transport/common/src/av_sync_utils.cpp @@ -57,9 +57,8 @@ AVTransSharedMemory CreateAVTransSharedMemory(const std::string &name, size_t si (void)::munmap(addr, size); return AVTransSharedMemory{0, 0, name, nullptr}; } - uint64_t tmpsize = static_cast(size); - AVTRANS_LOGI("create av trans shared memory success, name=%{public}s, size=%{public}" PRIu64 ", fd=%{public}" - PRId32, name.c_str(), tmpsize, fd); + AVTRANS_LOGI("create av trans shared memory success, name=%{public}s, size=%{public}zu, fd=%{public}" + PRId32, name.c_str(), size, fd); return AVTransSharedMemory{fd, size, name, addr}; } diff --git a/av_transport/common/src/softbus_channel_adapter.cpp b/av_transport/common/src/softbus_channel_adapter.cpp index 1a333b82..e9b2db39 100644 --- a/av_transport/common/src/softbus_channel_adapter.cpp +++ b/av_transport/common/src/softbus_channel_adapter.cpp @@ -196,7 +196,10 @@ int32_t SoftbusChannelAdapter::CreateChannelServer(const std::string& pkgName, c {.qos = QOS_TYPE_MAX_LATENCY, .value = 4000}, {.qos = QOS_TYPE_MIN_LATENCY, .value = 2000}, }; - + if (sizeof(qos[0]) == 0) { + AVTRANS_LOGE("qos[0] siez of zero"); + return ERR_DH_AVT_SESSION_ERROR; + } int32_t ret = Listen(socketId, qos, sizeof(qos) / sizeof(qos[0]), &sessListener_); if (ret != 0) { AVTRANS_LOGE("Listen socket error for sessionName:%{public}s", sessName.c_str()); @@ -301,6 +304,10 @@ int32_t SoftbusChannelAdapter::OpenSoftbusChannel(const std::string &mySessName, AVTRANS_LOGE("Create OpenSoftbusChannel Socket error"); return ERR_DH_AVT_SESSION_ERROR; } + if (sizeof(qos[0]) == 0) { + AVTRANS_LOGE("qos[0] siez of zero"); + return ERR_DH_AVT_SESSION_ERROR; + } int32_t ret = Bind(socketId, qos, sizeof(qos) / sizeof(qos[0]), &sessListener_); if (ret != DH_AVT_SUCCESS) { AVTRANS_LOGE("Bind SocketClient error"); -- Gitee From 992c89db9bb4dbdb443fb3a0b1223ffe129be753 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=AF=E4=BF=8A=E6=A1=A6?= Date: Tue, 15 Jul 2025 11:29:33 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E4=BC=A0=E8=BE=93=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=91=8A=E8=AD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 冯俊桦 --- .../av_trans_coder/av_trans_audio_decoder_filter.h | 8 +++++++- .../av_trans_coder/av_trans_audio_encoder_filter.h | 8 +++++++- av_transport/common/src/av_sync_utils.cpp | 4 ++-- av_transport/common/src/softbus_channel_adapter.cpp | 4 ---- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h index fda8afec..8115d11a 100644 --- a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h +++ b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h @@ -135,7 +135,13 @@ private: std::atomic isStoped_ = false; OH_AVFormat outputFormat_ = {}; - ADecInitParams initDecParams_ = {}; + ADecInitParams initDecParams_ = { + .codecType = AudioCodecType::AUDIO_CODEC_AAC, + .channel = 2, + .sampleRate = 44100; + .bitRate = 12800, + .sampleDepth = MediaAVCodec::SAMPLE_S16LE +}; OH_AVCodec *audioDecoder_ = nullptr; std::queue codecBufQueue_; std::queue codecIndexQueue_; diff --git a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_encoder_filter.h b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_encoder_filter.h index 8a3586da..582d93a4 100644 --- a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_encoder_filter.h +++ b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_encoder_filter.h @@ -133,7 +133,13 @@ private: std::atomic isStoped_ = false; OH_AVFormat outputFormat_ = {}; - AEncInitParams initEncParams_ = {}; + AEncInitParams initEncParams_ = { + .codecType = AudioCodecType::AUDIO_CODEC_AAC, + .channel = 2, + .sampleRate = 44100, + .bitRate = 128000, + .sampleDepth = MediaAVCodec::AudioSampleFormat::SAMPLE_S16LE +}; OH_AVCodec *audioEncoder_ = nullptr; std::queue codecBufQueue_; std::queue codecIndexQueue_; diff --git a/av_transport/common/src/av_sync_utils.cpp b/av_transport/common/src/av_sync_utils.cpp index 5dc76bb5..aa657932 100644 --- a/av_transport/common/src/av_sync_utils.cpp +++ b/av_transport/common/src/av_sync_utils.cpp @@ -57,7 +57,7 @@ AVTransSharedMemory CreateAVTransSharedMemory(const std::string &name, size_t si (void)::munmap(addr, size); return AVTransSharedMemory{0, 0, name, nullptr}; } - AVTRANS_LOGI("create av trans shared memory success, name=%{public}s, size=%{public}zu, fd=%{public}" + AVTRANS_LOGI("create av trans shared memory success, name=%{public}s, size=%{public}zu, fd=%{public}d" PRId32, name.c_str(), size, fd); return AVTransSharedMemory{fd, size, name, addr}; } @@ -72,7 +72,7 @@ void CloseAVTransSharedMemory(AVTransSharedMemory &memory) noexcept } if (memory.fd > 0) { (void)::close(memory.fd); - memory.fd = 0; + memory.fd = -1; } if (memory.addr != nullptr) { (void)::munmap(memory.addr, memory.size); diff --git a/av_transport/common/src/softbus_channel_adapter.cpp b/av_transport/common/src/softbus_channel_adapter.cpp index e9b2db39..436fad57 100644 --- a/av_transport/common/src/softbus_channel_adapter.cpp +++ b/av_transport/common/src/softbus_channel_adapter.cpp @@ -279,18 +279,15 @@ int32_t SoftbusChannelAdapter::OpenSoftbusChannel(const std::string &mySessName, AVTRANS_LOGI("Softbus channel already opened, sessionId:%{public}" PRId32, existSessId); return ERR_DH_AVT_SESSION_HAS_OPENED; } - QosTV qos[] = { {.qos = QOS_TYPE_MIN_BW, .value = 40 * 1024 * 1024}, {.qos = QOS_TYPE_MAX_LATENCY, .value = 4000}, {.qos = QOS_TYPE_MIN_LATENCY, .value = 2000}, }; - TransDataType dataType = TransDataType::DATA_TYPE_BYTES; if (mySessName.find("avtrans.data") != std::string::npos) { dataType = TransDataType::DATA_TYPE_VIDEO_STREAM; } - SocketInfo clientInfo = { .name = const_cast((mySessName.c_str())), .peerName = const_cast(peerSessName.c_str()), @@ -298,7 +295,6 @@ int32_t SoftbusChannelAdapter::OpenSoftbusChannel(const std::string &mySessName, .pkgName = const_cast(PkgName.c_str()), .dataType = dataType, }; - int32_t socketId = Socket(clientInfo); if (socketId <0) { AVTRANS_LOGE("Create OpenSoftbusChannel Socket error"); -- Gitee From aaf4722ce71c04a95f9913535deb0692d9188be1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=AF=E4=BF=8A=E6=A1=A6?= Date: Tue, 15 Jul 2025 11:46:08 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E4=BC=A0=E8=BE=93=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=91=8A=E8=AD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 冯俊桦 --- .../filters/av_trans_coder/av_trans_audio_decoder_filter.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h index 8115d11a..a5a76884 100644 --- a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h +++ b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h @@ -138,7 +138,7 @@ private: ADecInitParams initDecParams_ = { .codecType = AudioCodecType::AUDIO_CODEC_AAC, .channel = 2, - .sampleRate = 44100; + .sampleRate = 44100, .bitRate = 12800, .sampleDepth = MediaAVCodec::SAMPLE_S16LE }; -- Gitee From fff8a1f66f474199e1fed4c20fdf49ef1d77e92d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=AF=E4=BF=8A=E6=A1=A6?= Date: Tue, 15 Jul 2025 15:04:47 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E4=BC=A0=E8=BE=93=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=91=8A=E8=AD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 冯俊桦 --- .../filters/av_trans_coder/av_trans_audio_decoder_filter.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h index a5a76884..2ad2ef1c 100644 --- a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h +++ b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h @@ -138,7 +138,7 @@ private: ADecInitParams initDecParams_ = { .codecType = AudioCodecType::AUDIO_CODEC_AAC, .channel = 2, - .sampleRate = 44100, + .sampleRate = 44100, .bitRate = 12800, .sampleDepth = MediaAVCodec::SAMPLE_S16LE }; -- Gitee From c650726780d88beaad2d3058f41770e9fd2e5fab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=AF=E4=BF=8A=E6=A1=A6?= Date: Tue, 15 Jul 2025 16:10:09 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E4=BC=A0=E8=BE=93=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E5=91=8A=E8=AD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 冯俊桦 --- av_transport/common/src/softbus_channel_adapter.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/av_transport/common/src/softbus_channel_adapter.cpp b/av_transport/common/src/softbus_channel_adapter.cpp index 436fad57..853bcd49 100644 --- a/av_transport/common/src/softbus_channel_adapter.cpp +++ b/av_transport/common/src/softbus_channel_adapter.cpp @@ -297,11 +297,9 @@ int32_t SoftbusChannelAdapter::OpenSoftbusChannel(const std::string &mySessName, }; int32_t socketId = Socket(clientInfo); if (socketId <0) { - AVTRANS_LOGE("Create OpenSoftbusChannel Socket error"); return ERR_DH_AVT_SESSION_ERROR; } if (sizeof(qos[0]) == 0) { - AVTRANS_LOGE("qos[0] siez of zero"); return ERR_DH_AVT_SESSION_ERROR; } int32_t ret = Bind(socketId, qos, sizeof(qos) / sizeof(qos[0]), &sessListener_); -- Gitee From 37da8a1f96f80ce1105cf64465b6e4b32f3e9bc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=AF=E4=BF=8A=E6=A1=A6?= Date: Wed, 16 Jul 2025 11:46:19 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E4=BC=A0=E8=BE=93=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E5=91=8A=E8=AD=A6=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 冯俊桦 --- .../av_trans_output/output_control/src/time_statistician.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/av_transport/av_trans_engine/plugin/plugins/av_trans_output/output_control/src/time_statistician.cpp b/av_transport/av_trans_engine/plugin/plugins/av_trans_output/output_control/src/time_statistician.cpp index 1717fefe..151ca46f 100644 --- a/av_transport/av_trans_engine/plugin/plugins/av_trans_output/output_control/src/time_statistician.cpp +++ b/av_transport/av_trans_engine/plugin/plugins/av_trans_output/output_control/src/time_statistician.cpp @@ -59,11 +59,12 @@ void TimeStatistician::CalAverPushInterval(const int64_t pushTime) } pushIndex_++; pushIntervalSum_ += pushInterval_; - averPushInterval_ = pushIntervalSum_ / pushIndex_; if (pushIndex_ == 0) { AVTRANS_LOGE("pushIndex_ is zero"); return; } + averPushInterval_ = pushIntervalSum_ / pushIndex_; + lastPushTime_ = pushTime_; AVTRANS_LOGD("Statistic pushInterval: %{public}lld, pushIndex: %{public}" PRIu32 ", averPushInterval: %{public}lld", pushInterval_, pushIndex_, averPushInterval_); -- Gitee From 3cbd16dd50d5c3f74d9d70b816337c7f4157dbd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=AF=E4=BF=8A=E6=A1=A6?= Date: Thu, 17 Jul 2025 16:13:02 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E4=BC=A0=E8=BE=93=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=91=8A=E8=AD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 冯俊桦 --- .../av_trans_coder/av_trans_audio_decoder_filter.h | 12 ++++++------ .../av_trans_coder/av_trans_audio_encoder_filter.h | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h index 2ad2ef1c..07c70e91 100644 --- a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h +++ b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_decoder_filter.h @@ -136,12 +136,12 @@ private: OH_AVFormat outputFormat_ = {}; ADecInitParams initDecParams_ = { - .codecType = AudioCodecType::AUDIO_CODEC_AAC, - .channel = 2, - .sampleRate = 44100, - .bitRate = 12800, - .sampleDepth = MediaAVCodec::SAMPLE_S16LE -}; + initDecParams_.codecType = AudioCodecType::AUDIO_CODEC_AAC, + initDecParams_.channel = 2, + initDecParams_.sampleRate = 44100, + initDecParams_.bitRate = 12800, + initDecParams_.sampleDepth = MediaAVCodec::SAMPLE_S16LE + }; OH_AVCodec *audioDecoder_ = nullptr; std::queue codecBufQueue_; std::queue codecIndexQueue_; diff --git a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_encoder_filter.h b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_encoder_filter.h index 582d93a4..aff40982 100644 --- a/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_encoder_filter.h +++ b/av_transport/av_trans_engine/filters/av_trans_coder/av_trans_audio_encoder_filter.h @@ -134,12 +134,12 @@ private: OH_AVFormat outputFormat_ = {}; AEncInitParams initEncParams_ = { - .codecType = AudioCodecType::AUDIO_CODEC_AAC, - .channel = 2, - .sampleRate = 44100, - .bitRate = 128000, - .sampleDepth = MediaAVCodec::AudioSampleFormat::SAMPLE_S16LE -}; + initEncParams_.codecType = AudioCodecType::AUDIO_CODEC_AAC, + initEncParams_.channel = 2, + initEncParams_.sampleRate = 44100, + initEncParams_.bitRate = 128000, + initEncParams_.sampleDepth = MediaAVCodec::AudioSampleFormat::SAMPLE_S16LE + }; OH_AVCodec *audioEncoder_ = nullptr; std::queue codecBufQueue_; std::queue codecIndexQueue_; -- Gitee