151 Commits

Author SHA1 Message Date
80e0f6dfe5 Merge pull request 'Версия 1.0.1' (#12) from develop into main
Reviewed-on: #12
1.0.1
2025-08-21 23:14:59 +05:00
fb82846e9e Commented out incorrect theme color change logic in ThemeInit due to issues with the new Fyne version. 2025-08-21 22:24:21 +05:00
4a9182d063 Update dependencies in go.mod and go.sum to latest versions. 2025-08-21 22:24:09 +05:00
799d257e9d Bump version to 1.0.1 and update build number in FyneApp.toml. 2025-08-21 21:37:21 +05:00
6adbff9bbf Fix make build-for-linux_amd64. Added .gitignore files to exclude all files except .gitignore in Linux pixmaps and bin directories. 2025-08-21 21:34:24 +05:00
fc4c916735 Expanded Linux README files with instructions for launching the application via the start menu or terminal. 2025-08-21 21:32:32 +05:00
aaf43c15aa Fix. Correct in the "FFplay Player Keys" window so that the last line does not change the text style. 2025-08-21 21:07:30 +05:00
04eb6b87f4 Corrected folder paths in README for fyne-cross/dist archives. 2025-08-21 21:02:37 +05:00
597e9f75cf Merge pull request 'Версия 1.0.0' (#11) from develop into main
Reviewed-on: #11
1.0.0
2025-06-14 22:56:20 +05:00
26827d5ccd Window title updated to "GUI for FFmpeg". 2025-06-14 22:46:00 +05:00
b56199fe8b Simplified fyne-cross build commands in Makefile by removing redundant flags. Adjusted Windows binary naming during packaging. 2025-06-14 21:55:52 +05:00
f6958ffa97 Standardized application name in .desktop file (Name field updated to "GUI for FFmpeg"). 2025-06-14 21:55:30 +05:00
7f410ef700 Simplified README build instructions by removing redundant --icon and --name flags from fyne-cross commands. 2025-06-14 21:54:50 +05:00
c4d205a79e Updated FyneApp.toml with new Website, updated Icon path, bumped version to 1.0.0, added Linux/BSD-specific fields (GenericName, Categories, Comment, Keywords). 2025-06-14 19:52:29 +05:00
c45c106f2f Updated README for link fixes, new Makefile build instructions, and adjusted folder structure documentation. Deleted obsolete folder structure screenshot. 2025-06-14 19:34:47 +05:00
63c13de181 Add Makefile to automate build process for Linux and Windows 2025-06-14 19:32:29 +05:00
57767de4b3 Added files that will be copied during the build of the application for Linux. 2025-06-14 19:32:05 +05:00
c59c87d109 Duplicated: icon.png and screenshot-gui-for-ffmpeg.png in assets, so that I could later delete them from their current locations after the links to the images have changed everywhere. 2025-06-14 19:30:14 +05:00
0a22377cd6 Removed references to bbolt and its license info from "About" screen and LICENSE-3RD-PARTY.txt as it's no longer used. Added FFmpeg license details to LICENSE-3RD-PARTY.txt. 2025-06-10 23:41:37 +05:00
7930a907f1 Removed unused AppMetadata configuration and refactored imports in main.go. Because the data is duplicated with FyneApp.toml. 2025-06-10 22:25:21 +05:00
850cbbaf70 Removed the old program structure. 2025-06-09 23:42:09 +05:00
f4604f94c6 Set Fyne window as master during controller initialization. 2025-06-09 23:38:50 +05:00
077d7a82a9 Moved the menu to a new structure. 2025-06-09 23:30:05 +05:00
e6db590937 Add GetFFplayVersion method to retrieve FFplay version details
Extended `FFplayContract` with `GetVersion` to fetch FFplay version. Implemented version extraction in `utilities` and `ffplay` to support version retrieval functionality.
2025-06-09 23:28:25 +05:00
d7428683e4 Add GetFFprobeVersion method to retrieve FFprobe version details
Extended `FFprobeContract` with `GetVersion` to fetch FFprobe version. Implemented version extraction in `utilities` and `ffprobe` to support version retrieval functionality.
2025-06-09 23:25:13 +05:00
a9c59137af Rename GetFFmpegVersion to GetVersion in FFmpegContract for consistency and clarity. 2025-06-09 23:21:19 +05:00
c8619cdc7f Added the ability to get the FFmpeg version. 2025-06-09 23:19:48 +05:00
c49957e583 Moved the "About" window to a new structure. 2025-06-09 23:12:20 +05:00
39080cac14 Refactor HelpFFplay to simplify array initialization. 2025-06-09 22:56:04 +05:00
cae996a141 Moved the display of FFplay key descriptions to a new structure. 2025-06-09 22:54:27 +05:00
fc4e585620 Add main settings view and theme management functionality
Introduce a new `MainSettings` view for managing application settings, including language and theme selection. Implement theme management methods in the `setting` package to handle theme initialization, retrieval, and updates.
2025-06-09 00:27:40 +05:00
690f84e2c8 Fix display of queues during conversion
Fixed the error of displaying queues when they want to see only a certain status.
2025-06-08 22:54:50 +05:00
568d8f0897 Removed duplicate isChecked, since there is IsChecked. 2025-06-08 22:28:11 +05:00
2909ef7cea Introduce progress bar updates and queue processing logic
Implemented progress bar integration with `ProgressBarContract` for real-time conversion tracking and status updates. Added queue management functionality to process files sequentially with error and completion handling. Extended `ConvertorContract` and `FFmpegContract` to support tracking of running processes and conversion progress.
2025-06-08 22:19:28 +05:00
1b1cdd5c22 Add RunConvert method to FFmpegContract and implementation
Extend `FFmpegContract` with `RunConvert` for handling file conversion, including progress tracking and callback support before and after execution.
2025-06-08 21:47:28 +05:00
eb43669ae7 Add GetTotalDuration method to FFprobeContract and implementation
Extend `FFprobeContract` interface with `GetTotalDuration` for retrieving the duration of media files.
2025-06-08 21:38:29 +05:00
29ca392880 Made it so that files for conversion are added to the queue. 2025-06-08 20:42:43 +05:00
df8095fb16 Added an action to the submit button. 2025-06-08 19:19:50 +05:00
e48f363de0 Fix the bug where the file selection button for conversion disappears. 2025-06-08 18:30:08 +05:00
9bb835beaf Make a choice of the encoder in the form
Made a choice of the encoder by categories: video, audio and photo.
2025-06-08 17:26:49 +05:00
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
6c0abac1c5 Add directory selection for saving converted files
Introduce logic and UI for selecting and persisting a directory to save converted files. Extend existing components with directory selection buttons, message updates, and storage preferences.
2025-06-08 00:18:56 +05:00
394824ce88 Add layout system and file selection logic
Introduce a new layout system for managing main window content and tabs. Integrate file selection and drag-and-drop functionality for adding files to the conversion list, with automatic tab switching to "Added Files". Refactor existing components to support these features.
2025-06-07 23:44:47 +05:00
6e8b148c81 Made it so that you can play files through FFplay. 2025-06-07 23:43:32 +05:00
57637606c0 Revive the right block of the program
Moved the right part of the program from the old version. Slightly reworked the structure.
2025-06-07 21:27:55 +05:00
c60b9f7b0c Add FFmpeg utilities configuration UI and automated downloading
Introduce a new UI for configuring FFmpeg, FFprobe, and FFplay paths with file selection and error handling. Add platform-specific logic for downloading and extracting FFmpeg binaries directly within the application, improving user experience.
2025-06-07 01:30:32 +05:00
b24155caf6 Refactor application structure and initialize core components
I decided to rewrite the program taking into account the experience gained.
2025-06-06 14:50:16 +05:00
43d794373a Embed application icon as a resource and refactor icon usage
Replaced the external `icon.png` file with an embedded resource using Go's embed functionality. Updated all references to use the new resource, eliminating the need for the standalone icon file.
2025-06-01 19:58:28 +05:00
3241b88158 Refactor localization system and migrate to Fyne's built-in support
Replaced the `i18n` and `toml` dependencies with Fyne's built-in language system for localization management. Updated the `Localizer` implementation to handle translations using JSON files and embed functionality. Simplified language selection and persisted settings via Fyne's preferences API.
2025-06-01 15:20:33 +05:00
d69767f5e9 Remove bbolt database dependency
Replaced bbolt-based database handling with Fyne built-in preferences for storing application settings. Deleted migration logic, database initialization, and error handling related to bbolt, simplifying the codebase and reducing external dependencies.
2025-05-30 00:34:33 +05:00