diff options
author | scherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-09 16:27:08 +0000 |
---|---|---|
committer | scherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-09 16:27:08 +0000 |
commit | 25b04750be362f20f235d58da43aac774d4f4524 (patch) | |
tree | a7ebb119b721ea5bdf2eca0b319082600bcc0482 /media/ffmpeg | |
parent | 9f33ba5fbe668ea4c1ce1c35ac8b92a989f475f3 (diff) | |
download | chromium_src-25b04750be362f20f235d58da43aac774d4f4524.zip chromium_src-25b04750be362f20f235d58da43aac774d4f4524.tar.gz chromium_src-25b04750be362f20f235d58da43aac774d4f4524.tar.bz2 |
Remove FFmpegVideoDecodeEngine's dependency on AVStream.
First step of many towards removing DemuxerStream::QueryInterface, AVStreamProvider, and MediaFormat.
BUG=28206
TEST=media_unittests
Review URL: http://codereview.chromium.org/6624062
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77476 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/ffmpeg')
-rw-r--r-- | media/ffmpeg/ffmpeg_common.cc | 42 | ||||
-rw-r--r-- | media/ffmpeg/ffmpeg_common.h | 4 |
2 files changed, 46 insertions, 0 deletions
diff --git a/media/ffmpeg/ffmpeg_common.cc b/media/ffmpeg/ffmpeg_common.cc index 244d2729..dce96a5 100644 --- a/media/ffmpeg/ffmpeg_common.cc +++ b/media/ffmpeg/ffmpeg_common.cc @@ -4,8 +4,50 @@ #include "media/ffmpeg/ffmpeg_common.h" +#include "base/logging.h" + namespace media { // TODO(scherkus): combine ffmpeg_common.h with ffmpeg_util.h +VideoCodec CodecIDToVideoCodec(CodecID codec_id) { + switch (codec_id) { + case CODEC_ID_VC1: + return kCodecVC1; + case CODEC_ID_H264: + return kCodecH264; + case CODEC_ID_THEORA: + return kCodecTheora; + case CODEC_ID_MPEG2VIDEO: + return kCodecMPEG2; + case CODEC_ID_MPEG4: + return kCodecMPEG4; + case CODEC_ID_VP8: + return kCodecVP8; + default: + NOTREACHED(); + } + return kUnknown; +} + +CodecID VideoCodecToCodecID(VideoCodec video_codec) { + switch (video_codec) { + case kCodecVC1: + return CODEC_ID_VC1; + case kCodecH264: + return CODEC_ID_H264; + case kCodecTheora: + return CODEC_ID_THEORA; + case kCodecMPEG2: + return CODEC_ID_MPEG2VIDEO; + case kCodecMPEG4: + return CODEC_ID_MPEG4; + case kCodecVP8: + return CODEC_ID_VP8; + default: + NOTREACHED(); + } + return CODEC_ID_NONE; +} + } // namespace media diff --git a/media/ffmpeg/ffmpeg_common.h b/media/ffmpeg/ffmpeg_common.h index 714a6a1..3b0d0ee 100644 --- a/media/ffmpeg/ffmpeg_common.h +++ b/media/ffmpeg/ffmpeg_common.h @@ -10,6 +10,7 @@ #include "base/compiler_specific.h" #include "base/singleton.h" +#include "media/video/video_decode_engine.h" // Include FFmpeg header files. extern "C" { @@ -48,6 +49,9 @@ class ScopedPtrAVFreePacket { } }; +VideoCodec CodecIDToVideoCodec(CodecID codec_id); +CodecID VideoCodecToCodecID(VideoCodec video_codec); + } // namespace media #endif // MEDIA_FFMPEG_FFMPEG_COMMON_H_ |