feat: FFmpeg GUI desktop application
Wails v2 + Vue3 + Go project with: - Encode/Remux/Subtitle burn with hardware acceleration - Real-time progress with ffmpeg stderr parsing (\r delimiter handling) - Task queue with cancel support - Per-task log viewer with color-coded output - Custom frameless window with resize support - Dark/light theme toggle - Hardware encoder detection (NVENC/QSV/AMF)
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
package task
|
||||
|
||||
import "ffmpeg-gui/internal/ffmpeg"
|
||||
|
||||
// BuildArgs builds ffmpeg command-line arguments for a task.
|
||||
func BuildArgs(t *Task, hwAccel string) []string {
|
||||
switch t.Type {
|
||||
case TypeRemux:
|
||||
return ffmpeg.BuildRemuxArgs(t.InputFile, t.OutputFile, t.Remux, hwAccel)
|
||||
case TypeEncode:
|
||||
return ffmpeg.BuildEncodeArgs(t.InputFile, t.OutputFile, t.Encode, hwAccel)
|
||||
case TypeBurn:
|
||||
return ffmpeg.BuildSubtitleArgs(t.InputFile, t.OutputFile, t.Subtitle, t.Encode, hwAccel)
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user