diff options
author | Kennan Gumbs <kennangumbs@google.com> | 2021-08-10 18:46:42 -0400 |
---|---|---|
committer | Openscreen LUCI CQ <openscreen-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2021-08-11 17:02:39 +0000 |
commit | 65bcc6e2e999734396ed5abef202b1bfe4228e21 (patch) | |
tree | 521c5027f7d80f248994d3240b51d9210b3df251 /cast/standalone_receiver/sdl_video_player.cc | |
parent | 8b2ec3ddc163fe9c5216d4869d3b5f0c7efd33b1 (diff) | |
download | openscreen-65bcc6e2e999734396ed5abef202b1bfe4228e21.tar.gz |
Enable AV1 codec in standalone sender and receiver
This patch adds support for AV1 using libaom. It also adds
documentation for compiling libaom from source, since the version
provided by the Linux package manager is too slow for realistic use.
Change-Id: Icd0bb3001a1107087749de9e24a9781b3b8b04d4
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/3066030
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Jordan Bayles <jophba@chromium.org>
Diffstat (limited to 'cast/standalone_receiver/sdl_video_player.cc')
-rw-r--r-- | cast/standalone_receiver/sdl_video_player.cc | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/cast/standalone_receiver/sdl_video_player.cc b/cast/standalone_receiver/sdl_video_player.cc index 999545de..a1b89177 100644 --- a/cast/standalone_receiver/sdl_video_player.cc +++ b/cast/standalone_receiver/sdl_video_player.cc @@ -8,6 +8,7 @@ #include <utility> #include "cast/standalone_receiver/avcodec_glue.h" +#include "util/enum_name_table.h" #include "util/osp_logging.h" #include "util/trace_logging.h" @@ -18,6 +19,13 @@ namespace { constexpr char kVideoMediaType[] = "video"; } // namespace +constexpr EnumNameTable<VideoCodec, 6> kFfmpegCodecDescriptors{ + {{"h264", VideoCodec::kH264}, + {"vp8", VideoCodec::kVp8}, + {"hevc", VideoCodec::kHevc}, + {"vp9", VideoCodec::kVp9}, + {"libaom-av1", VideoCodec::kAv1}}}; + SDLVideoPlayer::SDLVideoPlayer(ClockNowFunctionPtr now_function, TaskRunner* task_runner, Receiver* receiver, @@ -27,7 +35,7 @@ SDLVideoPlayer::SDLVideoPlayer(ClockNowFunctionPtr now_function, : SDLPlayerBase(now_function, task_runner, receiver, - CodecToString(codec), + GetEnumName(kFfmpegCodecDescriptors, codec).value(), std::move(error_callback), kVideoMediaType), renderer_(renderer) { |