OLD | NEW |
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 // Singly or Multiply-included shared traits file depending on circumstances. | 5 // Singly or Multiply-included shared traits file depending on circumstances. |
6 // This allows the use of IPC serialization macros in more than one IPC message | 6 // This allows the use of IPC serialization macros in more than one IPC message |
7 // file. | 7 // file. |
8 #ifndef CHROMECAST_COMMON_MEDIA_CMA_PARAM_TRAITS_MACROS_H_ | 8 #ifndef CHROMECAST_COMMON_MEDIA_CMA_PARAM_TRAITS_MACROS_H_ |
9 #define CHROMECAST_COMMON_MEDIA_CMA_PARAM_TRAITS_MACROS_H_ | 9 #define CHROMECAST_COMMON_MEDIA_CMA_PARAM_TRAITS_MACROS_H_ |
10 | 10 |
| 11 #include "chromecast/common/media/cma_ipc_common.h" |
11 #include "chromecast/media/cma/pipeline/load_type.h" | 12 #include "chromecast/media/cma/pipeline/load_type.h" |
12 #include "ipc/ipc_message_macros.h" | 13 #include "ipc/ipc_message_macros.h" |
13 #include "ipc/param_traits_macros.h" | 14 #include "ipc/param_traits_macros.h" |
14 #include "media/base/audio_decoder_config.h" | 15 #include "media/base/audio_decoder_config.h" |
15 #include "media/base/buffering_state.h" | 16 #include "media/base/buffering_state.h" |
16 #include "media/base/channel_layout.h" | 17 #include "media/base/channel_layout.h" |
17 #include "media/base/pipeline_status.h" | 18 #include "media/base/pipeline_status.h" |
18 #include "media/base/sample_format.h" | 19 #include "media/base/sample_format.h" |
19 #include "media/base/video_decoder_config.h" | 20 #include "media/base/video_decoder_config.h" |
20 #include "media/base/video_frame.h" | 21 #include "media/base/video_frame.h" |
21 | 22 |
22 IPC_ENUM_TRAITS_MIN_MAX_VALUE(chromecast::media::LoadType, | 23 IPC_ENUM_TRAITS_MIN_MAX_VALUE(chromecast::media::LoadType, |
23 chromecast::media::kLoadTypeURL, | 24 chromecast::media::kLoadTypeURL, |
24 chromecast::media::kLoadTypeMediaStream) | 25 chromecast::media::kLoadTypeMediaStream) |
25 | 26 |
| 27 IPC_ENUM_TRAITS_MIN_MAX_VALUE(chromecast::media::TrackId, |
| 28 chromecast::media::kNoTrackId, |
| 29 chromecast::media::kVideoTrackId) |
| 30 |
26 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::AudioCodec, | 31 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::AudioCodec, |
27 media::AudioCodec::kUnknownAudioCodec, | 32 media::AudioCodec::kUnknownAudioCodec, |
28 media::AudioCodec::kAudioCodecMax) | 33 media::AudioCodec::kAudioCodecMax) |
29 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::BufferingState, | 34 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::BufferingState, |
30 media::BUFFERING_HAVE_NOTHING, | 35 media::BUFFERING_HAVE_NOTHING, |
31 media::BUFFERING_HAVE_ENOUGH) | 36 media::BUFFERING_HAVE_ENOUGH) |
32 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::SampleFormat, | 37 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::SampleFormat, |
33 media::SampleFormat::kUnknownSampleFormat, | 38 media::SampleFormat::kUnknownSampleFormat, |
34 media::SampleFormat::kSampleFormatMax) | 39 media::SampleFormat::kSampleFormatMax) |
35 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::PipelineStatus, | 40 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::PipelineStatus, |
36 media::PIPELINE_OK, | 41 media::PIPELINE_OK, |
37 media::PIPELINE_STATUS_MAX) | 42 media::PIPELINE_STATUS_MAX) |
38 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::VideoCodec, | 43 IPC_ENUM_TRAITS_MIN_MAX_VALUE(media::VideoCodec, |
39 media::VideoCodec::kUnknownVideoCodec, | 44 media::VideoCodec::kUnknownVideoCodec, |
40 media::VideoCodec::kVideoCodecMax) | 45 media::VideoCodec::kVideoCodecMax) |
41 | 46 |
42 IPC_STRUCT_TRAITS_BEGIN(media::PipelineStatistics) | 47 IPC_STRUCT_TRAITS_BEGIN(media::PipelineStatistics) |
43 IPC_STRUCT_TRAITS_MEMBER(audio_bytes_decoded) | 48 IPC_STRUCT_TRAITS_MEMBER(audio_bytes_decoded) |
44 IPC_STRUCT_TRAITS_MEMBER(video_bytes_decoded) | 49 IPC_STRUCT_TRAITS_MEMBER(video_bytes_decoded) |
45 IPC_STRUCT_TRAITS_MEMBER(video_frames_decoded) | 50 IPC_STRUCT_TRAITS_MEMBER(video_frames_decoded) |
46 IPC_STRUCT_TRAITS_MEMBER(video_frames_dropped) | 51 IPC_STRUCT_TRAITS_MEMBER(video_frames_dropped) |
47 IPC_STRUCT_TRAITS_END() | 52 IPC_STRUCT_TRAITS_END() |
48 | 53 |
49 #endif // CHROMECAST_COMMON_MEDIA_CMA_PARAM_TRAITS_MACROS_H_ | 54 #endif // CHROMECAST_COMMON_MEDIA_CMA_PARAM_TRAITS_MACROS_H_ |
OLD | NEW |