diff --git a/src/media/audio/audio_rtp_session.cpp b/src/media/audio/audio_rtp_session.cpp
index 4539793540f96b62168e20029538b6bff295ea9f..c51bdf4b93b2901b71dd4f6310398fc82fa77890 100644
--- a/src/media/audio/audio_rtp_session.cpp
+++ b/src/media/audio/audio_rtp_session.cpp
@@ -173,6 +173,8 @@ AudioSender::process()
     auto accountAudioCodec = std::static_pointer_cast<AccountAudioCodecInfo>(args_.codec);
     micData_.setChannelNum(accountAudioCodec->audioformat.nb_channels, true);
 
+    Smartools::getInstance().setLocalAudioCodec(audioEncoder_->getEncoderName());
+
     if (mainBuffFormat.sample_rate != accountAudioCodec->audioformat.sample_rate) {
         if (not resampler_) {
             RING_DBG("Creating audio resampler");
@@ -181,7 +183,6 @@ AudioSender::process()
         resampledData_.setFormat(accountAudioCodec->audioformat);
         resampledData_.resize(samplesToGet);
         resampler_->resample(micData_, resampledData_);
-        Smartools::getInstance().setLocalAudioCodec(audioEncoder_->getEncoderName());
         if (audioEncoder_->encode_audio(resampledData_) < 0)
             RING_ERR("encoding failed");
     } else {