Route CodecSpecificInfo from encoder to packetizer

Making a long chain of interface changes to route a CodecSpecificInfo
struct from the video encoder function to the RTPSenderVideo. This
will be used to convey information needed by the RTP packetizer when
building the RTP headers.
Review URL: http://webrtc-codereview.appspot.com/56001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@140 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
hlundin@google.com
2011-07-01 08:32:57 +00:00
parent b5427cbd35
commit 6b04739e04
24 changed files with 173 additions and 93 deletions

View File

@ -47,7 +47,10 @@ public:
//
// Return value : WEBRTC_VIDEO_CODEC_OK if OK
// <0 - Error
virtual WebRtc_Word32 Encode(const RawImage& inputImage, const void* /*codecSpecificInfo*/, VideoFrameType /*frameType*/);
virtual WebRtc_Word32
Encode(const RawImage& inputImage,
const CodecSpecificInfo* /*codecSpecificInfo*/,
VideoFrameType /*frameType*/);
// Register an encode complete callback object.
//

View File

@ -117,7 +117,9 @@ I420Encoder::InitEncode(const VideoCodec* codecSettings,
WebRtc_Word32
I420Encoder::Encode(const RawImage& inputImage, const void* /*codecSpecificInfo*/, VideoFrameType /*frameTypes*/)
I420Encoder::Encode(const RawImage& inputImage,
const CodecSpecificInfo* /*codecSpecificInfo*/,
VideoFrameType /*frameTypes*/)
{
if (!_inited)
{

View File

@ -54,9 +54,10 @@ public:
// should be dropped to keep bit rate or frame rate.
// = 0, if OK.
// < 0, on error.
virtual WebRtc_Word32 Encoded(EncodedImage& encodedImage,
const void* codecSpecificInfo = NULL,
const RTPFragmentationHeader* fragmentation = NULL) = 0;
virtual WebRtc_Word32
Encoded(EncodedImage& encodedImage,
const CodecSpecificInfo* codecSpecificInfo = NULL,
const RTPFragmentationHeader* fragmentation = NULL) = 0;
};
class VideoEncoder
@ -96,9 +97,10 @@ public:
// - frameType : The frame type to encode
//
// Return value : WEBRTC_VIDEO_CODEC_OK if OK, < 0 otherwise.
virtual WebRtc_Word32 Encode(const RawImage& inputImage,
const void* codecSpecificInfo = NULL,
VideoFrameType frameType = kDeltaFrame) = 0;
virtual WebRtc_Word32
Encode(const RawImage& inputImage,
const CodecSpecificInfo* codecSpecificInfo = NULL,
VideoFrameType frameType = kDeltaFrame) = 0;
// Register an encode complete callback object.
//

View File

@ -87,7 +87,7 @@ public:
// WEBRTC_VIDEO_CODEC_TIMEOUT
virtual WebRtc_Word32 Encode(const RawImage& inputImage,
const void* codecSpecificInfo,
const CodecSpecificInfo* codecSpecificInfo,
VideoFrameType frameType);
// Register an encode complete callback object.

View File

@ -376,7 +376,7 @@ VP8Encoder::MaxIntraTarget(WebRtc_Word32 optimalBuffersize)
WebRtc_Word32
VP8Encoder::Encode(const RawImage& inputImage,
const void* codecSpecificInfo,
const CodecSpecificInfo* codecSpecificInfo,
VideoFrameType frameTypes)
{
if (!_inited)