Adding a payload type to AudioEncoder objects

The type is set in the Config struct and is provided in the EncodedInfo
output struct from each Encode() call. The audio_decoder_unittest is
updated to verify correct propagation of the payload type.

BUG=3926
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/27299004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7780 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
henrik.lundin@webrtc.org
2014-12-02 12:08:39 +00:00
parent 0cd5558f2b
commit 7f1dfa5b61
8 changed files with 37 additions and 3 deletions

View File

@@ -29,6 +29,7 @@ int16_t NumSamplesPerFrame(int num_channels,
AudioEncoderPcm::AudioEncoderPcm(const Config& config)
: num_channels_(config.num_channels),
payload_type_(config.payload_type),
num_10ms_frames_per_packet_(config.frame_size_ms / 10),
full_frame_samples_(NumSamplesPerFrame(num_channels_,
config.frame_size_ms,
@@ -73,6 +74,7 @@ bool AudioEncoderPcm::Encode(uint32_t timestamp,
int16_t ret = EncodeCall(&speech_buffer_[0], full_frame_samples_, encoded);
speech_buffer_.clear();
info->encoded_timestamp = first_timestamp_in_buffer_;
info->payload_type = payload_type_;
if (ret < 0)
return false;
*encoded_bytes = static_cast<size_t>(ret);