Not creating InputAudioRawFrame in case we don't have bytes. Fixed for Pilvo, Exotel and Telnyx.
This commit is contained in:
@@ -144,6 +144,9 @@ class ExotelFrameSerializer(FrameSerializer):
|
|||||||
self._exotel_sample_rate,
|
self._exotel_sample_rate,
|
||||||
self._sample_rate,
|
self._sample_rate,
|
||||||
)
|
)
|
||||||
|
if deserialized_data is None or len(deserialized_data) == 0:
|
||||||
|
# Ignoring in case we don't have audio
|
||||||
|
return None
|
||||||
|
|
||||||
# Input: Exotel takes PCM data, so just resample to match sample_rate
|
# Input: Exotel takes PCM data, so just resample to match sample_rate
|
||||||
audio_frame = InputAudioRawFrame(
|
audio_frame = InputAudioRawFrame(
|
||||||
|
|||||||
@@ -227,6 +227,10 @@ class PlivoFrameSerializer(FrameSerializer):
|
|||||||
deserialized_data = await ulaw_to_pcm(
|
deserialized_data = await ulaw_to_pcm(
|
||||||
payload, self._plivo_sample_rate, self._sample_rate, self._input_resampler
|
payload, self._plivo_sample_rate, self._sample_rate, self._input_resampler
|
||||||
)
|
)
|
||||||
|
if deserialized_data is None or len(deserialized_data) == 0:
|
||||||
|
# Ignoring in case we don't have audio
|
||||||
|
return None
|
||||||
|
|
||||||
audio_frame = InputAudioRawFrame(
|
audio_frame = InputAudioRawFrame(
|
||||||
audio=deserialized_data, num_channels=1, sample_rate=self._sample_rate
|
audio=deserialized_data, num_channels=1, sample_rate=self._sample_rate
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -262,6 +262,10 @@ class TelnyxFrameSerializer(FrameSerializer):
|
|||||||
else:
|
else:
|
||||||
raise ValueError(f"Unsupported encoding: {self._params.outbound_encoding}")
|
raise ValueError(f"Unsupported encoding: {self._params.outbound_encoding}")
|
||||||
|
|
||||||
|
if deserialized_data is None or len(deserialized_data) == 0:
|
||||||
|
# Ignoring in case we don't have audio
|
||||||
|
return None
|
||||||
|
|
||||||
audio_frame = InputAudioRawFrame(
|
audio_frame = InputAudioRawFrame(
|
||||||
audio=deserialized_data, num_channels=1, sample_rate=self._sample_rate
|
audio=deserialized_data, num_channels=1, sample_rate=self._sample_rate
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user