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

Side by Side Diff: media/mojo/common/media_type_converters.cc

Issue 1899363002: Finish plumbing MojoVideoDecoder. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "media/mojo/common/media_type_converters.h" 5 #include "media/mojo/common/media_type_converters.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include "base/memory/ptr_util.h" 10 #include "base/memory/ptr_util.h"
11 #include "base/numerics/safe_conversions.h" 11 #include "base/numerics/safe_conversions.h"
12 #include "media/base/audio_buffer.h" 12 #include "media/base/audio_buffer.h"
13 #include "media/base/audio_decoder_config.h" 13 #include "media/base/audio_decoder_config.h"
14 #include "media/base/buffering_state.h" 14 #include "media/base/buffering_state.h"
15 #include "media/base/cdm_config.h" 15 #include "media/base/cdm_config.h"
16 #include "media/base/cdm_key_information.h" 16 #include "media/base/cdm_key_information.h"
17 #include "media/base/decode_status.h"
17 #include "media/base/decoder_buffer.h" 18 #include "media/base/decoder_buffer.h"
18 #include "media/base/decrypt_config.h" 19 #include "media/base/decrypt_config.h"
19 #include "media/base/decryptor.h" 20 #include "media/base/decryptor.h"
20 #include "media/base/demuxer_stream.h" 21 #include "media/base/demuxer_stream.h"
21 #include "media/base/encryption_scheme.h" 22 #include "media/base/encryption_scheme.h"
22 #include "media/base/media_keys.h" 23 #include "media/base/media_keys.h"
23 #include "media/base/video_decoder_config.h" 24 #include "media/base/video_decoder_config.h"
24 #include "media/base/video_frame.h" 25 #include "media/base/video_frame.h"
25 #include "media/mojo/common/mojo_shared_buffer_video_frame.h" 26 #include "media/mojo/common/mojo_shared_buffer_video_frame.h"
26 #include "media/mojo/interfaces/demuxer_stream.mojom.h" 27 #include "media/mojo/interfaces/demuxer_stream.mojom.h"
27 #include "mojo/converters/geometry/geometry_type_converters.h" 28 #include "mojo/converters/geometry/geometry_type_converters.h"
28 #include "mojo/public/cpp/system/buffer.h" 29 #include "mojo/public/cpp/system/buffer.h"
29 30
30 namespace mojo { 31 namespace mojo {
31 32
32 #define ASSERT_ENUM_EQ(media_enum, media_prefix, mojo_prefix, value) \ 33 #define ASSERT_ENUM_EQ(media_enum, media_prefix, mojo_prefix, value) \
33 static_assert(media::media_prefix##value == \ 34 static_assert(media::media_prefix##value == \
34 static_cast<media::media_enum>( \ 35 static_cast<media::media_enum>( \
35 media::interfaces::media_enum::mojo_prefix##value), \ 36 media::interfaces::media_enum::mojo_prefix##value), \
36 "Mismatched enum: " #media_prefix #value " != " #media_enum \ 37 "Mismatched enum: " #media_prefix #value " != " #media_enum \
37 "::" #mojo_prefix #value) 38 "::" #mojo_prefix #value)
38 39
39 #define ASSERT_ENUM_EQ_RAW(media_enum, media_enum_value, mojo_enum_value) \ 40 #define ASSERT_ENUM_EQ_RAW(media_enum, media_enum_value, mojo_enum_value) \
40 static_assert( \ 41 static_assert( \
41 media::media_enum_value == \ 42 media::media_enum_value == \
42 static_cast<media::media_enum>(media::interfaces::mojo_enum_value), \ 43 static_cast<media::media_enum>(media::interfaces::mojo_enum_value), \
43 "Mismatched enum: " #media_enum_value " != " #mojo_enum_value) 44 "Mismatched enum: " #media_enum_value " != " #mojo_enum_value)
44 45
46 #define ASSERT_ENUM_CLASS_EQ(media_enum, value) \
47 static_assert( \
48 media::media_enum::value == static_cast<media::media_enum>( \
49 media::interfaces::media_enum::value), \
50 "Mismatched enum: " #media_enum #value)
51
45 // BufferingState. 52 // BufferingState.
46 ASSERT_ENUM_EQ(BufferingState, BUFFERING_, , HAVE_NOTHING); 53 ASSERT_ENUM_EQ(BufferingState, BUFFERING_, , HAVE_NOTHING);
47 ASSERT_ENUM_EQ(BufferingState, BUFFERING_, , HAVE_ENOUGH); 54 ASSERT_ENUM_EQ(BufferingState, BUFFERING_, , HAVE_ENOUGH);
48 55
56 // DecodeStatus.
57 ASSERT_ENUM_CLASS_EQ(DecodeStatus, OK);
58 ASSERT_ENUM_CLASS_EQ(DecodeStatus, ABORTED);
59 ASSERT_ENUM_CLASS_EQ(DecodeStatus, DECODE_ERROR);
60
49 // AudioCodec. 61 // AudioCodec.
50 ASSERT_ENUM_EQ_RAW(AudioCodec, kUnknownAudioCodec, AudioCodec::UNKNOWN); 62 ASSERT_ENUM_EQ_RAW(AudioCodec, kUnknownAudioCodec, AudioCodec::UNKNOWN);
51 ASSERT_ENUM_EQ(AudioCodec, kCodec, , AAC); 63 ASSERT_ENUM_EQ(AudioCodec, kCodec, , AAC);
52 ASSERT_ENUM_EQ(AudioCodec, kCodec, , MP3); 64 ASSERT_ENUM_EQ(AudioCodec, kCodec, , MP3);
53 ASSERT_ENUM_EQ(AudioCodec, kCodec, , PCM); 65 ASSERT_ENUM_EQ(AudioCodec, kCodec, , PCM);
54 ASSERT_ENUM_EQ(AudioCodec, kCodec, , Vorbis); 66 ASSERT_ENUM_EQ(AudioCodec, kCodec, , Vorbis);
55 ASSERT_ENUM_EQ(AudioCodec, kCodec, , FLAC); 67 ASSERT_ENUM_EQ(AudioCodec, kCodec, , FLAC);
56 ASSERT_ENUM_EQ(AudioCodec, kCodec, , AMR_NB); 68 ASSERT_ENUM_EQ(AudioCodec, kCodec, , AMR_NB);
57 ASSERT_ENUM_EQ(AudioCodec, kCodec, , PCM_MULAW); 69 ASSERT_ENUM_EQ(AudioCodec, kCodec, , PCM_MULAW);
58 ASSERT_ENUM_EQ(AudioCodec, kCodec, , GSM_MS); 70 ASSERT_ENUM_EQ(AudioCodec, kCodec, , GSM_MS);
(...skipping 660 matching lines...) Expand 10 before | Expand all | Expand 10 after
719 input->natural_size.To<gfx::Size>(), std::move(input->frame_data), 731 input->natural_size.To<gfx::Size>(), std::move(input->frame_data),
720 base::saturated_cast<size_t>(input->frame_data_size), 732 base::saturated_cast<size_t>(input->frame_data_size),
721 base::saturated_cast<size_t>(input->y_offset), 733 base::saturated_cast<size_t>(input->y_offset),
722 base::saturated_cast<size_t>(input->u_offset), 734 base::saturated_cast<size_t>(input->u_offset),
723 base::saturated_cast<size_t>(input->v_offset), input->y_stride, 735 base::saturated_cast<size_t>(input->v_offset), input->y_stride,
724 input->u_stride, input->v_stride, 736 input->u_stride, input->v_stride,
725 base::TimeDelta::FromMicroseconds(input->timestamp_usec)); 737 base::TimeDelta::FromMicroseconds(input->timestamp_usec));
726 } 738 }
727 739
728 } // namespace mojo 740 } // namespace mojo
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698