Removing FrameForStorage

R=pwestin@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4688 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
mikhal@webrtc.org
2013-09-05 22:34:41 +00:00
parent c31d4d0324
commit f1e807c0e5
17 changed files with 5 additions and 172 deletions

View File

@ -149,29 +149,6 @@ const RTPFragmentationHeader* VCMEncodedFrame::FragmentationHeader() const {
return &_fragmentation;
}
int32_t
VCMEncodedFrame::Store(VCMFrameStorageCallback& storeCallback) const
{
EncodedVideoData frameToStore;
frameToStore.codec = _codec;
if (_buffer != NULL)
{
frameToStore.VerifyAndAllocate(_length);
memcpy(frameToStore.payloadData, _buffer, _length);
frameToStore.payloadSize = _length;
}
frameToStore.completeFrame = _completeFrame;
frameToStore.encodedWidth = _encodedWidth;
frameToStore.encodedHeight = _encodedHeight;
frameToStore.frameType = ConvertFrameType(_frameType);
frameToStore.missingFrame = _missingFrame;
frameToStore.payloadType = _payloadType;
frameToStore.renderTimeMs = _renderTimeMs;
frameToStore.timeStamp = _timeStamp;
storeCallback.StoreReceivedFrame(frameToStore);
return VCM_OK;
}
int32_t
VCMEncodedFrame::VerifyAndAllocate(const uint32_t minimumSize)
{

View File

@ -91,8 +91,6 @@ public:
const RTPFragmentationHeader* FragmentationHeader() const;
int32_t Store(VCMFrameStorageCallback& storeCallback) const;
static webrtc::FrameType ConvertFrameType(VideoFrameType frameType);
static VideoFrameType ConvertFrameType(webrtc::FrameType frameType);
static void ConvertFrameTypes(

View File

@ -243,27 +243,6 @@ VCMFrameBuffer::SetState(VCMFrameBufferStateEnum state) {
_state = state;
}
int32_t
VCMFrameBuffer::ExtractFromStorage(const EncodedVideoData& frameFromStorage) {
_frameType = ConvertFrameType(frameFromStorage.frameType);
_timeStamp = frameFromStorage.timeStamp;
_payloadType = frameFromStorage.payloadType;
_encodedWidth = frameFromStorage.encodedWidth;
_encodedHeight = frameFromStorage.encodedHeight;
_missingFrame = frameFromStorage.missingFrame;
_completeFrame = frameFromStorage.completeFrame;
_renderTimeMs = frameFromStorage.renderTimeMs;
_codec = frameFromStorage.codec;
const uint8_t *prevBuffer = _buffer;
if (VerifyAndAllocate(frameFromStorage.payloadSize) < 0) {
return VCM_MEMORY;
}
_sessionInfo.UpdateDataPointers(prevBuffer, _buffer);
memcpy(_buffer, frameFromStorage.payloadData, frameFromStorage.payloadSize);
_length = frameFromStorage.payloadSize;
return VCM_OK;
}
// Set counted status (as counted by JB or not)
void VCMFrameBuffer::SetCountedFrame(bool frameCounted) {
_frameCounted = frameCounted;

View File

@ -77,8 +77,6 @@ class VCMFrameBuffer : public VCMEncodedFrame {
webrtc::FrameType FrameType() const;
void SetPreviousFrameLoss();
int32_t ExtractFromStorage(const EncodedVideoData& frameFromStorage);
// The number of packets discarded because the decoder can't make use of
// them.
int NotDecodablePackets() const;

View File

@ -59,7 +59,6 @@ VideoCodingModuleImpl::VideoCodingModuleImpl(const int32_t id,
_decodedFrameCallback(_timing, clock_),
_dualDecodedFrameCallback(_dualTiming, clock_),
_frameTypeCallback(NULL),
_frameStorageCallback(NULL),
_receiveStatsCallback(NULL),
_packetRequestCallback(NULL),
render_buffer_callback_(NULL),
@ -712,7 +711,6 @@ VideoCodingModuleImpl::InitializeReceiver() {
_decodedFrameCallback.SetUserReceiveCallback(NULL);
_receiverInited = true;
_frameTypeCallback = NULL;
_frameStorageCallback = NULL;
_receiveStatsCallback = NULL;
_packetRequestCallback = NULL;
_keyRequestMode = kKeyOnError;
@ -764,14 +762,6 @@ VideoCodingModuleImpl::RegisterFrameTypeCallback(
return VCM_OK;
}
int32_t
VideoCodingModuleImpl::RegisterFrameStorageCallback(
VCMFrameStorageCallback* frameStorageCallback) {
CriticalSectionScoped cs(_receiveCritSect);
_frameStorageCallback = frameStorageCallback;
return VCM_OK;
}
int32_t
VideoCodingModuleImpl::RegisterPacketRequestCallback(
VCMPacketRequestCallback* callback) {
@ -850,13 +840,6 @@ VideoCodingModuleImpl::Decode(uint16_t maxWaitTimeMs) {
}
}
#endif
if (_frameStorageCallback != NULL) {
int32_t ret = frame->Store(*_frameStorageCallback);
if (ret < 0) {
return ret;
}
}
const int32_t ret = Decode(*frame);
_receiver.ReleaseFrame(frame);
frame = NULL;
@ -1027,17 +1010,6 @@ VideoCodingModuleImpl::Decode(const VCMEncodedFrame& frame) {
return ret;
}
int32_t
VideoCodingModuleImpl::DecodeFromStorage(
const EncodedVideoData& frameFromStorage) {
CriticalSectionScoped cs(_receiveCritSect);
int32_t ret = _frameFromFile.ExtractFromStorage(frameFromStorage);
if (ret < 0) {
return ret;
}
return Decode(_frameFromFile);
}
// Reset the decoder state
int32_t
VideoCodingModuleImpl::ResetDecoder() {

View File

@ -188,10 +188,6 @@ public:
virtual int32_t RegisterFrameTypeCallback(
VCMFrameTypeCallback* frameTypeCallback);
// Register a frame storage callback.
virtual int32_t RegisterFrameStorageCallback(
VCMFrameStorageCallback* frameStorageCallback);
// Nack callback
virtual int32_t RegisterPacketRequestCallback(
VCMPacketRequestCallback* callback);
@ -222,11 +218,6 @@ public:
uint32_t payloadLength,
const WebRtcRTPHeader& rtpInfo);
// A part of an encoded frame to be decoded.
// Used in conjunction with VCMFrameStorageCallback.
virtual int32_t DecodeFromStorage(
const EncodedVideoData& frameFromStorage);
// Minimum playout delay (Used for lip-sync). This is the minimum delay
// required to sync with audio. Not included in VideoCodingModule::Delay()
// Defaults to 0 ms.
@ -300,7 +291,6 @@ private:
VCMDecodedFrameCallback _decodedFrameCallback;
VCMDecodedFrameCallback _dualDecodedFrameCallback;
VCMFrameTypeCallback* _frameTypeCallback;
VCMFrameStorageCallback* _frameStorageCallback;
VCMReceiveStatisticsCallback* _receiveStatsCallback;
VCMPacketRequestCallback* _packetRequestCallback;
VCMRenderBufferSizeCallback* render_buffer_callback_;

View File

@ -49,7 +49,6 @@
# sources
'../test/codec_database_test.cc',
'../test/decode_from_storage_test.cc',
'../test/generic_codec_test.cc',
'../test/media_opt_test.cc',
'../test/mt_test_common.cc',