diff options
Diffstat (limited to 'media/video')
-rw-r--r-- | media/video/encoded_video_source.h | 79 | ||||
-rw-r--r-- | media/video/video_encode_types.h | 53 |
2 files changed, 0 insertions, 132 deletions
diff --git a/media/video/encoded_video_source.h b/media/video/encoded_video_source.h deleted file mode 100644 index f0c9a13..0000000 --- a/media/video/encoded_video_source.h +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef MEDIA_VIDEO_ENCODED_VIDEO_SOURCE_H_ -#define MEDIA_VIDEO_ENCODED_VIDEO_SOURCE_H_ - -#include "base/memory/ref_counted.h" -#include "media/base/encoded_bitstream_buffer.h" -#include "media/video/video_encode_types.h" - -namespace media { - -// Class to represent any encoded video source. Anything that provides encoded -// video can be an EncodedVideoSource. Notable examples of this can be video -// encoder and webcam that has encoding capabilities. -// TODO(hshi): merge this with VEA interface. http://crbug.com/248334. -class EncodedVideoSource { - public: - class Client { - public: - // Notifies client that bitstream is opened successfully. The |params| - // contains the actual encoding parameters chosen by the browser process. - // It may be different from the params requested in OpenBitstream(). - virtual void OnOpened(const VideoEncodingParameters& params) = 0; - - // Notifies client that bitstream is closed. After this call it is - // guaranteed that client will not receive further calls. - virtual void OnClosed() = 0; - - // Delivers an encoded bitstream buffer to the client. - virtual void OnBufferReady( - scoped_refptr<const EncodedBitstreamBuffer> buffer) = 0; - - // Notifies client that encoding parameters has changed. The |params| - // contains the current encoding parameters chosen by the browser process. - // It may be different from the params requested in TrySetBitstreamConfig(). - virtual void OnConfigChanged( - const RuntimeVideoEncodingParameters& params) = 0; - }; - - // Callback is invoked once RequestCapabilities() is complete. - typedef base::Callback<void(const VideoEncodingCapabilities& capabilities)> - RequestCapabilitiesCallback; - - // RequestCapabilities initiates an asynchronous query for the types of - // encoded bitstream supported by the encoder. This call should be invoked - // only once. EncodedVideoSource will invoke |callback| when capabilities - // become available. - virtual void RequestCapabilities( - const RequestCapabilitiesCallback& callback) = 0; - - // OpenBitstream opens the bitstream on the encoded video source. Only one - // bitstream can be opened for an encoded video source. - virtual void OpenBitstream(Client* client, - const VideoEncodingParameters& params) = 0; - - // CloseBitstream closes the bitstream. - virtual void CloseBitstream() = 0; - - // ReturnBitstreamBuffer notifies that the data within the buffer has been - // processed and it can be reused to encode upcoming bitstream. - virtual void ReturnBitstreamBuffer( - scoped_refptr<const media::EncodedBitstreamBuffer> buffer) = 0; - - // TrySetBitstreamConfig requests to change encoding parameters. Old config - // must be considered valid until OnConfigChanged is invoked on the client - // signaling successful change. - virtual void TrySetBitstreamConfig( - const RuntimeVideoEncodingParameters& params) = 0; - - // RequestKeyFrame requests a key frame. - virtual void RequestKeyFrame() = 0; -}; - -} // namespace media - -#endif // MEDIA_VIDEO_ENCODED_VIDEO_SOURCE_H_ - diff --git a/media/video/video_encode_types.h b/media/video/video_encode_types.h deleted file mode 100644 index 15effab..0000000 --- a/media/video/video_encode_types.h +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. -#ifndef MEDIA_VIDEO_VIDEO_ENCODE_TYPES_H_ -#define MEDIA_VIDEO_VIDEO_ENCODE_TYPES_H_ - -#include <map> -#include <ostream> -#include <vector> - -#include "base/time/time.h" -#include "media/base/video_decoder_config.h" -#include "ui/gfx/size.h" - -namespace media { - -// Data to represent limitations for a particular encoder config. -// The |max_bitrate| value is in bits per second. -struct VideoEncodingConfig { - VideoCodec codec_type; - std::string codec_name; - gfx::Size max_resolution; - uint32 max_frames_per_second; - uint32 max_bitrate; -}; - -typedef std::vector<VideoEncodingConfig> VideoEncodingCapabilities; - -// Encoding parameters that can be configured during streaming without removing -// the bitstream first. The |target_bitrate| and |max_bitrate| values are in -// bits per second. -struct RuntimeVideoEncodingParameters { - uint32 target_bitrate; - uint32 max_bitrate; - uint32 frames_per_second; -}; - -// Generic video encoding parameters to be configured during initialization -// time. -struct VideoEncodingParameters { - std::string codec_name; - gfx::Size resolution; - RuntimeVideoEncodingParameters runtime_params; -}; - -struct BufferEncodingMetadata { - base::Time timestamp; - bool key_frame; -}; - -} // namespace media - -#endif // MEDIA_VIDEO_VIDEO_ENCODE_TYPES_H_ |