Commit dcc4587b authored by Ricky Liang's avatar Ricky Liang Committed by Commit Bot

Move format_utils.* from media/gpu to media/base

Also changes GfxBufferFormatToVideoPixelFormat to return nullopt when
the input GFX format is invalid instead of crashing through LOG(FATAL).

Bug: 982201, 997581
Change-Id: Id98fe66dbc82dc9d520623296f92107bd1dc8707
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1792362
Commit-Queue: Ricky Liang <jcliang@chromium.org>
Reviewed-by: default avatarHirokazu Honda <hiroh@chromium.org>
Reviewed-by: default avatarDan Sanders <sandersd@chromium.org>
Cr-Commit-Position: refs/heads/master@{#695063}
parent 797ebfdc
......@@ -13,7 +13,6 @@
#include "components/arc/video_accelerator/protected_buffer_manager.h"
#include "media/base/video_frame.h"
#include "media/base/video_types.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/gpu_video_decode_accelerator_factory.h"
#include "media/gpu/macros.h"
#include "mojo/public/cpp/system/platform_handle.h"
......
......@@ -13,7 +13,7 @@
#include "components/arc/video_accelerator/arc_video_accelerator_util.h"
#include "components/arc/video_accelerator/protected_buffer_allocator.h"
#include "components/arc/video_accelerator/protected_buffer_manager.h"
#include "media/gpu/format_utils.h"
#include "media/base/format_utils.h"
#include "media/gpu/macros.h"
#include "mojo/public/c/system/types.h"
#include "mojo/public/cpp/system/platform_handle.h"
......
......@@ -36,11 +36,11 @@
#include "build/build_config.h"
#include "components/chromeos_camera/gpu_mjpeg_decode_accelerator_factory.h"
#include "components/chromeos_camera/mjpeg_decode_accelerator.h"
#include "media/base/format_utils.h"
#include "media/base/test_data_util.h"
#include "media/base/video_frame_layout.h"
#include "media/capture/video/chromeos/local_gpu_memory_buffer_manager.h"
#include "media/gpu/buildflags.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/test/video_accelerator_unittest_helpers.h"
#include "media/gpu/test/video_frame_helpers.h"
#include "media/parsers/jpeg_parser.h"
......
......@@ -148,6 +148,8 @@ jumbo_source_set("base") {
"fallback_video_decoder.h",
"feedback_signal_accumulator.h",
"flinging_controller.h",
"format_utils.cc",
"format_utils.h",
"hdr_metadata.cc",
"hdr_metadata.h",
"key_system_names.cc",
......
......@@ -2,13 +2,14 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "media/gpu/format_utils.h"
#include "media/base/format_utils.h"
#include "base/logging.h"
#include "ui/gfx/buffer_format_util.h"
namespace media {
VideoPixelFormat GfxBufferFormatToVideoPixelFormat(gfx::BufferFormat format) {
base::Optional<VideoPixelFormat> GfxBufferFormatToVideoPixelFormat(
gfx::BufferFormat format) {
switch (format) {
case gfx::BufferFormat::BGRX_8888:
return PIXEL_FORMAT_XRGB;
......@@ -31,9 +32,9 @@ VideoPixelFormat GfxBufferFormatToVideoPixelFormat(gfx::BufferFormat format) {
return PIXEL_FORMAT_NV12;
default:
LOG(FATAL) << "Unsupported BufferFormat: "
<< gfx::BufferFormatToString(format);
return PIXEL_FORMAT_UNKNOWN;
DLOG(WARNING) << "Unsupported BufferFormat: "
<< gfx::BufferFormatToString(format);
return base::nullopt;
}
}
......
......@@ -2,22 +2,22 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef MEDIA_GPU_FORMAT_UTILS_H_
#define MEDIA_GPU_FORMAT_UTILS_H_
#ifndef MEDIA_BASE_FORMAT_UTILS_H_
#define MEDIA_BASE_FORMAT_UTILS_H_
#include "base/optional.h"
#include "media/base/media_export.h"
#include "media/base/video_types.h"
#include "media/gpu/media_gpu_export.h"
#include "ui/gfx/buffer_types.h"
namespace media {
MEDIA_GPU_EXPORT VideoPixelFormat
GfxBufferFormatToVideoPixelFormat(gfx::BufferFormat format);
MEDIA_EXPORT base::Optional<VideoPixelFormat> GfxBufferFormatToVideoPixelFormat(
gfx::BufferFormat format);
MEDIA_GPU_EXPORT base::Optional<gfx::BufferFormat>
MEDIA_EXPORT base::Optional<gfx::BufferFormat>
VideoPixelFormatToGfxBufferFormat(VideoPixelFormat pixel_format);
} // namespace media
#endif // MEDIA_GPU_FORMAT_UTILS_H_
#endif // MEDIA_BASE_FORMAT_UTILS_H_
......@@ -242,8 +242,6 @@ source_set("common") {
"accelerated_video_decoder.h",
"codec_picture.cc",
"codec_picture.h",
"format_utils.cc",
"format_utils.h",
"gpu_video_decode_accelerator_helpers.cc",
"gpu_video_decode_accelerator_helpers.h",
"gpu_video_encode_accelerator_helpers.cc",
......
......@@ -9,7 +9,7 @@
#include "base/memory/ptr_util.h"
#include "base/optional.h"
#include "base/task/post_task.h"
#include "media/gpu/format_utils.h"
#include "media/base/format_utils.h"
#include "media/gpu/linux/platform_video_frame_utils.h"
#include "media/gpu/macros.h"
#include "ui/gfx/gpu_memory_buffer.h"
......
......@@ -8,9 +8,9 @@
#include "base/bind_helpers.h"
#include "base/files/scoped_file.h"
#include "build/build_config.h"
#include "media/base/format_utils.h"
#include "media/base/scopedfd_helper.h"
#include "media/base/video_frame_layout.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/macros.h"
#include "ui/gfx/gpu_memory_buffer.h"
#include "ui/gfx/linux/native_pixmap_dmabuf.h"
......
......@@ -17,10 +17,10 @@
#include "base/numerics/safe_conversions.h"
#include "base/optional.h"
#include "base/time/time.h"
#include "media/base/format_utils.h"
#include "media/base/video_frame.h"
#include "media/base/video_frame_layout.h"
#include "media/base/video_types.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/linux/platform_video_frame_utils.h"
#include "ui/gfx/buffer_types.h"
#include "ui/gfx/geometry/rect.h"
......
......@@ -26,7 +26,6 @@
#include "media/base/unaligned_shared_memory.h"
#include "media/base/video_frame.h"
#include "media/base/video_types.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/linux/platform_video_frame_utils.h"
#include "media/gpu/macros.h"
#include "media/gpu/video_frame_mapper.h"
......
......@@ -176,6 +176,7 @@ source_set("unit_test") {
"//base/test:test_support",
"//gpu:test_support",
"//gpu/ipc/service",
"//media",
"//media/gpu:common",
"//mojo/core/embedder",
"//testing/gmock",
......
......@@ -8,7 +8,6 @@
#include "base/bind_helpers.h"
#include "base/memory/ptr_util.h"
#include "build/build_config.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/linux/platform_video_frame_utils.h"
#include "media/gpu/macros.h"
#include "media/gpu/vaapi/vaapi_utils.h"
......
......@@ -28,11 +28,11 @@
#include "gpu/ipc/common/gpu_memory_buffer_impl.h"
#include "gpu/ipc/common/gpu_memory_buffer_support.h"
#include "media/base/bitstream_buffer.h"
#include "media/base/format_utils.h"
#include "media/base/unaligned_shared_memory.h"
#include "media/base/video_frame.h"
#include "media/base/video_frame_layout.h"
#include "media/base/video_types.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/linux/platform_video_frame_utils.h"
#include "media/gpu/macros.h"
#include "media/gpu/vaapi/va_surface.h"
......
......@@ -25,9 +25,9 @@
#include "base/trace_event/trace_event.h"
#include "gpu/ipc/service/gpu_channel.h"
#include "media/base/bind_to_current_loop.h"
#include "media/base/format_utils.h"
#include "media/base/unaligned_shared_memory.h"
#include "media/gpu/accelerated_video_decoder.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/h264_decoder.h"
#include "media/gpu/macros.h"
#include "media/gpu/vaapi/vaapi_common.h"
......@@ -579,11 +579,13 @@ void VaapiVideoDecodeAccelerator::TryFinishSurfaceSetChange() {
VLOGF(2) << "Requesting " << requested_num_pics_
<< " pictures of size: " << requested_pic_size_.ToString();
const VideoPixelFormat format = GfxBufferFormatToVideoPixelFormat(
vaapi_picture_factory_->GetBufferFormat());
const base::Optional<VideoPixelFormat> format =
GfxBufferFormatToVideoPixelFormat(
vaapi_picture_factory_->GetBufferFormat());
CHECK(format);
task_runner_->PostTask(
FROM_HERE, base::BindOnce(&Client::ProvidePictureBuffersWithVisibleRect,
client_, requested_num_pics_, format, 1,
client_, requested_num_pics_, *format, 1,
requested_pic_size_, requested_visible_rect_,
vaapi_picture_factory_->GetGLTextureTarget()));
// |client_| may respond via AssignPictureBuffers().
......
......@@ -9,7 +9,6 @@
#include "base/run_loop.h"
#include "base/test/task_environment.h"
#include "media/gpu/accelerated_video_decoder.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/vaapi/vaapi_picture.h"
#include "media/gpu/vaapi/vaapi_picture_factory.h"
#include "media/gpu/vaapi/vaapi_wrapper.h"
......
......@@ -11,9 +11,9 @@
#include "base/bind_helpers.h"
#include "base/memory/ptr_util.h"
#include "media/base/bind_to_current_loop.h"
#include "media/base/format_utils.h"
#include "media/base/video_frame.h"
#include "media/base/video_util.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/gpu_video_decode_accelerator_helpers.h"
#include "media/gpu/linux/dmabuf_video_frame_pool.h"
#include "media/gpu/linux/platform_video_frame_utils.h"
......@@ -519,9 +519,10 @@ void VaapiVideoDecoder::ChangeFrameResolutionTask() {
const gfx::Rect visible_rect = decoder_->GetVisibleRect();
gfx::Size natural_size = GetNaturalSize(visible_rect, pixel_aspect_ratio_);
gfx::Size pic_size = decoder_->GetPicSize();
const VideoPixelFormat format =
const base::Optional<VideoPixelFormat> format =
GfxBufferFormatToVideoPixelFormat(GetBufferFormat());
frame_layout_ = VideoFrameLayout::Create(format, pic_size);
CHECK(format);
frame_layout_ = VideoFrameLayout::Create(*format, pic_size);
DCHECK(frame_layout_);
frame_pool_->NegotiateFrameFormat(*frame_layout_, visible_rect, natural_size);
frame_pool_->SetMaxNumFrames(decoder_->GetRequiredNumOfPictures());
......
......@@ -27,9 +27,9 @@
#include "base/trace_event/trace_event.h"
#include "build/build_config.h"
#include "media/base/bind_to_current_loop.h"
#include "media/base/format_utils.h"
#include "media/base/unaligned_shared_memory.h"
#include "media/base/video_bitrate_allocation.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/h264_dpb.h"
#include "media/gpu/linux/platform_video_frame_utils.h"
#include "media/gpu/macros.h"
......
......@@ -62,7 +62,6 @@
#include "media/base/test_data_util.h"
#include "media/base/video_frame.h"
#include "media/gpu/buildflags.h"
#include "media/gpu/format_utils.h"
#include "media/gpu/gpu_video_decode_accelerator_factory.h"
#include "media/gpu/test/fake_video_decode_accelerator.h"
#include "media/gpu/test/rendering_helper.h"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment