| Index: webrtc/modules/video_coding/main/source/generic_decoder.cc
|
| diff --git a/webrtc/modules/video_coding/main/source/generic_decoder.cc b/webrtc/modules/video_coding/main/source/generic_decoder.cc
|
| index f874e163c83f6ad3a3362cefe32a014f23585059..0e2451402709b5c352e340d5389108bacc2f427a 100644
|
| --- a/webrtc/modules/video_coding/main/source/generic_decoder.cc
|
| +++ b/webrtc/modules/video_coding/main/source/generic_decoder.cc
|
| @@ -18,15 +18,12 @@ namespace webrtc {
|
|
|
| VCMDecodedFrameCallback::VCMDecodedFrameCallback(VCMTiming& timing,
|
| Clock* clock)
|
| -:
|
| -_critSect(CriticalSectionWrapper::CreateCriticalSection()),
|
| -_clock(clock),
|
| -_receiveCallback(NULL),
|
| -_timing(timing),
|
| -_timestampMap(kDecoderFrameMemoryLength),
|
| -_lastReceivedPictureID(0)
|
| -{
|
| -}
|
| + : _critSect(CriticalSectionWrapper::CreateCriticalSection()),
|
| + _clock(clock),
|
| + _receiveCallback(NULL),
|
| + _timing(timing),
|
| + _timestampMap(kDecoderFrameMemoryLength),
|
| + _lastReceivedPictureID(0) {}
|
|
|
| VCMDecodedFrameCallback::~VCMDecodedFrameCallback()
|
| {
|
| @@ -102,6 +99,13 @@ uint64_t VCMDecodedFrameCallback::LastReceivedPictureID() const
|
| return _lastReceivedPictureID;
|
| }
|
|
|
| +void VCMDecodedFrameCallback::OnDecoderImplementationName(
|
| + const char* implementation_name) {
|
| + CriticalSectionScoped cs(_critSect);
|
| + if (_receiveCallback)
|
| + _receiveCallback->OnDecoderImplementationName(implementation_name);
|
| +}
|
| +
|
| void VCMDecodedFrameCallback::Map(uint32_t timestamp,
|
| VCMFrameInformation* frameInfo) {
|
| CriticalSectionScoped cs(_critSect);
|
| @@ -157,6 +161,7 @@ int32_t VCMGenericDecoder::Decode(const VCMEncodedFrame& frame,
|
| frame.CodecSpecific(),
|
| frame.RenderTimeMs());
|
|
|
| + _callback->OnDecoderImplementationName(_decoder.ImplementationName());
|
| if (ret < WEBRTC_VIDEO_CODEC_OK)
|
| {
|
| LOG(LS_WARNING) << "Failed to decode frame with timestamp "
|
|
|