diff --git a/AUTHORS b/AUTHORS index a048f993..646a8960 100644 --- a/AUTHORS +++ b/AUTHORS @@ -5,11 +5,12 @@ Author: Gianluca (jeanslack) Pernigotto Contributors: -@SwampRabbit (https://mxlinux.org/) -@CComparon (https://github.com/CComparon) -@samarthshrivas (https://github.com/samarthshrivas) -@MaiJZ (https://github.com/maijz128) +@SwampRabbit +@CComparon +@samarthshrivas +@MaiJZ @bovirus +@nxjosephofficial Translators: diff --git a/CHANGELOG b/CHANGELOG index 6afa576d..44db5591 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,11 +1,23 @@ # encoding: utf-8 Videomass Author: Gianluca (jeanslack) Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto License: GPL3 Change Log: ++------------------------------------+ +Mon, 14 Gen 2025 V.5.0.25 + + * Checking the output folder before running processes. + * Requires minimum Python version 3.9.0 . + * Fix typo in message 'Enable external import of ... package', + thanks to @nxjosephofficial . + * The application has been scheduled to restart automatically, e.g. at the + end of the wizard or after applying settings that require the application + to restart. + * Updated copyleft year. + +------------------------------------+ Wed, 30 Oct 2024 V.5.0.21 diff --git a/INSTALL b/INSTALL index 33e542a9..b1903e2d 100644 --- a/INSTALL +++ b/INSTALL @@ -6,7 +6,7 @@ Base application dependencies ============================= Requires: - - Python >=3.8.0 <=3.12.0 + - Python >=3.9.0 <=3.12.0 - wxPython-Phoenix >=4.0.7 - PyPubSub >=4.0.3 - requests >=2.26.0 @@ -68,7 +68,7 @@ Installation using pip ====================== Requires: - - Python >=3.8.0 <=3.12.0 + - Python >=3.9.0 <=3.12.0 - pip - venv @@ -94,9 +94,9 @@ Installing on Linux/FreeBSD: Optionally install yt-dlp: please read this before installing yt-dlp: https://github.com/yt-dlp/yt-dlp/pull/11255 - + python3 -m pip install "yt-dlp[default]" - + Installing on Windows and MacOs: @@ -114,7 +114,7 @@ Installing on Windows and MacOs: Optionally install yt-dlp: please read this before installing yt-dlp: https://github.com/yt-dlp/yt-dlp/pull/11255 - + python3 -m pip install "yt-dlp[default]" diff --git a/README.md b/README.md index 2ee9c142..9953ca1d 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # **Videomass** -[![Image](https://img.shields.io/static/v1?label=python&logo=python&message=3.8%20|%203.9%20|%203.10%20|%203.11%20|%203.12&color=blue)](https://www.python.org/downloads/) +[![Image](https://img.shields.io/static/v1?label=python&logo=python&message=3.9%20|%203.10%20|%203.11%20|%203.12&color=blue)](https://www.python.org/downloads/) [![Image](https://img.shields.io/badge/license-GPLv3-orange)](https://github.com/jeanslack/Videomass/blob/master/LICENSE) [![Python application](https://github.com/jeanslack/Videomass/actions/workflows/tests.yml/badge.svg)](https://github.com/jeanslack/Videomass/actions/workflows/tests.yml) diff --git a/debian/changelog b/debian/changelog index f675f525..dfabac2f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,16 @@ +videomass (5.0.25-1) UNRELEASED; urgency=medium + + * Checking the output folder before running processes. + * Requires minimum Python version 3.9.0 . + * Fix typo in message 'Enable external import of ... package', + thanks to @nxjosephofficial . + * The application has been scheduled to restart automatically, e.g. at the + end of the wizard or after applying settings that require the application + to restart. + * Updated copyleft year. + + -- Gianluca Pernigotto Tue, 14 Gen 2025 15:30:00 +0200 + videomass (5.0.21-1) UNRELEASED; urgency=medium * Update French language (thanks to Phil Aug). diff --git a/debian/copyright b/debian/copyright index 31f9f9f7..c438e6e7 100644 --- a/debian/copyright +++ b/debian/copyright @@ -28,7 +28,7 @@ and is licensed under the GPL-3, see above. ------------------------------------------- -Icons under 'videomass3/art': +Icons under 'videomass/data/icons': All *.svg and *.png icons in hicolor: GPL Version 3, 29 June 2007 Videomass icons in Sign_Icons: GPL Version 3, 29 June 2007 diff --git a/develop/gettext_utils/babelutils.py b/develop/gettext_utils/babelutils.py index 1283cf13..a471fbce 100644 --- a/develop/gettext_utils/babelutils.py +++ b/develop/gettext_utils/babelutils.py @@ -4,7 +4,7 @@ Porpose: Manage the translation message catalog independently of the GNU-xgettext utilities. Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: Distributed under the terms of the GPL3 License. Rev: Aug.03.2024 Code checker: flake8, pylint diff --git a/develop/gettext_utils/create_POT_file.sh b/develop/gettext_utils/create_POT_file.sh index df9fd3e5..af106dc9 100755 --- a/develop/gettext_utils/create_POT_file.sh +++ b/develop/gettext_utils/create_POT_file.sh @@ -1,7 +1,7 @@ #!/bin/bash # Author: Gianluca Pernigotto -# Copyleft - 2024 Gianluca Pernigotto +# Copyleft - 2025 Gianluca Pernigotto # license: GPL3 # Rev: July.10.2024 # diff --git a/develop/gettext_utils/generate_MO_files.sh b/develop/gettext_utils/generate_MO_files.sh index bd4dccf9..64c803f5 100755 --- a/develop/gettext_utils/generate_MO_files.sh +++ b/develop/gettext_utils/generate_MO_files.sh @@ -1,7 +1,7 @@ #!/bin/bash # Author: Gianluca Pernigotto -# Copyleft - 2024 Gianluca Pernigotto +# Copyleft - 2025 Gianluca Pernigotto # license: GPL3 # Rev: July.10.2024 # diff --git a/develop/gettext_utils/update_PO_files.sh b/develop/gettext_utils/update_PO_files.sh index e4364974..8b1cdcd7 100755 --- a/develop/gettext_utils/update_PO_files.sh +++ b/develop/gettext_utils/update_PO_files.sh @@ -1,7 +1,7 @@ #!/bin/bash # Author: Gianluca Pernigotto -# Copyleft - 2024 Gianluca Pernigotto +# Copyleft - 2025 Gianluca Pernigotto # license: GPL3 # Rev: July.10.2024 # diff --git a/develop/tools/inkscape2png.py b/develop/tools/inkscape2png.py index 39a8d644..d66d401c 100644 --- a/develop/tools/inkscape2png.py +++ b/develop/tools/inkscape2png.py @@ -6,7 +6,7 @@ Inkscape library Compatibility: Python3 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Oct.23.2020 *PEP8 compatible* diff --git a/develop/tools/pyinstaller_setup.py b/develop/tools/pyinstaller_setup.py index 30e3795f..1c5c7495 100644 --- a/develop/tools/pyinstaller_setup.py +++ b/develop/tools/pyinstaller_setup.py @@ -5,7 +5,7 @@ Porpose: Provide build options to bundle the Videomass application. Platform: Gnu-Linux, MacOs, MS-Windows Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Aug.04.2024 diff --git a/develop/tools/rsvg2png.py b/develop/tools/rsvg2png.py index b92d0389..653a52b2 100755 --- a/develop/tools/rsvg2png.py +++ b/develop/tools/rsvg2png.py @@ -5,7 +5,7 @@ Porpose: Wrapper interface to perform batch conversion using the rsvg library Compatibility: Python3 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: 11 Feb 2023 diff --git a/hatch_build.py b/hatch_build.py index a5065171..cdb50a4a 100644 --- a/hatch_build.py +++ b/hatch_build.py @@ -6,7 +6,7 @@ of the build process, see [tool.hatch.build.hooks.custom] on pyproject.toml file. Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.22.2024 Code checker: flake8, pylint diff --git a/launcher b/launcher index 8e68b3b0..4428f3a6 100644 --- a/launcher +++ b/launcher @@ -5,7 +5,7 @@ Name: launcher.py Porpose: main launch script of videomass Compatibility: Python2, Python3 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: May.09.2021 Code checker: flake8, pylint diff --git a/pyproject.toml b/pyproject.toml index f0f62639..34db70ee 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,7 +6,7 @@ build-backend = "hatchling.build" name = "videomass" dynamic = ["version"] readme = "README.md" -requires-python = ">=3.8" +requires-python = ">=3.9" authors = [ {name = "Gianluca Pernigotto", email = "jeanlucperni@gmail.com"} ] @@ -42,7 +42,6 @@ classifiers = [ "Natural Language :: Russian", "Natural Language :: Spanish", "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", @@ -75,6 +74,7 @@ pyinstaller = [ ] [tool.hatch.build.hooks.custom] # see hatch_build.py file +# https://github.com/pypa/hatch/discussions/1047 dependencies = [ "babel" ] diff --git a/requirements/requirements-build.txt b/requirements/requirements-build.txt index bf8428e3..6605cdbd 100644 --- a/requirements/requirements-build.txt +++ b/requirements/requirements-build.txt @@ -14,7 +14,7 @@ pyinstaller # # Required dependencies for building: # -# Python >= 3.8.0 +# Python >= 3.9.0 # python3-pip # python3-all # python3-babel diff --git a/videomass/data/hicolor/COPYING-ICONS.txt b/videomass/data/hicolor/COPYING-ICONS.txt index bcc9c7aa..de695da8 100644 --- a/videomass/data/hicolor/COPYING-ICONS.txt +++ b/videomass/data/hicolor/COPYING-ICONS.txt @@ -1,6 +1,6 @@ The Videomass-Dark Icon Theme in 24x24 and 16x16/ - Copyleft - 2024 + Copyleft - 2025 ----- GNU GENERAL PUBLIC LICENSE diff --git a/videomass/data/icons/Videomass-Colours/COPYING-ICONS.txt b/videomass/data/icons/Videomass-Colours/COPYING-ICONS.txt index 37454d6e..3449dcf7 100644 --- a/videomass/data/icons/Videomass-Colours/COPYING-ICONS.txt +++ b/videomass/data/icons/Videomass-Colours/COPYING-ICONS.txt @@ -1,6 +1,6 @@ The Videomass-Colours Icon Theme in 24x24 and 16x16/ - Copyleft - 2024 + Copyleft - 2025 All icons included in this folder are part of Videomass. diff --git a/videomass/data/icons/Videomass-Dark/COPYING-ICONS.txt b/videomass/data/icons/Videomass-Dark/COPYING-ICONS.txt index 522c7d38..70bb1d8c 100644 --- a/videomass/data/icons/Videomass-Dark/COPYING-ICONS.txt +++ b/videomass/data/icons/Videomass-Dark/COPYING-ICONS.txt @@ -1,6 +1,6 @@ The Videomass-Dark Icon Theme in 24x24 and 16x16/ - Copyleft - 2024 + Copyleft - 2025 All icons included in this folder are part of Videomass. diff --git a/videomass/data/icons/Videomass-Light/COPYING-ICONS.txt b/videomass/data/icons/Videomass-Light/COPYING-ICONS.txt index 522c7d38..70bb1d8c 100644 --- a/videomass/data/icons/Videomass-Light/COPYING-ICONS.txt +++ b/videomass/data/icons/Videomass-Light/COPYING-ICONS.txt @@ -1,6 +1,6 @@ The Videomass-Dark Icon Theme in 24x24 and 16x16/ - Copyleft - 2024 + Copyleft - 2025 All icons included in this folder are part of Videomass. diff --git a/videomass/gui_app.py b/videomass/gui_app.py index 2a9ce6b3..855070ba 100644 --- a/videomass/gui_app.py +++ b/videomass/gui_app.py @@ -4,9 +4,9 @@ Porpose: bootstrap for Videomass app. Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 -Rev: June.19.2024 +Rev: Gen.14.2025 Code checker: flake8, pylint This file is part of Videomass. @@ -232,10 +232,33 @@ def OnExit(self): "{0}").format(err), 'Videomass', wx.ICON_STOP) return False + + if self.appset['auto-restart-app']: + auto_restart(self.appset['app'], self.appset['make_portable']) + return True + return True # ------------------------------------------------------------------- +def auto_restart(apptype, portmode): + """ + This function spawn the same executable again, automatically + restarting this application (Videomass), for example after + the wizard dialog or after applying settings that require + the application to be restarted. + """ + if apptype == 'pyinstaller': + executable = sys.executable + wx.Execute(f'{executable}', flags=wx.EXEC_SYNC) + else: + makeportable = '' if not portmode else f'--make-portable {portmode}' + cmdargs = f'{sys.executable} {sys.argv[0]} {makeportable}' + wx.Execute(cmdargs, flags=wx.EXEC_SYNC) + + return + + def main(): """ With the default command line arguments starts diff --git a/videomass/vdms_dialogs/about_dialog.py b/videomass/vdms_dialogs/about_dialog.py index 122e7cb4..fa2a4fa7 100644 --- a/videomass/vdms_dialogs/about_dialog.py +++ b/videomass/vdms_dialogs/about_dialog.py @@ -4,7 +4,7 @@ Porpose: about videomass Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: March.13.2022 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/audioproperties.py b/videomass/vdms_dialogs/audioproperties.py index 2fded292..7ca4b2bb 100644 --- a/videomass/vdms_dialogs/audioproperties.py +++ b/videomass/vdms_dialogs/audioproperties.py @@ -4,7 +4,7 @@ Porpose: A dialog interface for audio parameter settings Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.03.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/epilogue.py b/videomass/vdms_dialogs/epilogue.py index 4347c781..a0b258bb 100644 --- a/videomass/vdms_dialogs/epilogue.py +++ b/videomass/vdms_dialogs/epilogue.py @@ -4,7 +4,7 @@ Porpose: shows dialog box before start process Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2022 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/ffmpeg_codecs.py b/videomass/vdms_dialogs/ffmpeg_codecs.py index 8fd80a27..aa46327d 100644 --- a/videomass/vdms_dialogs/ffmpeg_codecs.py +++ b/videomass/vdms_dialogs/ffmpeg_codecs.py @@ -4,7 +4,7 @@ Porpose: Mini-frame to show the available decoders/encoders on the FFmpeg Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.13.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/ffmpeg_conf.py b/videomass/vdms_dialogs/ffmpeg_conf.py index 5e7c41ce..4af45fb2 100644 --- a/videomass/vdms_dialogs/ffmpeg_conf.py +++ b/videomass/vdms_dialogs/ffmpeg_conf.py @@ -4,7 +4,7 @@ Porpose: Shows the features of the FFmpeg build configuration Compatibility: Python3, wxPython4 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: March.12.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/ffmpeg_formats.py b/videomass/vdms_dialogs/ffmpeg_formats.py index b4163b61..5f01f262 100644 --- a/videomass/vdms_dialogs/ffmpeg_formats.py +++ b/videomass/vdms_dialogs/ffmpeg_formats.py @@ -4,7 +4,7 @@ Porpose: Show the available formats on the FFmpeg Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.13.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/ffmpeg_help.py b/videomass/vdms_dialogs/ffmpeg_help.py index 4bc4f1a9..31fc6ba0 100644 --- a/videomass/vdms_dialogs/ffmpeg_help.py +++ b/videomass/vdms_dialogs/ffmpeg_help.py @@ -4,7 +4,7 @@ Porpose: Show a window to search for FFmpeg help topics Compatibility: Python3, wxPython4 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: March.14.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/filter_colorcorrection.py b/videomass/vdms_dialogs/filter_colorcorrection.py index 3c2c7a60..a6bce80e 100644 --- a/videomass/vdms_dialogs/filter_colorcorrection.py +++ b/videomass/vdms_dialogs/filter_colorcorrection.py @@ -4,7 +4,7 @@ Porpose: Show dialog to set color correction data based on FFmpeg syntax Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/filter_crop.py b/videomass/vdms_dialogs/filter_crop.py index 549f3fba..25327e8f 100644 --- a/videomass/vdms_dialogs/filter_crop.py +++ b/videomass/vdms_dialogs/filter_crop.py @@ -4,7 +4,7 @@ Porpose: A dialog to get video crop values based on FFmpeg syntax Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/filter_deinterlace.py b/videomass/vdms_dialogs/filter_deinterlace.py index 5ad8e408..b7517f90 100644 --- a/videomass/vdms_dialogs/filter_deinterlace.py +++ b/videomass/vdms_dialogs/filter_deinterlace.py @@ -4,7 +4,7 @@ Porpose: Show dialog to get deinterlace/interlace data based on FFmpeg syntax Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: May.09.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/filter_denoisers.py b/videomass/vdms_dialogs/filter_denoisers.py index b1b48d75..d244b2d8 100644 --- a/videomass/vdms_dialogs/filter_denoisers.py +++ b/videomass/vdms_dialogs/filter_denoisers.py @@ -4,7 +4,7 @@ Porpose: Show dialog to get denoiser data based on FFmpeg syntax Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/filter_scale.py b/videomass/vdms_dialogs/filter_scale.py index 8f271a26..437d4eab 100644 --- a/videomass/vdms_dialogs/filter_scale.py +++ b/videomass/vdms_dialogs/filter_scale.py @@ -4,7 +4,7 @@ Porpose: Show dialog to get scale data based on FFmpeg syntax Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.21.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/filter_stab.py b/videomass/vdms_dialogs/filter_stab.py index 767b0a8b..a3f84bd7 100644 --- a/videomass/vdms_dialogs/filter_stab.py +++ b/videomass/vdms_dialogs/filter_stab.py @@ -4,7 +4,7 @@ Porpose: Show dialog to get vidstab data based on FFmpeg syntax Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.23.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/filter_transpose.py b/videomass/vdms_dialogs/filter_transpose.py index c9dfe80d..d30b743a 100644 --- a/videomass/vdms_dialogs/filter_transpose.py +++ b/videomass/vdms_dialogs/filter_transpose.py @@ -4,7 +4,7 @@ Porpose: Show a dialog to get video transpose data based on FFmpeg syntax Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/list_warning.py b/videomass/vdms_dialogs/list_warning.py index d992d4cb..76bfec38 100644 --- a/videomass/vdms_dialogs/list_warning.py +++ b/videomass/vdms_dialogs/list_warning.py @@ -4,7 +4,7 @@ Porpose: A custom multipurpose dialog for listing alert messages and confirms Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/mediainfo.py b/videomass/vdms_dialogs/mediainfo.py index b8dc9541..392aa445 100644 --- a/videomass/vdms_dialogs/mediainfo.py +++ b/videomass/vdms_dialogs/mediainfo.py @@ -4,7 +4,7 @@ Porpose: show media streams information through ffprobe data Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/preferences.py b/videomass/vdms_dialogs/preferences.py index a57c6fa6..e5098400 100644 --- a/videomass/vdms_dialogs/preferences.py +++ b/videomass/vdms_dialogs/preferences.py @@ -4,7 +4,7 @@ Porpose: videomass setup dialog Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: June.24.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/queue_edit.py b/videomass/vdms_dialogs/queue_edit.py index 76c933c7..1cf2cd44 100644 --- a/videomass/vdms_dialogs/queue_edit.py +++ b/videomass/vdms_dialogs/queue_edit.py @@ -4,7 +4,7 @@ Porpose: edit a selected item queue Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.03.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/queuedlg.py b/videomass/vdms_dialogs/queuedlg.py index cc92f6ac..7899ceba 100644 --- a/videomass/vdms_dialogs/queuedlg.py +++ b/videomass/vdms_dialogs/queuedlg.py @@ -4,7 +4,7 @@ Porpose: A proper dialog for queue managements Compatibility: Python3, wxPython4 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.25.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/renamer.py b/videomass/vdms_dialogs/renamer.py index 3a7d2023..b570c113 100644 --- a/videomass/vdms_dialogs/renamer.py +++ b/videomass/vdms_dialogs/renamer.py @@ -4,7 +4,7 @@ Porpose: batch and single file renamer Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2022 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/set_timestamp.py b/videomass/vdms_dialogs/set_timestamp.py index 2faa681b..d793684b 100644 --- a/videomass/vdms_dialogs/set_timestamp.py +++ b/videomass/vdms_dialogs/set_timestamp.py @@ -5,7 +5,7 @@ Porpose: timestamp setting on FFplay Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/setting_profiles.py b/videomass/vdms_dialogs/setting_profiles.py index 0c8bbd09..b0ac339b 100644 --- a/videomass/vdms_dialogs/setting_profiles.py +++ b/videomass/vdms_dialogs/setting_profiles.py @@ -4,7 +4,7 @@ Porpose: profiles storing and profiles editing dialog Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.06.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/showlogs.py b/videomass/vdms_dialogs/showlogs.py index 16a59a0f..e2e37672 100644 --- a/videomass/vdms_dialogs/showlogs.py +++ b/videomass/vdms_dialogs/showlogs.py @@ -4,7 +4,7 @@ Porpose: show logs data Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/shownormlist.py b/videomass/vdms_dialogs/shownormlist.py index a072c12f..6a7a639d 100644 --- a/videomass/vdms_dialogs/shownormlist.py +++ b/videomass/vdms_dialogs/shownormlist.py @@ -4,7 +4,7 @@ Porpose: Show audio volume data list (PEAK/RMS only) Compatibility: Python3, wxPython4 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: March.09.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/singlechoicedlg.py b/videomass/vdms_dialogs/singlechoicedlg.py index acf48060..25146034 100644 --- a/videomass/vdms_dialogs/singlechoicedlg.py +++ b/videomass/vdms_dialogs/singlechoicedlg.py @@ -4,7 +4,7 @@ Porpose: shows a single choice dialog box Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.27.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/videomass_check_version.py b/videomass/vdms_dialogs/videomass_check_version.py index 5b20e870..eaeadb40 100644 --- a/videomass/vdms_dialogs/videomass_check_version.py +++ b/videomass/vdms_dialogs/videomass_check_version.py @@ -4,7 +4,7 @@ Porpose: shows informative messages on version in use and new releases Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/while_playing.py b/videomass/vdms_dialogs/while_playing.py index 32b55c33..fc019302 100644 --- a/videomass/vdms_dialogs/while_playing.py +++ b/videomass/vdms_dialogs/while_playing.py @@ -4,7 +4,7 @@ Porpose: Show box with shortcuts keyboard when playback with FFplay Compatibility: Python3, wxPython4 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.13.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/widget_utils.py b/videomass/vdms_dialogs/widget_utils.py index 0d45e919..93ff6223 100644 --- a/videomass/vdms_dialogs/widget_utils.py +++ b/videomass/vdms_dialogs/widget_utils.py @@ -4,7 +4,7 @@ Porpose: Features a set of useful wx widgets to use dynamically Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Nov.27.2021 Code checker: flake8, pylint diff --git a/videomass/vdms_dialogs/wizard_dlg.py b/videomass/vdms_dialogs/wizard_dlg.py index d84374d6..e084608e 100644 --- a/videomass/vdms_dialogs/wizard_dlg.py +++ b/videomass/vdms_dialogs/wizard_dlg.py @@ -4,9 +4,9 @@ Porpose: wizard setup dialog Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 -Rev: April.14.2024 +Rev: Gen.14.2025 Code checker: flake8, pylint This file is part of Videomass. @@ -675,7 +675,7 @@ def wizard_Finish(self): youtubedl, binfound ) - self.Hide() - wx.MessageBox(_("Re-start is required"), - _("Done!"), wx.ICON_INFORMATION, self) + get = wx.GetApp() + appdata = get.appset + appdata['auto-restart-app'] = True self.Destroy() diff --git a/videomass/vdms_io/checkup.py b/videomass/vdms_io/checkup.py index b162a8ef..b132b270 100644 --- a/videomass/vdms_io/checkup.py +++ b/videomass/vdms_io/checkup.py @@ -4,7 +4,7 @@ Porpose: input/output file check Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: April.17.2023 Code checker: flake8, pylint @@ -29,6 +29,25 @@ from videomass.vdms_dialogs.list_warning import ListWarning +def check_destination_dir(file_dest): + """ + Check output destination directory only. + return `None` if it meets the condition requirements, + otherwise an error dialog will be shown and the function + will return the boolean value `True`. + + """ + drn = os.path.abspath(file_dest) + if os.path.exists(drn) and os.path.isdir(drn): + return None + + wx.MessageBox(_('Output folder does not exist:\n\n"{}"\n').format( + drn), _('Videomass - Error!'), wx.ICON_ERROR + ) + return True +# ------------------------------------------------------------------------# + + def check_inout(file_sources, file_dest): """ check for overwriting and file/dir existence. diff --git a/videomass/vdms_io/io_tools.py b/videomass/vdms_io/io_tools.py index 179ea398..4b651fc8 100644 --- a/videomass/vdms_io/io_tools.py +++ b/videomass/vdms_io/io_tools.py @@ -4,7 +4,7 @@ Porpose: input/output redirection to processes (aka threads) Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.20.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_io/make_filelog.py b/videomass/vdms_io/make_filelog.py index 091f4aee..f4d67410 100644 --- a/videomass/vdms_io/make_filelog.py +++ b/videomass/vdms_io/make_filelog.py @@ -4,7 +4,7 @@ Porpose: log file generator Compatibility: Python3, Python2 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.08.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_main/main_frame.py b/videomass/vdms_main/main_frame.py index bd87ffc5..286566b4 100644 --- a/videomass/vdms_main/main_frame.py +++ b/videomass/vdms_main/main_frame.py @@ -4,9 +4,9 @@ Porpose: top window main frame Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 -Rev: Oct.29.2024 +Rev: Gen.14.2025 Code checker: flake8, pylint This file is part of Videomass. @@ -427,6 +427,7 @@ def on_Kill(self): "processes, make sure you finish your work " "before exit."), _('Videomass - Warning!'), wx.ICON_WARNING, self) + self.appdata['auto-restart-app'] = False return if self.ytdlframe: @@ -1107,6 +1108,7 @@ def main_setup_dlg(self, event): "the application now?").format(msg), _('Restart Videomass?'), wx.ICON_QUESTION | wx.CANCEL | wx.YES_NO, self) == wx.YES: + self.appdata['auto-restart-app'] = True self.on_Kill() # ------------------------------------------------------------------# # --------- Menu Help ### diff --git a/videomass/vdms_miniframes/timeline.py b/videomass/vdms_miniframes/timeline.py index 4cd25b38..99b8ff75 100644 --- a/videomass/vdms_miniframes/timeline.py +++ b/videomass/vdms_miniframes/timeline.py @@ -4,7 +4,7 @@ Porpose: Time trimming settings Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: April.07.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/audio_encoders/acodecs.py b/videomass/vdms_panels/audio_encoders/acodecs.py index e1fd89f9..7c714303 100644 --- a/videomass/vdms_panels/audio_encoders/acodecs.py +++ b/videomass/vdms_panels/audio_encoders/acodecs.py @@ -4,7 +4,7 @@ Porpose: Contains audio functionality for A/V Conversions Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.08.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/av_conversions.py b/videomass/vdms_panels/av_conversions.py index 47d64040..fd0c54c7 100644 --- a/videomass/vdms_panels/av_conversions.py +++ b/videomass/vdms_panels/av_conversions.py @@ -4,7 +4,7 @@ Porpose: audio/video conversions interface Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.22.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/choose_topic.py b/videomass/vdms_panels/choose_topic.py index 04fbf2ff..8899af65 100644 --- a/videomass/vdms_panels/choose_topic.py +++ b/videomass/vdms_panels/choose_topic.py @@ -4,7 +4,7 @@ Porpose: shows the topics available in the program Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.13.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/concatenate.py b/videomass/vdms_panels/concatenate.py index df678601..6e209535 100644 --- a/videomass/vdms_panels/concatenate.py +++ b/videomass/vdms_panels/concatenate.py @@ -4,7 +4,7 @@ Porpose: A simple concat demuxer UI Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.25.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/filedrop.py b/videomass/vdms_panels/filedrop.py index d78ea1cc..274b8539 100644 --- a/videomass/vdms_panels/filedrop.py +++ b/videomass/vdms_panels/filedrop.py @@ -4,7 +4,7 @@ Porpose: files drag n drop interface Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.18.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/long_processing_task.py b/videomass/vdms_panels/long_processing_task.py index a961353c..dd47335b 100644 --- a/videomass/vdms_panels/long_processing_task.py +++ b/videomass/vdms_panels/long_processing_task.py @@ -4,7 +4,7 @@ Porpose: Console to show logging messages during processing Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.20.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/miscellaneous/miscell.py b/videomass/vdms_panels/miscellaneous/miscell.py index 16e027b5..bb2377ca 100644 --- a/videomass/vdms_panels/miscellaneous/miscell.py +++ b/videomass/vdms_panels/miscellaneous/miscell.py @@ -4,7 +4,7 @@ Porpose: Contains various functionalities for A/V Conversions Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.13.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/presets_manager.py b/videomass/vdms_panels/presets_manager.py index 34698f44..78a2dc74 100644 --- a/videomass/vdms_panels/presets_manager.py +++ b/videomass/vdms_panels/presets_manager.py @@ -5,7 +5,7 @@ Porpose: ffmpeg's presets manager panel Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.22.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/sequence_to_video.py b/videomass/vdms_panels/sequence_to_video.py index b28ad5c2..8299e3bf 100644 --- a/videomass/vdms_panels/sequence_to_video.py +++ b/videomass/vdms_panels/sequence_to_video.py @@ -4,7 +4,7 @@ Porpose: A slideshow maker based on FFmpeg Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: May.22.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/video_encoders/av1_aom.py b/videomass/vdms_panels/video_encoders/av1_aom.py index ca62eda4..e9cb9c0c 100644 --- a/videomass/vdms_panels/video_encoders/av1_aom.py +++ b/videomass/vdms_panels/video_encoders/av1_aom.py @@ -4,7 +4,7 @@ Porpose: Contains AOM-AV1 functionalities for A/V Conversions Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.11.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/video_encoders/av1_svt.py b/videomass/vdms_panels/video_encoders/av1_svt.py index efcf76ed..a380dac9 100644 --- a/videomass/vdms_panels/video_encoders/av1_svt.py +++ b/videomass/vdms_panels/video_encoders/av1_svt.py @@ -4,7 +4,7 @@ Porpose: Contains SVT-AV1 functionalities for A/V Conversions Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.11.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/video_encoders/avc_x264.py b/videomass/vdms_panels/video_encoders/avc_x264.py index 51cba1e5..3a2550c6 100644 --- a/videomass/vdms_panels/video_encoders/avc_x264.py +++ b/videomass/vdms_panels/video_encoders/avc_x264.py @@ -4,7 +4,7 @@ Porpose: Contains H.264 functionalities for A/V Conversions Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.28.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/video_encoders/hevc_x265.py b/videomass/vdms_panels/video_encoders/hevc_x265.py index 7b90363c..98d50156 100644 --- a/videomass/vdms_panels/video_encoders/hevc_x265.py +++ b/videomass/vdms_panels/video_encoders/hevc_x265.py @@ -4,7 +4,7 @@ Porpose: Contains H.265 functionalities for A/V Conversions Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.04.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/video_encoders/mpeg4.py b/videomass/vdms_panels/video_encoders/mpeg4.py index 3265176e..ec4995a1 100644 --- a/videomass/vdms_panels/video_encoders/mpeg4.py +++ b/videomass/vdms_panels/video_encoders/mpeg4.py @@ -4,7 +4,7 @@ Porpose: Contains Mpeg_4/XVID functionalities for A/V Conversions Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.06.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/video_encoders/video_encodercopy.py b/videomass/vdms_panels/video_encoders/video_encodercopy.py index 530fb980..7b995361 100644 --- a/videomass/vdms_panels/video_encoders/video_encodercopy.py +++ b/videomass/vdms_panels/video_encoders/video_encodercopy.py @@ -4,7 +4,7 @@ Porpose: Contains copy-codec functionalities for A/V Conversions Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.05.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/video_encoders/video_no_enc.py b/videomass/vdms_panels/video_encoders/video_no_enc.py index 0bf42a2d..3db3b94f 100644 --- a/videomass/vdms_panels/video_encoders/video_no_enc.py +++ b/videomass/vdms_panels/video_encoders/video_no_enc.py @@ -4,7 +4,7 @@ Porpose: Contains text messages for A/V Conversions Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.05.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/video_encoders/vp9_webm.py b/videomass/vdms_panels/video_encoders/vp9_webm.py index 63212cb0..072592a6 100644 --- a/videomass/vdms_panels/video_encoders/vp9_webm.py +++ b/videomass/vdms_panels/video_encoders/vp9_webm.py @@ -4,7 +4,7 @@ Porpose: Contains VP9-WEBM functionalities for A/V Conversions Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.12.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_panels/video_to_sequence.py b/videomass/vdms_panels/video_to_sequence.py index 6c389723..31a7a669 100644 --- a/videomass/vdms_panels/video_to_sequence.py +++ b/videomass/vdms_panels/video_to_sequence.py @@ -4,7 +4,7 @@ Porpose: A simple images extractor UI Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.08.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_sys/about_app.py b/videomass/vdms_sys/about_app.py index bc22db7e..fe36037b 100644 --- a/videomass/vdms_sys/about_app.py +++ b/videomass/vdms_sys/about_app.py @@ -4,7 +4,7 @@ Porpose: Gets information about the program Compatibility: Python3, Python2 author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto lic: GPL3 Rev: June.26.2024 Code checker: flake8, pylint @@ -26,9 +26,9 @@ """ PRGNAME = 'videomass' RELNAME = 'Videomass' -VERSION = '5.0.21' +VERSION = '5.0.25' RELSTATE = 'released' -COPYRIGHT = '2013-2024' +COPYRIGHT = '2013-2025' WEBSITE = 'http://jeanslack.github.io/Videomass/' AUTHOR = ('Gianluca Pernigotto', '(aka jeanslack)') MAIL = 'jeanlucperni@gmail.com' diff --git a/videomass/vdms_sys/argparser.py b/videomass/vdms_sys/argparser.py index 93d1fbf8..60920479 100644 --- a/videomass/vdms_sys/argparser.py +++ b/videomass/vdms_sys/argparser.py @@ -4,7 +4,7 @@ Porpose: Videomass Command line arguments Compatibility: Python3 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: May.29.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_sys/configurator.py b/videomass/vdms_sys/configurator.py index e9cfc8ff..b811d2df 100644 --- a/videomass/vdms_sys/configurator.py +++ b/videomass/vdms_sys/configurator.py @@ -4,9 +4,9 @@ Porpose: Set Videomass configuration on startup Compatibility: Python3 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 -Rev: Oct.28.2024 +Rev: Gen.14.2025 Code checker: flake8, pylint This file is part of Videomass. @@ -377,6 +377,8 @@ def _relativize(path, relative=self.relativepaths): 'ffmpeg-default-args': '-y -stats -hide_banner', 'ffplay-default-args': '-hide_banner', 'yt_dlp': '', + 'auto-restart-app': False, + 'make_portable': self.makeportable, **userconf }) # -------------------------------------------------------------------- diff --git a/videomass/vdms_sys/external_package.py b/videomass/vdms_sys/external_package.py index 93af52a1..a0506b6a 100644 --- a/videomass/vdms_sys/external_package.py +++ b/videomass/vdms_sys/external_package.py @@ -4,7 +4,7 @@ Porpose: finds and loads a module Compatibility: Python3 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: June.19.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_sys/settings_manager.py b/videomass/vdms_sys/settings_manager.py index 9ba916f6..c3e11e5b 100644 --- a/videomass/vdms_sys/settings_manager.py +++ b/videomass/vdms_sys/settings_manager.py @@ -4,7 +4,7 @@ Porpose: Read and write the configuration file Compatibility: Python3 Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Oct.29.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_threads/check_bin.py b/videomass/vdms_threads/check_bin.py index 2e2933e9..e589115a 100644 --- a/videomass/vdms_threads/check_bin.py +++ b/videomass/vdms_threads/check_bin.py @@ -4,7 +4,7 @@ Porpose: Gets the output to display the features of FFmpeg Compatibility: Python3 (Unix, Windows) Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: May.15.2021 Code checker: flake8, pylint diff --git a/videomass/vdms_threads/concat_demuxer.py b/videomass/vdms_threads/concat_demuxer.py index 999f9cc6..d2ec77e5 100644 --- a/videomass/vdms_threads/concat_demuxer.py +++ b/videomass/vdms_threads/concat_demuxer.py @@ -4,7 +4,7 @@ Porpose: FFmpeg long processing task for Concatenation processing Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.24.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_threads/ffmpeg.py b/videomass/vdms_threads/ffmpeg.py index ba78e7be..fc1f798e 100644 --- a/videomass/vdms_threads/ffmpeg.py +++ b/videomass/vdms_threads/ffmpeg.py @@ -4,7 +4,7 @@ Porpose: FFmpeg long processing task Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.20.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_threads/ffplay_file.py b/videomass/vdms_threads/ffplay_file.py index 60d42a05..1c60ffa3 100644 --- a/videomass/vdms_threads/ffplay_file.py +++ b/videomass/vdms_threads/ffplay_file.py @@ -5,7 +5,7 @@ Porpose: playback media file via ffplay Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.20.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_threads/ffprobe.py b/videomass/vdms_threads/ffprobe.py index 5f78fecb..9da9ff8f 100644 --- a/videomass/vdms_threads/ffprobe.py +++ b/videomass/vdms_threads/ffprobe.py @@ -5,7 +5,7 @@ Compatibility: Python3 Platform: all platforms Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.17.2022 Code checker: flake8, pylint diff --git a/videomass/vdms_threads/generic_downloads.py b/videomass/vdms_threads/generic_downloads.py index 2ecdc89b..d0a96a70 100644 --- a/videomass/vdms_threads/generic_downloads.py +++ b/videomass/vdms_threads/generic_downloads.py @@ -4,7 +4,7 @@ Porpose: generic network download operation Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.14.2022 Code checker: flake8, pylint diff --git a/videomass/vdms_threads/generic_task.py b/videomass/vdms_threads/generic_task.py index d9f71661..6e7e3f3f 100644 --- a/videomass/vdms_threads/generic_task.py +++ b/videomass/vdms_threads/generic_task.py @@ -4,7 +4,7 @@ Porpose: Execute a generic task with FFmpeg Compatibility: Python3 (Unix, Windows) Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: May.23.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_threads/image_extractor.py b/videomass/vdms_threads/image_extractor.py index e8147680..3b06b573 100644 --- a/videomass/vdms_threads/image_extractor.py +++ b/videomass/vdms_threads/image_extractor.py @@ -4,7 +4,7 @@ Porpose: FFmpeg long processing task on save as pictures Compatibility: Python3, wxPython4 Phoenix (OS Unix-like only) Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.24.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_threads/shutdown.py b/videomass/vdms_threads/shutdown.py index 64bec132..5d96ea14 100644 --- a/videomass/vdms_threads/shutdown.py +++ b/videomass/vdms_threads/shutdown.py @@ -4,7 +4,7 @@ Porpose: Execute shutdown system using subprocess Compatibility: Python3 (Unix, Windows) Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: May.23.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_threads/slideshow.py b/videomass/vdms_threads/slideshow.py index 84de5345..a0e32904 100644 --- a/videomass/vdms_threads/slideshow.py +++ b/videomass/vdms_threads/slideshow.py @@ -4,7 +4,7 @@ Porpose: FFmpeg long processing task Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.08.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_threads/volumedetect.py b/videomass/vdms_threads/volumedetect.py index af3b0c83..9edd55a8 100644 --- a/videomass/vdms_threads/volumedetect.py +++ b/videomass/vdms_threads/volumedetect.py @@ -4,7 +4,7 @@ Porpose: Get FFmpeg audio Peak level volume analyzes Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.23.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_utils/get_bmpfromsvg.py b/videomass/vdms_utils/get_bmpfromsvg.py index 19ee3d56..43c10b92 100644 --- a/videomass/vdms_utils/get_bmpfromsvg.py +++ b/videomass/vdms_utils/get_bmpfromsvg.py @@ -4,7 +4,7 @@ Porpose: return bmp image from a scalable vector graphic format (svg) Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.13.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_utils/presets_manager_utils.py b/videomass/vdms_utils/presets_manager_utils.py index 02d519f0..f9f4803d 100644 --- a/videomass/vdms_utils/presets_manager_utils.py +++ b/videomass/vdms_utils/presets_manager_utils.py @@ -4,7 +4,7 @@ Porpose: management of properties of the preset manager panel Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.11.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_utils/queue_utils.py b/videomass/vdms_utils/queue_utils.py index 5573e797..751d0d8f 100644 --- a/videomass/vdms_utils/queue_utils.py +++ b/videomass/vdms_utils/queue_utils.py @@ -4,7 +4,7 @@ Porpose: utils for queue managements Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Mar.23.2024 Code checker: flake8, pylint . @@ -102,7 +102,7 @@ def load_json_file_queue(newincoming=None): def extend_data_queue(parent, currentqueue: list, newqueue: list) -> list: """ This function is responsible for extending the items of - the `currentqueue` list while maintaining the same id. + the `currentqueue` list while maintaining the same ID. The result varies based on the index of a specific selection given by the `selected` object. """ diff --git a/videomass/vdms_utils/utils.py b/videomass/vdms_utils/utils.py index 6e32f2c1..f26ae9f4 100644 --- a/videomass/vdms_utils/utils.py +++ b/videomass/vdms_utils/utils.py @@ -4,7 +4,7 @@ Porpose: It groups useful functions that are called several times Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.05.2024 Code checker: flake8, pylint . diff --git a/videomass/vdms_ytdlp/formatcode.py b/videomass/vdms_ytdlp/formatcode.py index 8420546d..80055318 100644 --- a/videomass/vdms_ytdlp/formatcode.py +++ b/videomass/vdms_ytdlp/formatcode.py @@ -4,7 +4,7 @@ Porpose: user interface panel for format codes tasks Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.07.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_ytdlp/long_task_ytdlp.py b/videomass/vdms_ytdlp/long_task_ytdlp.py index 44841919..a9c55b03 100644 --- a/videomass/vdms_ytdlp/long_task_ytdlp.py +++ b/videomass/vdms_ytdlp/long_task_ytdlp.py @@ -4,7 +4,7 @@ Porpose: Console to show logging messages during processing Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: March.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_ytdlp/main_ytdlp.py b/videomass/vdms_ytdlp/main_ytdlp.py index 59b9b133..34b000d5 100644 --- a/videomass/vdms_ytdlp/main_ytdlp.py +++ b/videomass/vdms_ytdlp/main_ytdlp.py @@ -4,7 +4,7 @@ Porpose: window main frame for yt_dlp library Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.09.2024 Code checker: flake8, pylint @@ -34,6 +34,7 @@ from videomass.vdms_ytdlp.youtubedl_ui import Downloader from videomass.vdms_ytdlp.long_task_ytdlp import LogOut from videomass.vdms_io import io_tools +from videomass.vdms_io.checkup import check_destination_dir from videomass.vdms_sys.settings_manager import ConfigManager from videomass.vdms_ytdlp.ydl_preferences import Ytdlp_Options if wx.GetApp().appset['yt_dlp'] is True: @@ -607,6 +608,8 @@ def click_start(self, event): if not self.data_url: self.switch_text_import(self) return + if check_destination_dir(self.appdata['ydlp-outputdir']): + return self.ytDownloader.on_start() return # ------------------------------------------------------------------# diff --git a/videomass/vdms_ytdlp/playlist_indexing.py b/videomass/vdms_ytdlp/playlist_indexing.py index 942ef352..036e300f 100644 --- a/videomass/vdms_ytdlp/playlist_indexing.py +++ b/videomass/vdms_ytdlp/playlist_indexing.py @@ -4,7 +4,7 @@ Porpose: shows a dialog box for setting playlist indexing Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2022 Code checker: flake8, pylint diff --git a/videomass/vdms_ytdlp/subtitles_editor.py b/videomass/vdms_ytdlp/subtitles_editor.py index 6952062f..a41f9060 100644 --- a/videomass/vdms_ytdlp/subtitles_editor.py +++ b/videomass/vdms_ytdlp/subtitles_editor.py @@ -4,7 +4,7 @@ Porpose: shows a dialog box to setting preferred subtitles Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: July.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_ytdlp/textdrop.py b/videomass/vdms_ytdlp/textdrop.py index 98b838f2..abb82186 100644 --- a/videomass/vdms_ytdlp/textdrop.py +++ b/videomass/vdms_ytdlp/textdrop.py @@ -4,7 +4,7 @@ Porpose: Allows you to add text URLs Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Feb.23.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_ytdlp/ydl_downloader.py b/videomass/vdms_ytdlp/ydl_downloader.py index 9a293ca6..0e4415f0 100644 --- a/videomass/vdms_ytdlp/ydl_downloader.py +++ b/videomass/vdms_ytdlp/ydl_downloader.py @@ -4,7 +4,7 @@ Porpose: long processing task using yt_dlp python library Compatibility: Python3, wxPython4 Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.29.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_ytdlp/ydl_extractinfo.py b/videomass/vdms_ytdlp/ydl_extractinfo.py index 36507b21..0d42a114 100644 --- a/videomass/vdms_ytdlp/ydl_extractinfo.py +++ b/videomass/vdms_ytdlp/ydl_extractinfo.py @@ -4,7 +4,7 @@ Porpose: get informations data with youtube_dl Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: March.17.2023 Code checker: flake8, pylint diff --git a/videomass/vdms_ytdlp/ydl_mediainfo.py b/videomass/vdms_ytdlp/ydl_mediainfo.py index a261be55..89abc69a 100644 --- a/videomass/vdms_ytdlp/ydl_mediainfo.py +++ b/videomass/vdms_ytdlp/ydl_mediainfo.py @@ -4,7 +4,7 @@ Porpose: show media streams information through youtube-dl.extract_info Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.09.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_ytdlp/ydl_preferences.py b/videomass/vdms_ytdlp/ydl_preferences.py index 5f7c7fc6..a18e9f67 100644 --- a/videomass/vdms_ytdlp/ydl_preferences.py +++ b/videomass/vdms_ytdlp/ydl_preferences.py @@ -4,7 +4,7 @@ Porpose: YouTube Downloader setup dialog Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.13.2024 Code checker: flake8, pylint diff --git a/videomass/vdms_ytdlp/youtubedl_ui.py b/videomass/vdms_ytdlp/youtubedl_ui.py index dc2429e1..2da2831c 100644 --- a/videomass/vdms_ytdlp/youtubedl_ui.py +++ b/videomass/vdms_ytdlp/youtubedl_ui.py @@ -4,7 +4,7 @@ Porpose: youtube-dl user interface Compatibility: Python3, wxPython Phoenix Author: Gianluca Pernigotto -Copyleft - 2024 Gianluca Pernigotto +Copyleft - 2025 Gianluca Pernigotto license: GPL3 Rev: Apr.29.2024 Code checker: flake8, pylint