OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_CAST_CAST_CONFIG_H_ | 5 #ifndef MEDIA_CAST_CAST_CONFIG_H_ |
6 #define MEDIA_CAST_CAST_CONFIG_H_ | 6 #define MEDIA_CAST_CAST_CONFIG_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
90 int width; // Incoming frames will be scaled to this size. | 90 int width; // Incoming frames will be scaled to this size. |
91 int height; | 91 int height; |
92 | 92 |
93 float congestion_control_back_off; | 93 float congestion_control_back_off; |
94 int max_bitrate; | 94 int max_bitrate; |
95 int min_bitrate; | 95 int min_bitrate; |
96 int start_bitrate; | 96 int start_bitrate; |
97 int max_qp; | 97 int max_qp; |
98 int min_qp; | 98 int min_qp; |
99 int max_frame_rate; // TODO(miu): Should be double, not int. | 99 int max_frame_rate; // TODO(miu): Should be double, not int. |
100 int max_number_of_video_buffers_used; // Max value depend on codec. | 100 |
| 101 // This field is used differently by various encoders. It defaults to 1. |
| 102 // |
| 103 // For VP8, it should be 1 to operate in single-buffer mode, or 3 to operate |
| 104 // in multi-buffer mode. See |
| 105 // http://www.webmproject.org/docs/encoder-parameters/ for details. |
| 106 // |
| 107 // For H.264 on Mac or iOS, it controls the max number of frames the encoder |
| 108 // may hold before emitting a frame. A larger window may allow higher encoding |
| 109 // efficiency at the cost of latency and memory. Set to 0 to let the encoder |
| 110 // choose a suitable value for the platform and other encoding settings. |
| 111 int max_number_of_video_buffers_used; |
| 112 |
101 Codec codec; | 113 Codec codec; |
102 int number_of_encode_threads; | 114 int number_of_encode_threads; |
103 | 115 |
104 // The AES crypto key and initialization vector. Each of these strings | 116 // The AES crypto key and initialization vector. Each of these strings |
105 // contains the data in binary form, of size kAesKeySize. If they are empty | 117 // contains the data in binary form, of size kAesKeySize. If they are empty |
106 // strings, crypto is not being used. | 118 // strings, crypto is not being used. |
107 std::string aes_key; | 119 std::string aes_key; |
108 std::string aes_iv_mask; | 120 std::string aes_iv_mask; |
109 }; | 121 }; |
110 | 122 |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
176 typedef base::Callback<void(scoped_ptr<base::SharedMemory>)> | 188 typedef base::Callback<void(scoped_ptr<base::SharedMemory>)> |
177 ReceiveVideoEncodeMemoryCallback; | 189 ReceiveVideoEncodeMemoryCallback; |
178 typedef base::Callback<void(size_t size, | 190 typedef base::Callback<void(size_t size, |
179 const ReceiveVideoEncodeMemoryCallback&)> | 191 const ReceiveVideoEncodeMemoryCallback&)> |
180 CreateVideoEncodeMemoryCallback; | 192 CreateVideoEncodeMemoryCallback; |
181 | 193 |
182 } // namespace cast | 194 } // namespace cast |
183 } // namespace media | 195 } // namespace media |
184 | 196 |
185 #endif // MEDIA_CAST_CAST_CONFIG_H_ | 197 #endif // MEDIA_CAST_CAST_CONFIG_H_ |
OLD | NEW |