mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-24 09:10:36 +00:00
gstrtpg722pay: Compensate for clockrate vs. samplerate difference
The RTP clock-rate used for G722 is 8000, even though the samplerate is 16000. Compensate for this by pretending G722 has 8 bits per sample instead of the 4 bits as if it were a codec that ran at half the speed, but with twice the number of bits. Fixes #661376
This commit is contained in:
parent
95db648516
commit
bf65acf11f
1 changed files with 4 additions and 2 deletions
|
@ -160,9 +160,11 @@ gst_rtp_g722_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
rtpg722pay->rate = rate;
|
||||
rtpg722pay->channels = channels;
|
||||
|
||||
/* octet-per-sample is 1 * channels for G722 */
|
||||
/* bits-per-sample is 4 * channels for G722, but as the RTP clock runs at
|
||||
* half speed (8 instead of 16 khz), pretend it's 8 bits per sample
|
||||
* channels. */
|
||||
gst_base_rtp_audio_payload_set_samplebits_options (basertpaudiopayload,
|
||||
4 * rtpg722pay->channels);
|
||||
8 * rtpg722pay->channels);
|
||||
|
||||
return res;
|
||||
|
||||
|
|
Loading…
Reference in a new issue