• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2024 The ChromiumOS Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 use crate::codec::h265::parser::Level;
6 use crate::codec::h265::parser::Profile;
7 use crate::encoder::PredictionStructure;
8 use crate::Resolution;
9 
10 pub struct H265;
11 
12 #[derive(Clone)]
13 pub struct EncoderConfig {
14     pub resolution: Resolution,
15     pub profile: Profile,
16     pub level: Level,
17     pub pred_structure: PredictionStructure,
18 }
19 
20 impl Default for EncoderConfig {
default() -> Self21     fn default() -> Self {
22         // Artificially encoder configuration with intent to be widely supported.
23         Self {
24             resolution: Resolution { width: 320, height: 240 },
25             profile: Profile::Main,
26             level: Level::L4,
27             pred_structure: PredictionStructure::LowDelay { limit: 2048 },
28         }
29     }
30 }
31