mirror of
https://git.suyu.dev/suyu/suyu
synced 2024-12-24 10:23:01 -06:00
Services/Cam: Added new log type and camera enums from 3dbrew.
Followup to #1102 Original author @mailwl
This commit is contained in:
parent
78b0d9c8b0
commit
434ae89a6a
3 changed files with 158 additions and 0 deletions
|
@ -44,6 +44,7 @@ namespace Log {
|
|||
SUB(Service, LDR) \
|
||||
SUB(Service, NIM) \
|
||||
SUB(Service, NWM) \
|
||||
SUB(Service, CAM) \
|
||||
SUB(Service, CFG) \
|
||||
SUB(Service, DSP) \
|
||||
SUB(Service, HID) \
|
||||
|
|
|
@ -59,6 +59,7 @@ enum class Class : ClassType {
|
|||
Service_LDR, ///< The LDR (3ds dll loader) service
|
||||
Service_NIM, ///< The NIM (Network interface manager) service
|
||||
Service_NWM, ///< The NWM (Network wlan manager) service
|
||||
Service_CAM, ///< The CAM (Camera) service
|
||||
Service_CFG, ///< The CFG (Configuration) service
|
||||
Service_DSP, ///< The DSP (DSP control) service
|
||||
Service_HID, ///< The HID (Human interface device) service
|
||||
|
|
|
@ -10,6 +10,162 @@
|
|||
namespace Service {
|
||||
namespace CAM {
|
||||
|
||||
enum class Port : u8 {
|
||||
None = 0,
|
||||
Cam1 = 1,
|
||||
Cam2 = 2,
|
||||
Both = Cam1 | Cam2
|
||||
};
|
||||
|
||||
enum class CameraSelect : u8 {
|
||||
None = 0,
|
||||
Out1 = 1,
|
||||
In1 = 2,
|
||||
Out2 = 4,
|
||||
In1Out1 = Out1 | In1,
|
||||
Out1Out2 = Out1 | Out2,
|
||||
In1Out2 = In1 | Out2,
|
||||
All = Out1 | In1 | Out2
|
||||
};
|
||||
|
||||
enum class Effect : u8 {
|
||||
None = 0,
|
||||
Mono = 1,
|
||||
Sepia = 2,
|
||||
Negative = 3,
|
||||
Negafilm = 4,
|
||||
Sepia01 = 5
|
||||
};
|
||||
|
||||
enum class Context : u8 {
|
||||
None = 0,
|
||||
A = 1,
|
||||
B = 2,
|
||||
Both = A | B
|
||||
};
|
||||
|
||||
enum class Flip : u8 {
|
||||
None = 0,
|
||||
Horizontal = 1,
|
||||
Vertical = 2,
|
||||
Reverse = 3
|
||||
};
|
||||
|
||||
enum class Size : u8 {
|
||||
VGA = 0,
|
||||
QVGA = 1,
|
||||
QQVGA = 2,
|
||||
CIF = 3,
|
||||
QCIF = 4,
|
||||
DS_LCD = 5,
|
||||
DS_LCDx4 = 6,
|
||||
CTR_TOP_LCD = 7,
|
||||
CTR_BOTTOM_LCD = QVGA
|
||||
};
|
||||
|
||||
enum class FrameRate : u8 {
|
||||
Rate_15 = 0,
|
||||
Rate_15_To_5 = 1,
|
||||
Rate_15_To_2 = 2,
|
||||
Rate_10 = 3,
|
||||
Rate_8_5 = 4,
|
||||
Rate_5 = 5,
|
||||
Rate_20 = 6,
|
||||
Rate_20_To_5 = 7,
|
||||
Rate_30 = 8,
|
||||
Rate_30_To_5 = 9,
|
||||
Rate_15_To_10 = 10,
|
||||
Rate_20_To_10 = 11,
|
||||
Rate_30_To_10 = 12
|
||||
};
|
||||
|
||||
enum class ShutterSoundType : u8 {
|
||||
Normal = 0,
|
||||
Movie = 1,
|
||||
MovieEnd = 2
|
||||
};
|
||||
|
||||
enum class WhiteBalance : u8 {
|
||||
BalanceAuto = 0,
|
||||
Balance3200K = 1,
|
||||
Balance4150K = 2,
|
||||
Balance5200K = 3,
|
||||
Balance6000K = 4,
|
||||
Balance7000K = 5,
|
||||
BalanceMax = 6,
|
||||
BalanceNormal = BalanceAuto,
|
||||
BalanceTungsten = Balance3200K,
|
||||
BalanceWhiteFluorescentLight = Balance4150K,
|
||||
BalanceDaylight = Balance5200K,
|
||||
BalanceCloudy = Balance6000K,
|
||||
BalanceHorizon = Balance6000K,
|
||||
BalanceShade = Balance7000K
|
||||
};
|
||||
|
||||
enum class PhotoMode : u8 {
|
||||
Normal = 0,
|
||||
Portrait = 1,
|
||||
Landscape = 2,
|
||||
Nightview = 3,
|
||||
Letter0 = 4
|
||||
};
|
||||
|
||||
enum class LensCorrection : u8 {
|
||||
Off = 0,
|
||||
On70 = 1,
|
||||
On90 = 2,
|
||||
Dark = Off,
|
||||
Normal = On70,
|
||||
Bright = On90
|
||||
};
|
||||
|
||||
enum class Contrast : u8 {
|
||||
Pattern01 = 1,
|
||||
Pattern02 = 2,
|
||||
Pattern03 = 3,
|
||||
Pattern04 = 4,
|
||||
Pattern05 = 5,
|
||||
Pattern06 = 6,
|
||||
Pattern07 = 7,
|
||||
Pattern08 = 8,
|
||||
Pattern09 = 9,
|
||||
Pattern10 = 10,
|
||||
Pattern11 = 11,
|
||||
Low = Pattern05,
|
||||
Normal = Pattern06,
|
||||
High = Pattern07
|
||||
};
|
||||
|
||||
enum class OutputFormat : u8 {
|
||||
YUV422 = 0,
|
||||
RGB565 = 1
|
||||
};
|
||||
|
||||
struct PackageParameterCameraSelect {
|
||||
CameraSelect camera;
|
||||
s8 exposure;
|
||||
WhiteBalance white_balance;
|
||||
s8 sharpness;
|
||||
bool auto_exposure;
|
||||
bool auto_white_balance;
|
||||
FrameRate frame_rate;
|
||||
PhotoMode photo_mode;
|
||||
Contrast contrast;
|
||||
LensCorrection lens_correction;
|
||||
bool noise_filter;
|
||||
u8 padding;
|
||||
s16 auto_exposure_window_x;
|
||||
s16 auto_exposure_window_y;
|
||||
s16 auto_exposure_window_width;
|
||||
s16 auto_exposure_window_height;
|
||||
s16 auto_white_balance_window_x;
|
||||
s16 auto_white_balance_window_y;
|
||||
s16 auto_white_balance_window_width;
|
||||
s16 auto_white_balance_window_height;
|
||||
};
|
||||
|
||||
static_assert(sizeof(PackageParameterCameraSelect) == 28, "PackageParameterCameraSelect structure size is wrong");
|
||||
|
||||
/// Initialize CAM service(s)
|
||||
void Init();
|
||||
|
||||
|
|
Loading…
Reference in a new issue