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

Side by Side Diff: media/base/ipc/media_param_traits_macros.h

Issue 2643743002: Mojify demuxers and allow running {Chunk/FFmpeg}Demuxer in a Utility Process (Closed)
Patch Set: Rebase and make sure to unbind mojom::DemuxerPtr on the bound thread during termination Created 3 years, 10 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
« no previous file with comments | « media/base/demuxer_factory.cc ('k') | media/base/media_resource.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #ifndef MEDIA_BASE_IPC_MEDIA_PARAM_TRAITS_MACROS_H_ 5 #ifndef MEDIA_BASE_IPC_MEDIA_PARAM_TRAITS_MACROS_H_
6 #define MEDIA_BASE_IPC_MEDIA_PARAM_TRAITS_MACROS_H_ 6 #define MEDIA_BASE_IPC_MEDIA_PARAM_TRAITS_MACROS_H_
7 7
8 #include "base/memory/memory_pressure_listener.h"
8 #include "ipc/ipc_message_macros.h" 9 #include "ipc/ipc_message_macros.h"
9 #include "media/base/audio_codecs.h" 10 #include "media/base/audio_codecs.h"
10 #include "media/base/audio_parameters.h" 11 #include "media/base/audio_parameters.h"
11 #include "media/base/buffering_state.h" 12 #include "media/base/buffering_state.h"
12 #include "media/base/cdm_key_information.h" 13 #include "media/base/cdm_key_information.h"
13 #include "media/base/cdm_promise.h" 14 #include "media/base/cdm_promise.h"
14 #include "media/base/channel_layout.h" 15 #include "media/base/channel_layout.h"
15 #include "media/base/content_decryption_module.h" 16 #include "media/base/content_decryption_module.h"
16 #include "media/base/decode_status.h" 17 #include "media/base/decode_status.h"
17 #include "media/base/decryptor.h" 18 #include "media/base/decryptor.h"
19 #include "media/base/demuxer.h"
18 #include "media/base/demuxer_stream.h" 20 #include "media/base/demuxer_stream.h"
19 #include "media/base/eme_constants.h" 21 #include "media/base/eme_constants.h"
20 #include "media/base/encryption_scheme.h" 22 #include "media/base/encryption_scheme.h"
21 #include "media/base/output_device_info.h" 23 #include "media/base/output_device_info.h"
24 #include "media/base/pipeline_status.h"
22 #include "media/base/sample_format.h" 25 #include "media/base/sample_format.h"
26 #include "media/base/source_buffer.h"
23 #include "media/base/subsample_entry.h" 27 #include "media/base/subsample_entry.h"
24 #include "media/base/video_codecs.h" 28 #include "media/base/video_codecs.h"
25 #include "media/base/video_types.h" 29 #include "media/base/video_types.h"
26 30
27 // Enum traits. 31 // Enum traits.
28 32
33 IPC_ENUM_TRAITS_VALIDATE(
34 base::MemoryPressureListener::MemoryPressureLevel,
35 (value == base::MemoryPressureListener::MEMORY_PRESSURE_LEVEL_MODERATE ||
36 value == base::MemoryPressureListener::MEMORY_PRESSURE_LEVEL_CRITICAL))
37
29 IPC_ENUM_TRAITS_MAX_VALUE(media::AudioCodec, media::AudioCodec::kAudioCodecMax) 38 IPC_ENUM_TRAITS_MAX_VALUE(media::AudioCodec, media::AudioCodec::kAudioCodecMax)
30 39
31 IPC_ENUM_TRAITS_MAX_VALUE(media::AudioLatency::LatencyType, 40 IPC_ENUM_TRAITS_MAX_VALUE(media::AudioLatency::LatencyType,
32 media::AudioLatency::LATENCY_COUNT) 41 media::AudioLatency::LATENCY_COUNT)
33 42
34 IPC_ENUM_TRAITS_MAX_VALUE(media::AudioParameters::Format, 43 IPC_ENUM_TRAITS_MAX_VALUE(media::AudioParameters::Format,
35 media::AudioParameters::AUDIO_FORMAT_LAST) 44 media::AudioParameters::AUDIO_FORMAT_LAST)
36 45
37 IPC_ENUM_TRAITS_MAX_VALUE(media::BufferingState, 46 IPC_ENUM_TRAITS_MAX_VALUE(media::BufferingState,
38 media::BufferingState::BUFFERING_STATE_MAX) 47 media::BufferingState::BUFFERING_STATE_MAX)
39 48
40 IPC_ENUM_TRAITS_MAX_VALUE(media::CdmKeyInformation::KeyStatus, 49 IPC_ENUM_TRAITS_MAX_VALUE(media::CdmKeyInformation::KeyStatus,
41 media::CdmKeyInformation::KEY_STATUS_MAX) 50 media::CdmKeyInformation::KEY_STATUS_MAX)
42 51
43 IPC_ENUM_TRAITS_MAX_VALUE(media::ChannelLayout, media::CHANNEL_LAYOUT_MAX) 52 IPC_ENUM_TRAITS_MAX_VALUE(media::ChannelLayout, media::CHANNEL_LAYOUT_MAX)
44 53
45 IPC_ENUM_TRAITS_MAX_VALUE(media::ColorSpace, media::COLOR_SPACE_MAX) 54 IPC_ENUM_TRAITS_MAX_VALUE(media::ColorSpace, media::COLOR_SPACE_MAX)
46 55
47 IPC_ENUM_TRAITS_MAX_VALUE(media::DecodeStatus, 56 IPC_ENUM_TRAITS_MAX_VALUE(media::DecodeStatus,
48 media::DecodeStatus::DECODE_STATUS_MAX) 57 media::DecodeStatus::DECODE_STATUS_MAX)
49 58
50 IPC_ENUM_TRAITS_MAX_VALUE(media::Decryptor::Status, 59 IPC_ENUM_TRAITS_MAX_VALUE(media::Decryptor::Status,
51 media::Decryptor::Status::kStatusMax) 60 media::Decryptor::Status::kStatusMax)
52 61
53 IPC_ENUM_TRAITS_MAX_VALUE(media::Decryptor::StreamType, 62 IPC_ENUM_TRAITS_MAX_VALUE(media::Decryptor::StreamType,
54 media::Decryptor::StreamType::kStreamTypeMax) 63 media::Decryptor::StreamType::kStreamTypeMax)
55 64
65 IPC_ENUM_TRAITS_MAX_VALUE(media::Demuxer::LoadType, media::Demuxer::LoadTypeMax)
66
56 IPC_ENUM_TRAITS_MAX_VALUE(media::DemuxerStream::Status, 67 IPC_ENUM_TRAITS_MAX_VALUE(media::DemuxerStream::Status,
57 media::DemuxerStream::kStatusMax) 68 media::DemuxerStream::kStatusMax)
58 69
59 IPC_ENUM_TRAITS_MAX_VALUE(media::DemuxerStream::Type, 70 IPC_ENUM_TRAITS_MAX_VALUE(media::DemuxerStream::Type,
60 media::DemuxerStream::TYPE_MAX) 71 media::DemuxerStream::TYPE_MAX)
61 72
62 IPC_ENUM_TRAITS_MAX_VALUE(media::EmeInitDataType, media::EmeInitDataType::MAX) 73 IPC_ENUM_TRAITS_MAX_VALUE(media::EmeInitDataType, media::EmeInitDataType::MAX)
63 74
64 IPC_ENUM_TRAITS_MAX_VALUE(media::EncryptionScheme::CipherMode, 75 IPC_ENUM_TRAITS_MAX_VALUE(media::EncryptionScheme::CipherMode,
65 media::EncryptionScheme::CipherMode::CIPHER_MODE_MAX) 76 media::EncryptionScheme::CipherMode::CIPHER_MODE_MAX)
66 77
67 IPC_ENUM_TRAITS_MAX_VALUE(media::CdmPromise::Exception, 78 IPC_ENUM_TRAITS_MAX_VALUE(media::CdmPromise::Exception,
68 media::CdmPromise::EXCEPTION_MAX) 79 media::CdmPromise::EXCEPTION_MAX)
69 80
70 IPC_ENUM_TRAITS_MAX_VALUE(media::ContentDecryptionModule::MessageType, 81 IPC_ENUM_TRAITS_MAX_VALUE(media::ContentDecryptionModule::MessageType,
71 media::ContentDecryptionModule::MESSAGE_TYPE_MAX) 82 media::ContentDecryptionModule::MESSAGE_TYPE_MAX)
72 83
73 IPC_ENUM_TRAITS_MAX_VALUE(media::CdmSessionType, 84 IPC_ENUM_TRAITS_MAX_VALUE(media::CdmSessionType,
74 media::CdmSessionType::SESSION_TYPE_MAX) 85 media::CdmSessionType::SESSION_TYPE_MAX)
75 86
87 IPC_ENUM_TRAITS_MAX_VALUE(media::PipelineStatus,
88 media::PipelineStatus::PIPELINE_STATUS_MAX)
76 IPC_ENUM_TRAITS_MAX_VALUE(media::OutputDeviceStatus, 89 IPC_ENUM_TRAITS_MAX_VALUE(media::OutputDeviceStatus,
77 media::OutputDeviceStatus::OUTPUT_DEVICE_STATUS_MAX) 90 media::OutputDeviceStatus::OUTPUT_DEVICE_STATUS_MAX)
78 91
79 IPC_ENUM_TRAITS_MAX_VALUE(media::SampleFormat, media::kSampleFormatMax) 92 IPC_ENUM_TRAITS_MAX_VALUE(media::SampleFormat, media::kSampleFormatMax)
80 93
94 IPC_ENUM_TRAITS_MAX_VALUE(media::SourceBuffer::Status,
95 media::SourceBuffer::kStatusMax)
96
81 IPC_ENUM_TRAITS_MAX_VALUE(media::VideoCodec, media::kVideoCodecMax) 97 IPC_ENUM_TRAITS_MAX_VALUE(media::VideoCodec, media::kVideoCodecMax)
82 98
83 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::VideoCodecProfile, 99 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::VideoCodecProfile,
84 media::VIDEO_CODEC_PROFILE_MIN, 100 media::VIDEO_CODEC_PROFILE_MIN,
85 media::VIDEO_CODEC_PROFILE_MAX) 101 media::VIDEO_CODEC_PROFILE_MAX)
86 102
87 IPC_ENUM_TRAITS_MAX_VALUE(media::VideoPixelFormat, media::PIXEL_FORMAT_MAX) 103 IPC_ENUM_TRAITS_MAX_VALUE(media::VideoPixelFormat, media::PIXEL_FORMAT_MAX)
88 104
89 // Struct traits. 105 // Struct traits.
90 106
91 IPC_STRUCT_TRAITS_BEGIN(media::CdmKeyInformation) 107 IPC_STRUCT_TRAITS_BEGIN(media::CdmKeyInformation)
92 IPC_STRUCT_TRAITS_MEMBER(key_id) 108 IPC_STRUCT_TRAITS_MEMBER(key_id)
93 IPC_STRUCT_TRAITS_MEMBER(status) 109 IPC_STRUCT_TRAITS_MEMBER(status)
94 IPC_STRUCT_TRAITS_MEMBER(system_code) 110 IPC_STRUCT_TRAITS_MEMBER(system_code)
95 IPC_STRUCT_TRAITS_END() 111 IPC_STRUCT_TRAITS_END()
96 112
97 IPC_STRUCT_TRAITS_BEGIN(media::SubsampleEntry) 113 IPC_STRUCT_TRAITS_BEGIN(media::SubsampleEntry)
98 IPC_STRUCT_TRAITS_MEMBER(clear_bytes) 114 IPC_STRUCT_TRAITS_MEMBER(clear_bytes)
99 IPC_STRUCT_TRAITS_MEMBER(cypher_bytes) 115 IPC_STRUCT_TRAITS_MEMBER(cypher_bytes)
100 IPC_STRUCT_TRAITS_END() 116 IPC_STRUCT_TRAITS_END()
101 117
102 #endif // MEDIA_BASE_IPC_MEDIA_PARAM_TRAITS_MACROS_H_ 118 #endif // MEDIA_BASE_IPC_MEDIA_PARAM_TRAITS_MACROS_H_
OLDNEW
« no previous file with comments | « media/base/demuxer_factory.cc ('k') | media/base/media_resource.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698