| Index: webrtc/modules/video_coding/main/source/generic_encoder.h
|
| diff --git a/webrtc/modules/video_coding/main/source/generic_encoder.h b/webrtc/modules/video_coding/main/source/generic_encoder.h
|
| deleted file mode 100644
|
| index 3a7132860f84cd60aab18d7d19b5b84cee092bff..0000000000000000000000000000000000000000
|
| --- a/webrtc/modules/video_coding/main/source/generic_encoder.h
|
| +++ /dev/null
|
| @@ -1,142 +0,0 @@
|
| -/*
|
| - * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
|
| - *
|
| - * Use of this source code is governed by a BSD-style license
|
| - * that can be found in the LICENSE file in the root of the source
|
| - * tree. An additional intellectual property rights grant can be found
|
| - * in the file PATENTS. All contributing project authors may
|
| - * be found in the AUTHORS file in the root of the source tree.
|
| - */
|
| -
|
| -#ifndef WEBRTC_MODULES_VIDEO_CODING_GENERIC_ENCODER_H_
|
| -#define WEBRTC_MODULES_VIDEO_CODING_GENERIC_ENCODER_H_
|
| -
|
| -#include "webrtc/modules/video_coding/codecs/interface/video_codec_interface.h"
|
| -#include "webrtc/modules/video_coding/main/interface/video_coding_defines.h"
|
| -
|
| -#include <stdio.h>
|
| -
|
| -#include "webrtc/base/criticalsection.h"
|
| -#include "webrtc/base/scoped_ptr.h"
|
| -
|
| -namespace webrtc {
|
| -class CriticalSectionWrapper;
|
| -
|
| -namespace media_optimization {
|
| -class MediaOptimization;
|
| -} // namespace media_optimization
|
| -
|
| -struct EncoderParameters {
|
| - uint32_t target_bitrate;
|
| - uint8_t loss_rate;
|
| - int64_t rtt;
|
| - uint32_t input_frame_rate;
|
| -};
|
| -
|
| -/*************************************/
|
| -/* VCMEncodeFrameCallback class */
|
| -/***********************************/
|
| -class VCMEncodedFrameCallback : public EncodedImageCallback
|
| -{
|
| -public:
|
| - VCMEncodedFrameCallback(EncodedImageCallback* post_encode_callback);
|
| - virtual ~VCMEncodedFrameCallback();
|
| -
|
| - /*
|
| - * Callback implementation - codec encode complete
|
| - */
|
| - int32_t Encoded(
|
| - const EncodedImage& encodedImage,
|
| - const CodecSpecificInfo* codecSpecificInfo = NULL,
|
| - const RTPFragmentationHeader* fragmentationHeader = NULL);
|
| - /*
|
| - * Callback implementation - generic encoder encode complete
|
| - */
|
| - int32_t SetTransportCallback(VCMPacketizationCallback* transport);
|
| - /**
|
| - * Set media Optimization
|
| - */
|
| - void SetMediaOpt (media_optimization::MediaOptimization* mediaOpt);
|
| -
|
| - void SetPayloadType(uint8_t payloadType) { _payloadType = payloadType; };
|
| - void SetInternalSource(bool internalSource) { _internalSource = internalSource; };
|
| -
|
| - void SetRotation(VideoRotation rotation) { _rotation = rotation; }
|
| -
|
| -private:
|
| - VCMPacketizationCallback* _sendCallback;
|
| - media_optimization::MediaOptimization* _mediaOpt;
|
| - uint8_t _payloadType;
|
| - bool _internalSource;
|
| - VideoRotation _rotation;
|
| -
|
| - EncodedImageCallback* post_encode_callback_;
|
| -
|
| -#ifdef DEBUG_ENCODER_BIT_STREAM
|
| - FILE* _bitStreamAfterEncoder;
|
| -#endif
|
| -};// end of VCMEncodeFrameCallback class
|
| -
|
| -
|
| -/******************************/
|
| -/* VCMGenericEncoder class */
|
| -/******************************/
|
| -class VCMGenericEncoder
|
| -{
|
| - friend class VCMCodecDataBase;
|
| -public:
|
| - VCMGenericEncoder(VideoEncoder* encoder,
|
| - VideoEncoderRateObserver* rate_observer,
|
| - VCMEncodedFrameCallback* encoded_frame_callback,
|
| - bool internalSource);
|
| - ~VCMGenericEncoder();
|
| - /**
|
| - * Free encoder memory
|
| - */
|
| - int32_t Release();
|
| - /**
|
| - * Initialize the encoder with the information from the VideoCodec
|
| - */
|
| - int32_t InitEncode(const VideoCodec* settings,
|
| - int32_t numberOfCores,
|
| - size_t maxPayloadSize);
|
| - /**
|
| - * Encode raw image
|
| - * inputFrame : Frame containing raw image
|
| - * codecSpecificInfo : Specific codec data
|
| - * cameraFrameRate : Request or information from the remote side
|
| - * frameType : The requested frame type to encode
|
| - */
|
| - int32_t Encode(const VideoFrame& inputFrame,
|
| - const CodecSpecificInfo* codecSpecificInfo,
|
| - const std::vector<FrameType>& frameTypes);
|
| -
|
| - void SetEncoderParameters(const EncoderParameters& params);
|
| - EncoderParameters GetEncoderParameters() const;
|
| -
|
| - int32_t SetPeriodicKeyFrames(bool enable);
|
| -
|
| - int32_t RequestFrame(const std::vector<FrameType>& frame_types);
|
| -
|
| - bool InternalSource() const;
|
| -
|
| - void OnDroppedFrame();
|
| -
|
| - bool SupportsNativeHandle() const;
|
| -
|
| - int GetTargetFramerate();
|
| -
|
| -private:
|
| - VideoEncoder* const encoder_;
|
| - VideoEncoderRateObserver* const rate_observer_;
|
| - VCMEncodedFrameCallback* const vcm_encoded_frame_callback_;
|
| - const bool internal_source_;
|
| - mutable rtc::CriticalSection params_lock_;
|
| - EncoderParameters encoder_params_ GUARDED_BY(params_lock_);
|
| - VideoRotation rotation_;
|
| - bool is_screenshare_;
|
| -}; // end of VCMGenericEncoder class
|
| -
|
| -} // namespace webrtc
|
| -
|
| -#endif // WEBRTC_MODULES_VIDEO_CODING_GENERIC_ENCODER_H_
|
|
|