+ {/* Video Codec */}
+
+
+
+
+
+ {/* Video Bitrate */}
+
+
+
+ {options.videoBitrate || '2M'}
+
+
handleOptionChange('videoBitrate', `${vals[0]}M`)}
+ disabled={disabled}
+ />
+ Higher bitrate = better quality, larger file
+
+
+ {/* Resolution */}
+
+
+
+
+
+ {/* FPS */}
+
+
+
+
+
+ {/* Audio Bitrate */}
+
+
+
+ {options.audioBitrate || '128k'}
+
+
handleOptionChange('audioBitrate', `${vals[0]}k`)}
+ disabled={disabled}
+ />
+
+
+ );
+
+ const renderAudioOptions = () => (
+
+ {/* Audio Codec */}
+
+
+
+
+
+ {/* Bitrate */}
+
+
+
+ {options.audioBitrate || '192k'}
+
+
handleOptionChange('audioBitrate', `${vals[0]}k`)}
+ disabled={disabled}
+ />
+
+
+ {/* Sample Rate */}
+
+
+
+
+
+ {/* Channels */}
+
+
+
+
+
+ );
+
+ const renderImageOptions = () => (
+
+ {/* Quality */}
+
+
+
+ {options.imageQuality || 85}%
+
+
handleOptionChange('imageQuality', vals[0])}
+ disabled={disabled}
+ />
+
+
+ {/* Width */}
+
+
+
handleOptionChange('imageWidth', e.target.value ? parseInt(e.target.value) : undefined)}
+ placeholder="Original"
+ className="flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm"
+ disabled={disabled}
+ />
+
Leave empty to keep original
+
+
+ {/* Height */}
+
+
+
handleOptionChange('imageHeight', e.target.value ? parseInt(e.target.value) : undefined)}
+ placeholder="Original"
+ className="flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm"
+ disabled={disabled}
+ />
+
Leave empty to maintain aspect ratio
+
+
+ );
+
+ return (
+