fix: use existing getPlatform() so the OS based CPU readback check also works in the browser
This commit is contained in:
@@ -8,6 +8,7 @@ import type {
|
||||
WebcamSizePreset,
|
||||
ZoomRegion,
|
||||
} from "@/components/video-editor/types";
|
||||
import { getPlatform } from "@/utils/platformUtils";
|
||||
import { AsyncVideoFrameQueue } from "./asyncVideoFrameQueue";
|
||||
import { FrameRenderer } from "./frameRenderer";
|
||||
import { StreamingVideoDecoder } from "./streamingDecoder";
|
||||
@@ -117,7 +118,7 @@ export class GifExporter {
|
||||
let webcamFrameQueue: AsyncVideoFrameQueue | null = null;
|
||||
|
||||
try {
|
||||
const platform = await window.electronAPI.getPlatform();
|
||||
const platform = await getPlatform();
|
||||
|
||||
this.cleanup();
|
||||
this.cancelled = false;
|
||||
|
||||
@@ -7,6 +7,7 @@ import type {
|
||||
WebcamSizePreset,
|
||||
ZoomRegion,
|
||||
} from "@/components/video-editor/types";
|
||||
import { getPlatform } from "@/utils/platformUtils";
|
||||
import { AsyncVideoFrameQueue } from "./asyncVideoFrameQueue";
|
||||
import { AudioProcessor } from "./audioEncoder";
|
||||
import { FrameRenderer } from "./frameRenderer";
|
||||
@@ -112,7 +113,7 @@ export class VideoExporter {
|
||||
this.fatalEncoderError = null;
|
||||
|
||||
try {
|
||||
const platform = await window.electronAPI.getPlatform();
|
||||
const platform = await getPlatform();
|
||||
|
||||
const streamingDecoder = new StreamingVideoDecoder();
|
||||
this.streamingDecoder = streamingDecoder;
|
||||
|
||||
@@ -3,7 +3,7 @@ let cachedPlatform: string | null = null;
|
||||
/**
|
||||
* Gets the current platform from Electron
|
||||
*/
|
||||
const getPlatform = async (): Promise<string> => {
|
||||
export const getPlatform = async (): Promise<string> => {
|
||||
if (cachedPlatform) return cachedPlatform;
|
||||
|
||||
try {
|
||||
@@ -14,9 +14,14 @@ const getPlatform = async (): Promise<string> => {
|
||||
console.warn("Failed to get platform from Electron, falling back to navigator:", error);
|
||||
// Fallback for development/testing
|
||||
let fallbackPlatform = "win32";
|
||||
if (typeof navigator !== "undefined" && /Mac|iPhone|iPad|iPod/.test(navigator.platform)) {
|
||||
fallbackPlatform = "darwin";
|
||||
if (typeof navigator !== "undefined") {
|
||||
if (/Mac|iPhone|iPad|iPod/.test(navigator.platform)) {
|
||||
fallbackPlatform = "darwin";
|
||||
} else if (/Linux/.test(navigator.platform)) {
|
||||
fallbackPlatform = "linux";
|
||||
}
|
||||
}
|
||||
|
||||
cachedPlatform = fallbackPlatform;
|
||||
return fallbackPlatform;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user