gui-for-ffmpeg/main.go
Leonid Nikitin 9cdfa18fc8
Add initial implementations for encoder handling and conversion logic
Introduce encoder modules for various codecs and formats (e.g., h264_nvenc, libx264, libmp3lame). Add `Convertor` logic to retrieve supported formats via FFmpeg utilities and manage encoders for audio, video, and image processing.
2025-06-08 17:26:17 +05:00

42 lines
1.2 KiB
Go

package main
import (
"fyne.io/fyne/v2"
"fyne.io/fyne/v2/app"
"git.kor-elf.net/kor-elf/gui-for-ffmpeg/internal/application"
"git.kor-elf.net/kor-elf/gui-for-ffmpeg/internal/application/convertor"
"git.kor-elf.net/kor-elf/gui-for-ffmpeg/internal/application/setting"
"git.kor-elf.net/kor-elf/gui-for-ffmpeg/internal/controller"
"git.kor-elf.net/kor-elf/gui-for-ffmpeg/internal/ffmpeg"
"git.kor-elf.net/kor-elf/gui-for-ffmpeg/internal/resources"
)
func main() {
appMetadata := fyne.AppMetadata{
ID: "net.kor-elf.projects.gui-for-ffmpeg",
Name: "GUI for FFmpeg",
Version: "0.9.0",
Icon: resources.IconAppLogoResource(),
}
app.SetMetadata(appMetadata)
fyneApp := app.New()
progressBarService := convertor.NewProgressBar()
appSetting := setting.NewSetting(fyneApp)
ffmpegService := ffmpeg.NewUtilities(appSetting)
convertorService := convertor.NewConvertor(ffmpegService)
itemsToConvert := convertor.NewItemsToConvert(ffmpegService)
queue := convertor.NewQueueList()
myApp := application.NewApp(
fyneApp,
appSetting,
progressBarService,
ffmpegService,
itemsToConvert,
queue,
convertorService,
)
mainController := controller.NewController(myApp)
mainController.Start()
myApp.Run()
}