summaryrefslogtreecommitdiff
path: root/voice_engine/voe_base_impl.h
diff options
context:
space:
mode:
authorwu@webrtc.org <wu@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d>2014-06-05 20:34:08 +0000
committerwu@webrtc.org <wu@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d>2014-06-05 20:34:08 +0000
commit81f8df9af96c6b4bf43234f2a0162146a5da6112 (patch)
tree9c40832ad59dac6f440d07f1a3fb9524dbd24b60 /voice_engine/voe_base_impl.h
parent553b68f8800030af6af2a5dd3a941258cd05a275 (diff)
downloadwebrtc-81f8df9af96c6b4bf43234f2a0162146a5da6112.tar.gz
Fix the chain that propagates the audio frame's rtp and ntp timestamp including:
* In AudioCodingModuleImpl::PlayoutData10Ms, don't reset the timestamp got from GetAudio. * When there're more than one participant, set AudioFrame's RTP timestamp to 0. * Copy ntp_time_ms_ in AudioFrame::CopyFrom method. * In RemixAndResample, pass src frame's timestamp_ and ntp_time_ms_ to the dst frame. * Fix how |elapsed_time_ms| is computed in channel.cc by adding GetPlayoutFrequency. Tweaks on ntp_time_ms_: * Init ntp_time_ms_ to -1 in AudioFrame ctor. * When there're more than one participant, set AudioFrame's ntp_time_ms_ to an invalid value. I.e. we don't support ntp_time_ms_ in multiple participants case before the mixing is moved to chrome. Added elapsed_time_ms to AudioFrame and pass it to chrome, where we don't have the information about the rtp timestmp's sample rate, i.e. can't convert rtp timestamp to ms. BUG=3111 R=henrik.lundin@webrtc.org, turaj@webrtc.org, xians@webrtc.org TBR=andrew andrew to take another look on audio_conference_mixer_impl.cc Review URL: https://webrtc-codereview.appspot.com/14559004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6346 4adac7df-926f-26a2-2b94-8c16560cd09d
Diffstat (limited to 'voice_engine/voe_base_impl.h')
-rw-r--r--voice_engine/voe_base_impl.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/voice_engine/voe_base_impl.h b/voice_engine/voe_base_impl.h
index fbcb4dd8..985ef5d8 100644
--- a/voice_engine/voe_base_impl.h
+++ b/voice_engine/voe_base_impl.h
@@ -80,7 +80,7 @@ public:
uint32_t samplesPerSec,
void* audioSamples,
uint32_t& nSamplesOut,
- uint32_t* rtp_timestamp,
+ int64_t* elapsed_time_ms,
int64_t* ntp_time_ms);
virtual int OnDataAvailable(const int voe_channels[],
@@ -105,7 +105,7 @@ public:
virtual void PullRenderData(int bits_per_sample, int sample_rate,
int number_of_channels, int number_of_frames,
void* audio_data,
- uint32_t* rtp_timestamp,
+ int64_t* elapsed_time_ms,
int64_t* ntp_time_ms);
// AudioDeviceObserver
@@ -143,7 +143,7 @@ private:
void GetPlayoutData(int sample_rate, int number_of_channels,
int number_of_frames, bool feed_data_to_apm,
void* audio_data,
- uint32_t* rtp_timestamp,
+ int64_t* elapsed_time_ms,
int64_t* ntp_time_ms);
int32_t AddBuildInfo(char* str) const;