File size: 1,904 Bytes
bf8d4d8
40fde09
 
 
 
 
 
 
bf8d4d8
 
 
 
 
 
40fde09
 
bf8d4d8
 
 
40fde09
 
 
 
 
 
bf8d4d8
 
40fde09
 
 
9349de1
 
40fde09
bf8d4d8
40fde09
 
 
 
 
 
 
 
 
 
 
 
 
 
 
a60cb50
 
40fde09
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bf8d4d8
 
fd2aa6b
bf8d4d8
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76

export type EngineType =
  | "cartesian_image"
  | "cartesian_video"
  | "spherical_image"
  | "spherical_video"
  | "spherical_stereogram"
  | "spherical_stereovideo"

export interface Engine {
  type: EngineType
  label: string
  modelName: string
  modelUrl: string
  visible: boolean
  enabled: boolean
}

export const engines: Record<string, Engine> = {
  cartesian_image: {
    type: "cartesian_image",
    label: "Cartesian image",
    visible: true,
    enabled: true,
    modelName: "SDXL",
    modelUrl: "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0",
  },
  cartesian_video: {
    type: "cartesian_video",
    label: "Cartesian video",
    visible: true,
    enabled: true,
    modelName: "Zeroscope",
    modelUrl: "https://huggingface.co/cerspense/zeroscope_v2_576w",
  },
  spherical_image: {
    type: "spherical_image",
    label: "Spherical image",
    visible: true,
    enabled: true,
    modelName: "SDXL 360",
    modelUrl: "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0",
  },

  spherical_video: {
    type: "spherical_video",
    label: "Spherical video",
    visible: false,
    enabled: false,
    modelName: "Zeroscope",
    modelUrl: "https://huggingface.co/cerspense/zeroscope_v2_576w",
  },

  spherical_stereogram: {
    type: "spherical_stereogram",
    label: "Spherical stereogram",
    visible: false,
    enabled: false,
    modelName: "SDXL 360",
    modelUrl: "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0",
  },

  // A.K.A. the Holy Graal
  spherical_stereovideo: {
      type: "spherical_stereovideo",
      label: "Spherical stereovideo",
      visible: false,
      enabled: false,
      modelName: "",
      modelUrl: "",
    }
}

export const defaultEngine: EngineType = "cartesian_image"

export const getEngine = (type?: EngineType): Engine => engines[type || defaultEngine] || engines[defaultEngine]