Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1112)

Unified Diff: media/mojo/common/media_type_converters.cc

Issue 2933573003: media: Followup changes to VideoFrame StructTraits. (Closed)
Patch Set: const& Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/mojo/common/media_type_converters.h ('k') | media/mojo/interfaces/media_types.mojom » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/mojo/common/media_type_converters.cc
diff --git a/media/mojo/common/media_type_converters.cc b/media/mojo/common/media_type_converters.cc
index 0a415d96adb3977d179d8a2136bcbfad9fc7691a..5571a8bc364288ac75440b445baabd6c47e35982 100644
--- a/media/mojo/common/media_type_converters.cc
+++ b/media/mojo/common/media_type_converters.cc
@@ -18,8 +18,6 @@
#include "media/base/encryption_scheme.h"
#include "media/base/subsample_entry.h"
#include "media/base/video_decoder_config.h"
-#include "media/base/video_frame.h"
-#include "media/mojo/common/mojo_shared_buffer_video_frame.h"
#include "mojo/public/cpp/system/buffer.h"
namespace mojo {
@@ -342,69 +340,4 @@ TypeConverter<scoped_refptr<media::AudioBuffer>, media::mojom::AudioBufferPtr>::
input->timestamp);
}
-// static
-media::mojom::VideoFramePtr
-TypeConverter<media::mojom::VideoFramePtr, scoped_refptr<media::VideoFrame>>::
- Convert(const scoped_refptr<media::VideoFrame>& input) {
- media::mojom::VideoFramePtr frame(media::mojom::VideoFrame::New());
- frame->end_of_stream =
- input->metadata()->IsTrue(media::VideoFrameMetadata::END_OF_STREAM);
- if (frame->end_of_stream)
- return frame;
-
- // Handle non EOS frame. It must be a MojoSharedBufferVideoFrame.
- // TODO(jrummell): Support other types of VideoFrame.
- CHECK_EQ(media::VideoFrame::STORAGE_MOJO_SHARED_BUFFER,
- input->storage_type());
- media::MojoSharedBufferVideoFrame* input_frame =
- static_cast<media::MojoSharedBufferVideoFrame*>(input.get());
- mojo::ScopedSharedBufferHandle duplicated_handle =
- input_frame->Handle().Clone();
- CHECK(duplicated_handle.is_valid());
-
- frame->format = input->format();
- frame->coded_size = input->coded_size();
- frame->visible_rect = input->visible_rect();
- frame->natural_size = input->natural_size();
- frame->timestamp = input->timestamp();
-
- media::mojom::SharedBufferVideoFrameDataPtr data =
- media::mojom::SharedBufferVideoFrameData::New();
- data->frame_data = std::move(duplicated_handle);
- data->frame_data_size = input_frame->MappedSize();
- data->y_stride = input_frame->stride(media::VideoFrame::kYPlane);
- data->u_stride = input_frame->stride(media::VideoFrame::kUPlane);
- data->v_stride = input_frame->stride(media::VideoFrame::kVPlane);
- data->y_offset = input_frame->PlaneOffset(media::VideoFrame::kYPlane);
- data->u_offset = input_frame->PlaneOffset(media::VideoFrame::kUPlane);
- data->v_offset = input_frame->PlaneOffset(media::VideoFrame::kVPlane);
-
- frame->data = media::mojom::VideoFrameData::New();
- frame->data->set_shared_buffer_data(std::move(data));
- return frame;
-}
-
-// static
-scoped_refptr<media::VideoFrame>
-TypeConverter<scoped_refptr<media::VideoFrame>, media::mojom::VideoFramePtr>::
- Convert(const media::mojom::VideoFramePtr& input) {
- if (input->end_of_stream)
- return media::VideoFrame::CreateEOSFrame();
-
- // Handle non EOS frame. It must be a MojoSharedBufferVideoFrame.
- // TODO(jrummell): Support other types of VideoFrame.
- DCHECK(input->data->is_shared_buffer_data());
- const media::mojom::SharedBufferVideoFrameDataPtr& data =
- input->data->get_shared_buffer_data();
-
- return media::MojoSharedBufferVideoFrame::Create(
- input->format, input->coded_size, input->visible_rect,
- input->natural_size, std::move(data->frame_data),
- base::saturated_cast<size_t>(data->frame_data_size),
- base::saturated_cast<size_t>(data->y_offset),
- base::saturated_cast<size_t>(data->u_offset),
- base::saturated_cast<size_t>(data->v_offset), data->y_stride,
- data->u_stride, data->v_stride, input->timestamp);
-}
-
} // namespace mojo
« no previous file with comments | « media/mojo/common/media_type_converters.h ('k') | media/mojo/interfaces/media_types.mojom » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698