@lumy-pack/scene-sieve 0.0.4 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -14,8 +14,11 @@ export interface SieveOptionsBase {
14
14
  threshold?: number;
15
15
  outputPath?: string;
16
16
  fps?: number;
17
+ maxFrames?: number;
17
18
  scale?: number;
18
19
  quality?: number;
20
+ iouThreshold?: number;
21
+ animationThreshold?: number;
19
22
  debug?: boolean;
20
23
  onProgress?: (phase: ProgressPhase, percent: number) => void;
21
24
  }
@@ -28,8 +31,11 @@ export interface ResolvedOptions {
28
31
  pruneMode: 'threshold-with-cap';
29
32
  outputPath: string;
30
33
  fps: number;
34
+ maxFrames: number;
31
35
  scale: number;
32
36
  quality: number;
37
+ iouThreshold: number;
38
+ animationThreshold: number;
33
39
  debug: boolean;
34
40
  }
35
41
  export interface SieveResult {
@@ -38,8 +44,25 @@ export interface SieveResult {
38
44
  prunedFramesCount: number;
39
45
  outputFiles: string[];
40
46
  outputBuffers?: Buffer[];
47
+ animations?: AnimationMetadata[];
48
+ video?: VideoMetadata;
41
49
  executionTimeMs: number;
42
50
  }
51
+ export interface AnimationMetadata {
52
+ type: string;
53
+ boundingBox: BoundingBox;
54
+ startFrameId: number;
55
+ endFrameId: number;
56
+ durationMs: number;
57
+ }
58
+ export interface VideoMetadata {
59
+ originalDurationMs: number;
60
+ fps: number;
61
+ resolution: {
62
+ width: number;
63
+ height: number;
64
+ };
65
+ }
43
66
  export interface FrameNode {
44
67
  id: number;
45
68
  timestamp: number;
@@ -73,7 +96,12 @@ export interface ProcessContext {
73
96
  workspacePath: string;
74
97
  frames: FrameNode[];
75
98
  graph: ScoreEdge[];
99
+ animations?: AnimationMetadata[];
76
100
  status: 'INIT' | ProgressPhase | 'SUCCESS' | 'FAILED';
77
101
  emitProgress: (percent: number) => void;
78
102
  error?: Error;
79
103
  }
104
+ export interface AnalysisResult {
105
+ edges: ScoreEdge[];
106
+ animations: AnimationMetadata[];
107
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lumy-pack/scene-sieve",
3
- "version": "0.0.4",
3
+ "version": "0.0.6",
4
4
  "description": "CLI tool for extracting key frames from video and GIF files",
5
5
  "keywords": [
6
6
  "cli",
@@ -56,17 +56,18 @@
56
56
  "dependencies": {
57
57
  "@ffprobe-installer/ffprobe": "^1.4.1",
58
58
  "@techstark/opencv-js": "4.12.0-release.1",
59
- "cli-progress": "^3.12.0",
60
59
  "commander": "^12.1.0",
61
60
  "execa": "^9.5.0",
62
61
  "ffmpeg-static": "^5.2.0",
63
- "ora": "^8.0.0",
62
+ "ink": "^5.0.0",
63
+ "ink-spinner": "^5.0.0",
64
64
  "picocolors": "^1.1.1",
65
+ "react": "^18.0.0",
65
66
  "sharp": "^0.33.0"
66
67
  },
67
68
  "devDependencies": {
68
- "@types/cli-progress": "^3.11.6",
69
69
  "@types/node": "^20.11.0",
70
+ "@types/react": "^18.0.0",
70
71
  "@vitest/coverage-v8": "^3.2.4"
71
72
  }
72
73
  }