Projects
home:Kieltux:branches:Multimedia
qmp3gain
Sign Up
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Difference Between Revision 9 and
Multimedia
/
qmp3gain
View file
qmp3gain.changes
Changed
@@ -1,4 +1,15 @@ ------------------------------------------------------------------- +Thu May 7 19:10:47 UTC 2026 - Carsten Ziepke <kieltux@gmail.com> + +- Update to version 0.9.6 + * Feature: Sortable main table on columns + * Feature: Load/Save Analysis results may contain CSV header row + and hidden fields +- Changes in version 0.9.5 + * Feature: Auto screen scale factor option + * Feature: Add 32bit support + +------------------------------------------------------------------- Fri Jan 26 15:30:35 UTC 2024 - Carsten Ziepke <kieltux@gmail.com> - Update to version 0.9.4
View file
qmp3gain.spec
Changed
@@ -1,7 +1,7 @@ # # spec file for package qmp3gain # -# Copyright (c) 2024 Packman Team <packman@links2linux.de> +# Copyright (c) 2026 Packman Team <packman@links2linux.de> # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: qmp3gain -Version: 0.9.4 +Version: 0.9.6 Release: 0 Summary: Qt frontend for mp3gain License: GPL-2.0-or-later
View file
_service
Changed
@@ -1,7 +1,7 @@ <services> <service name="tar_scm" mode="disabled"> <param name="filename">qmp3gain</param> - <param name="revision">8952ec2f8a7b837b29c05171bf501418bda9038d</param> + <param name="revision">9dc09b7b31549d563c73632c895848b322079dff</param> <param name="scm">git</param> <param name="submodules">disable</param> <param name="url">https://git.code.sf.net/p/qmp3gain/code</param>
View file
qmp3gain-0.9.4.tar.xz/.gitignore -> qmp3gain-0.9.6.tar.xz/.gitignore
Changed
@@ -13,6 +13,7 @@ # unwanted project folders /bin /dist +/build # Qt-es object_script.*.Release
View file
qmp3gain-0.9.4.tar.xz/CHANGES.md -> qmp3gain-0.9.6.tar.xz/CHANGES.md
Changed
@@ -1,5 +1,10 @@ ## Changes +### Version 0.9.5 + +* Feature: Auto screen scale factor option +* Feature: Add 32bit support + ### Version 0.9.4 * Feature: Column widths of tableView are stored in config
View file
qmp3gain-0.9.4.tar.xz/INSTALL.md -> qmp3gain-0.9.6.tar.xz/INSTALL.md
Changed
@@ -4,8 +4,8 @@ Download latest AppImage file of QMP3Gain. Make it executable and run. - chmod u+x qmp3gain-0.9.4-linux-x64.AppImage - ./qmp3gain-0.9.4-linux-x64.AppImage + chmod u+x qmp3gain-0.9.6-linux-x64.AppImage + ./qmp3gain-0.9.6-linux-x64.AppImage Linux installer does not contain required mp3gain backend, which must be installed separately. Unless you know how to install it, check the verbose Linux guide(#verbose-linux-guide). @@ -24,9 +24,9 @@ Don't be surprised if the build runs into failure. Probably some dependencies are missing for the successful compilation. In this case check the proper verbose guide out! -### Verbose guide on Linux (Ubuntu 22.04) {#verbose-linux-guide} +### Verbose guide on Linux (Ubuntu 24.04) {#verbose-linux-guide} -1. Install QT SDK (at least v5.15.2 is required). +1. Install QT SDK (at least v5.15.13 is required). Check it out on https://www.qt.io and https://wiki.qt.io/Install_Qt_5_on_Ubuntu for more info. @@ -115,27 +115,36 @@ ### Verbose guide on Windows (10) -1. Install QT SDK (at least v5.15.2 is required) +1. Install QT SDK (at least v5.15.13 is required but v6 is not supported yet) - It can be installed from https://www.qt.io/download-open-source using online installer. - - After QT installation, usually I make a symbolic link from `mingw32-make.exe` file to `make.exe` to ease my work, eg. + It cannot be installed from https://www.qt.io/download-open-source using online installer because v5.15.2 is the last version there. + + Another option is to download QT source from the following link and compile it for yourself + https://download.qt.io/archive/qt/5.15/5.15.13/single/qt-everywhere-opensource-src-5.15.13.zip + + Compiling QT needs installation of Build Tools / MinGW 8.1.0 64-bit (and MinGW 8.1.0 32-bit) package(s) from online installer as requirement. - cd c:\ProgramFiles\Qt\Qt5.15.2\Tools\mingw810_64\bin + Usually I make a symbolic link from `mingw32-make.exe` file to `make.exe` to ease my work, eg. + cd c:\ProgramFiles\Qt\Tools\mingw810_64\bin mklink make.exe mingw32-make.exe - - If you already have a make executable from another developer tool, forget the symbolic link and use original `mingw32-make` instead of "make" later.) + + To build QT, use the following configure.bat parameters: + -opengl desktop -platform win32-g++ -skip webengine -prefix ..\install -release -accessibility -no-icu -no-qml-debug -nomake examples -nomake tests -opensource -confirm-license + + Run `make -j 4` and `make install`. QT will be installed into the folder defined by prefix configure parameter. 2. Install Qt Installer Framework If you want to create installer later install the framework from https://download.qt.io/official_releases/qt-installer-framework/ + + You may use binary version at once however I downloaded the source from https://download.qt.io/official_releases/qt-installer-framework/4.6.1/installer-framework-everywhere-src-4.6.1.zip and compiled it myself. 3. Building the application Launch a "Qt command prompt" from the new menu item, and in the downloaded qmp3gain build folder use the following commands: qmake - make -j + make -j 4 4. Install mp3gain backend
View file
qmp3gain-0.9.4.tar.xz/README.md -> qmp3gain-0.9.6.tar.xz/README.md
Changed
@@ -9,3 +9,15 @@ ## Links * Project page(https://sourceforge.net/projects/qmp3gain/) +## Create a ticket +If you want to create a bug ticket, you may help a lot the author to analyze the issue attaching the application log in your ticket. +To get the log file you have to configure the application at first. Please follow the next steps inside the application: +* Inside "Options/Advanced..." set "Back end log depth" and "Trace log depth" to maximum values +* Check in "Options/Logs/Panel" +* Make sure that "Back end" and "Trace" are checked in inside the panel +* Clear the content of the panel using "Clear" panel button +* Reproduce the issue in the application +* Copy the content of the panel into the clipboard +* Save the clipboar content into a new file and attach it into your new ticket. +Try to generate minimal log. For example if you have the same issue with more audio files, reproduce it only on a single file if it is feasible. +
View file
qmp3gain-0.9.4.tar.xz/config.pri -> qmp3gain-0.9.6.tar.xz/config.pri
Changed
@@ -1,11 +1,11 @@ unix|win32: else:error(Only Unix and Windows platforms are supported. Create a new ticket if you want Mac support.) -!versionAtLeast(QT_VERSION, 5.15.2):error("Use at least Qt version 5.15.2") +!versionAtLeast(QT_VERSION, 5.15.13):error("Use at least Qt version 5.15.13") # application version APP_MAJOR_VER = 0 APP_MINOR_VER = 9 -APP_SUBMINOR_VER = 4 +APP_SUBMINOR_VER = 5 APP_VERSION = "$${APP_MAJOR_VER}.$${APP_MINOR_VER}.$${APP_SUBMINOR_VER}" ROOT = $$shell_path($$PWD) # absolute path containing this file
View file
qmp3gain-0.9.4.tar.xz/docker-compose.yml -> qmp3gain-0.9.6.tar.xz/docker-compose.yml
Changed
@@ -23,6 +23,27 @@ - /run/user/${USER_ID:-0}/pulse/native:/run/user/${USER_ID:-0}/pulse/native - .:/home/zematix/qmp3gain + build32: + privileged: true + network_mode: host + build: + context: . + dockerfile: docker/build32/Dockerfile + args: + USER_ID: ${USER_ID:-0} + GROUP_ID: ${GROUP_ID:-0} + container_name: qmp3gain.build32 + image: qmp3gain.build32 + stdin_open: true # docker run -i + tty: true # docker run -t + environment: + DISPLAY: + PULSE_SERVER: unix:/run/user/${USER_ID:-0}/pulse/native + volumes: + - $HOME/.Xauthority:/root/.Xauthority + - /run/user/${USER_ID:-0}/pulse/native:/run/user/${USER_ID:-0}/pulse/native + - .:/home/zematix/qmp3gain + test: privileged: true network_mode: host @@ -43,3 +64,24 @@ - $HOME/.Xauthority:/root/.Xauthority - /run/user/${USER_ID:-0}/pulse/native:/run/user/${USER_ID:-0}/pulse/native - .:/home/zematix/qmp3gain + + test32: + privileged: true + network_mode: host + build: + context: . + dockerfile: docker/test32/Dockerfile + args: + USER_ID: ${USER_ID:-0} + GROUP_ID: ${GROUP_ID:-0} + container_name: qmp3gain.test32 + image: qmp3gain.test32 + stdin_open: true # docker run -i + tty: true # docker run -t + environment: + DISPLAY: + PULSE_SERVER: unix:/run/user/${USER_ID:-0}/pulse/native + volumes: + - $HOME/.Xauthority:/root/.Xauthority + - /run/user/${USER_ID:-0}/pulse/native:/run/user/${USER_ID:-0}/pulse/native + - .:/home/zematix/qmp3gain
View file
qmp3gain-0.9.4.tar.xz/docker/README.md -> qmp3gain-0.9.6.tar.xz/docker/README.md
Changed
@@ -2,17 +2,21 @@ ### Introduction -There are 2 docker images/containers which may help the build and test processes on Linux. +There are 4 docker images/containers which may help the build and test processes on Linux. -* qmp3gain.build - ubuntu image contains Qt5 and mp3gain backend -* qmp3gain.test - ubuntu image contains only mp3gain backend +* qmp3gain.build - ubuntu image contains Qt5 and mp3gain backend (64 bit) +* qmp3gain.build32 - ubuntu image contains Qt5 and mp3gain backend (32 bit) +* qmp3gain.test - ubuntu image contains only mp3gain backend (64 bit) +* qmp3gain.test32 - ubuntu image contains only mp3gain backend (32 bit) However in docker-compose their service names are shortened to * build +* build32 * test +* test32 -Both images based on the oldest still-supported Ubuntu LTS version. If the application is built on that, the resulting binaries should be able to run on newer (but not older) systems (Ubuntu and other distributions). If compatibilty with as many target systems as possible is not an issue for you, for example building the application in your up-to-date local system on your own, it can be also feasible without the docker containers. +All images based on the oldest still-supported Ubuntu LTS version. If the application is built on that, the resulting binaries should be able to run on newer (but not older) systems (Ubuntu and other distributions). If compatibilty with as many target systems as possible is not an issue for you, for example building the application in your up-to-date local system on your own, it can be also feasible without the docker containers. ### Usage @@ -49,4 +53,3 @@ docker-compose build and start the containers in detached mode again if you want. -
View file
qmp3gain-0.9.4.tar.xz/docker/build/Dockerfile -> qmp3gain-0.9.6.tar.xz/docker/build/Dockerfile
Changed
@@ -1,8 +1,8 @@ ## Build image creator of qmap3gain app -FROM ubuntu:18.04 +FROM ubuntu:20.04 ENV DEBIAN_FRONTEND=noninteractive -ENV PATH="$PATH:/usr/local/Qt-5.15.3/bin" -ENV LD_LIBRARY_PATH="/usr/local/Qt-5.15.3/lib:${LD_LIBRARY_PATH}" +ENV PATH="$PATH:/usr/local/Qt-5.15.13/bin" +ENV LD_LIBRARY_PATH="/usr/local/Qt-5.15.13/lib:${LD_LIBRARY_PATH}" ## values should be overwitten in local .env file ARG USER_ID=1001 @@ -17,15 +17,15 @@ apt-get install -y sudo fuse mp3gain wget &&\ apt-get install -y build-essential libgl1-mesa-dev libfontconfig1-dev libfreetype6-dev libx11-dev libx11-xcb-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libxcb-cursor-dev libxcb-glx0-dev libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev libxcb-util-dev libxcb-xinerama0-dev libxcb-xkb-dev libxkbcommon-dev libxkbcommon-x11-dev &&\ apt-get install -y libasound2-dev libcups2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-good gstreamer1.0-plugins-bad &&\ - wget -q -c "https://download.qt.io/archive/qt/5.15/5.15.3/single/qt-everywhere-opensource-src-5.15.3.tar.xz" -O /tmp/qt-everywhere-opensource-src-5.15.3.tar.xz &&\ + wget -q -c "https://download.qt.io/archive/qt/5.15/5.15.13/single/qt-everywhere-opensource-src-5.15.13.tar.xz" -O /tmp/qt-everywhere-opensource-src-5.15.13.tar.xz &&\ cd /tmp &&\ - tar -xf qt-everywhere-opensource-src-5.15.3.tar.xz &&\ - rm -f qt-everywhere-opensource-src-5.15.3.tar.xz &&\ - cd qt-everywhere-src-5.15.3 &&\ + tar -xf qt-everywhere-opensource-src-5.15.13.tar.xz &&\ + rm -f qt-everywhere-opensource-src-5.15.13.tar.xz &&\ + cd qt-everywhere-src-5.15.13 &&\ ./configure -opensource -confirm-license -release -no-opengl -nomake examples -nomake tests &&\ make -j $(nproc) &&\ make install &&\ - rm -rf /tmp/qt-everywhere-src-5.15.3 &&\ + rm -rf /tmp/qt-everywhere-src-5.15.13 &&\ wget -q -c "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage" -O /usr/local/bin/linuxdeploy &&\ chmod a+x /usr/local/bin/linuxdeploy &&\ wget -q -c "https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage" -O /usr/local/bin/linuxdeploy-plugin-qt &&\
View file
qmp3gain-0.9.6.tar.xz/docker/build32
Added
+(directory)
View file
qmp3gain-0.9.6.tar.xz/docker/build32/Dockerfile
Added
@@ -0,0 +1,60 @@ +## Build image creator of qmap3gain app +FROM i386/ubuntu:18.04 +ENV DEBIAN_FRONTEND=noninteractive +ENV PATH="$PATH:/usr/local/Qt-5.15.13/bin" +ENV LD_LIBRARY_PATH="/usr/local/Qt-5.15.13/lib:${LD_LIBRARY_PATH}" + +## values should be overwitten in local .env file +ARG USER_ID=1001 +ARG GROUP_ID=100 + +## install fuse (for creating qmp3gain AppImage), mp3gain, gstreamer and qt5 +RUN set -x; \ + apt-get update &&\ + apt-get install -y software-properties-common &&\ + add-apt-repository -y ppa:sicklylife/qtgain &&\ + apt-get update &&\ + apt-get install -y sudo fuse mp3gain wget &&\ + apt-get install -y build-essential libgl1-mesa-dev libfontconfig1-dev libfreetype6-dev libx11-dev libx11-xcb-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libxcb-cursor-dev libxcb-glx0-dev libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev libxcb-util-dev libxcb-xinerama0-dev libxcb-xkb-dev libxkbcommon-dev libxkbcommon-x11-dev &&\ + apt-get install -y libasound2-dev libcups2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-good gstreamer1.0-plugins-bad &&\ + ln -s /usr/lib/i386-linux-gnu/gstreamer-1.0 /usr/lib/gstreamer-1.0 &&\ + wget -q -c "https://download.qt.io/archive/qt/5.15/5.15.13/single/qt-everywhere-opensource-src-5.15.13.tar.xz" -O /tmp/qt-everywhere-opensource-src-5.15.13.tar.xz &&\ + cd /tmp &&\ + tar -xf qt-everywhere-opensource-src-5.15.13.tar.xz &&\ + rm -f qt-everywhere-opensource-src-5.15.13.tar.xz &&\ + cd qt-everywhere-src-5.15.13 &&\ + ./configure -opensource -confirm-license -release -no-opengl -nomake examples -nomake tests &&\ + make -j $(nproc) &&\ + make install &&\ + rm -rf /tmp/qt-everywhere-src-5.15.13 &&\ + wget -q -c "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-i386.AppImage" -O /usr/local/bin/linuxdeploy &&\ + chmod a+x /usr/local/bin/linuxdeploy &&\ + wget -q -c "https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-i386.AppImage" -O /usr/local/bin/linuxdeploy-plugin-qt &&\ + chmod a+x /usr/local/bin/linuxdeploy-plugin-qt &&\ + wget -q -c "https://raw.githubusercontent.com/linuxdeploy/linuxdeploy-plugin-gstreamer/master/linuxdeploy-plugin-gstreamer.sh" -O /usr/local/bin/linuxdeploy-plugin-gstreamer.sh &&\ + chmod a+x /usr/local/bin/linuxdeploy-plugin-gstreamer.sh &&\ + apt-get install -y patchelf &&\ + rm -rf /var/lib/apt/lists/* + +## create working user and its group +RUN set -x; \ + if ${USER_ID:-0} -ne 0 && ${GROUP_ID:-0} -ne 0 ; then \ + GROUP_NAME=`getent group ${GROUP_ID} | awk -F':' '{print $1}'` &&\ + echo ${GROUP_NAME} &&\ + if -n "${GROUP_NAME}" ; then \ + groupdel ${GROUP_NAME}; \ + fi &&\ + groupadd -f -g ${GROUP_ID} zematix &&\ + useradd -l -u ${USER_ID} -g zematix zematix &&\ + echo "zematix:zematix" | chpasswd && adduser zematix sudo && adduser zematix audio &&\ + install -d -m 0755 -o zematix -g zematix /home/zematix \ + ;fi + +## create qmp3gain folder +RUN set -x; \ + mkdir -p /home/zematix/qmp3gain && \ + chown -hR zematix:zematix /home/zematix/qmp3gain + +USER zematix + +WORKDIR /home/zematix/qmp3gain
View file
qmp3gain-0.9.4.tar.xz/docker/test/Dockerfile -> qmp3gain-0.9.6.tar.xz/docker/test/Dockerfile
Changed
@@ -1,5 +1,5 @@ ## Test image creator of qmp3gain app -FROM ubuntu:18.04 +FROM ubuntu:20.04 ENV DEBIAN_FRONTEND=noninteractive ## values should be overwitten in local .env file
View file
qmp3gain-0.9.6.tar.xz/docker/test32
Added
+(directory)
View file
qmp3gain-0.9.6.tar.xz/docker/test32/Dockerfile
Added
@@ -0,0 +1,40 @@ +## Test image creator of qmp3gain app +FROM i386/ubuntu:18.04 +ENV DEBIAN_FRONTEND=noninteractive + +## values should be overwitten in local .env file +ARG USER_ID=1001 +ARG GROUP_ID=100 + +## install fuse (for running AppImage), mp3gain and some essential application dependencies +RUN set -x; \ + apt-get update &&\ + apt-get install -y software-properties-common &&\ + add-apt-repository -y ppa:sicklylife/qtgain &&\ + apt-get update &&\ + apt-get install -y sudo fuse mp3gain &&\ + apt-get install -y libgl1 libharfbuzz0b libfontconfig1 libsm6 pulseaudio &&\ + rm -rf /var/lib/apt/lists/* + +## create working user and its group +RUN set -x; \ + if ${USER_ID:-0} -ne 0 && ${GROUP_ID:-0} -ne 0 ; then \ + GROUP_NAME=`getent group ${GROUP_ID} | awk -F':' '{print $1}'` &&\ + echo ${GROUP_NAME} &&\ + if -n "${GROUP_NAME}" ; then \ + groupdel ${GROUP_NAME}; \ + fi &&\ + groupadd -f -g ${GROUP_ID} zematix &&\ + useradd -l -u ${USER_ID} -g zematix zematix &&\ + echo "zematix:zematix" | chpasswd && adduser zematix sudo && adduser zematix audio &&\ + install -d -m 0755 -o zematix -g zematix /home/zematix \ + ;fi + +## create qmp3gain folder +RUN set -x; \ + mkdir -p /home/zematix/qmp3gain && \ + chown -hR zematix:zematix /home/zematix/qmp3gain + +USER zematix + +WORKDIR /home/zematix/qmp3gain
View file
qmp3gain-0.9.6.tar.xz/help/html/Analysis_results.htm
Added
@@ -0,0 +1,25 @@ +<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<html> +<head> +<title>Analysis results</title> +<link rel=StyleSheet href=NewDefault.css> +</head> +<body> + +<h3>Analysis results</h3> + +<p> +<hr> +You can configure the functionality of <b>Load Analysis results</b> and <b>Save Analysis results</b> located in <a href="File_menu.htm">File menu</a>. +</p> +<p> +Here are the options in the "Options - Analysis results" submenu: +</p> +<ul> +<li><b>CSV header usage</b>: If checked, then during Load/Save Analysis results from/into M3G files, CVS header is presumed/generated. Otherwise no CSV header is used.</li> +<li><b>All columns included</b>: If checked, then all columns are presumed/generated at Load/Save Analysis results including the hidden ones.</li> +</ul> + +</body> +</html>
View file
qmp3gain-0.9.4.tar.xz/help/html/MP3Gain.htm -> qmp3gain-0.9.6.tar.xz/help/html/MP3Gain.htm
Changed
@@ -14,11 +14,11 @@ <center> <h2 style="text-align: center">QMP3Gain</h2> -<h4>version 0.9.4</h4> +<h4>version 0.9.5</h4> <h4><img src="MP3Gain.gif"></h4> -<h4>Copyright © 2009-2023 by Zsolt Branyiczky</h4> +<h4>Copyright © 2009-2025 by Zsolt Branyiczky</h4> </body>
View file
qmp3gain-0.9.4.tar.xz/help/html/Options_menu.htm -> qmp3gain-0.9.6.tar.xz/help/html/Options_menu.htm
Changed
@@ -65,16 +65,28 @@ </tr> <tr> +<td>Auto screen scale factor</td> +<td>If checked, then application displays UI elements using scale factor set in the operation system. Activate it if the application UI is too tiny on your display. Restart the application after configuration.</td> +</tr> + +<tr> +<td>Analysis results</td> +<td> +See <a href="Analysis_results.htm">Analysis results</a> help page +</td> +</tr> + +<tr> <td>Tags</td> <td> -See the <a href="Tags.htm">Tags</a> help page +See <a href="Tags.htm">Tags</a> help page </td> </tr> <tr> <td>Logs</td> <td> -See the <a href="Logs.htm">Logs</a> help page +See <a href="Logs.htm">Logs</a> help page </td> </tr>
View file
qmp3gain-0.9.4.tar.xz/help/qmp3gain.qhp -> qmp3gain-0.9.6.tar.xz/help/qmp3gain.qhp
Changed
@@ -1,14 +1,14 @@ <?xml version="1.0" encoding="UTF-8"?> <QtHelpProject version="1.0"> - <namespace>zematix.hu.qmp3gain.0.9.4</namespace> + <namespace>zematix.hu.qmp3gain.0.9.5</namespace> <virtualFolder>help</virtualFolder> - <customFilter name="QMP3Gain 0.9.4"> + <customFilter name="QMP3Gain 0.9.5"> <filterAttribute>qmp3gain</filterAttribute> - <filterAttribute>0.9.4</filterAttribute> + <filterAttribute>0.9.5</filterAttribute> </customFilter> <filterSection> <filterAttribute>qmp3gain</filterAttribute> - <filterAttribute>0.9.4</filterAttribute> + <filterAttribute>0.9.5</filterAttribute> <toc> <section title="QMP3Gain Help" ref="html/MP3Gain.htm"> <section title="Overview" ref="html/Overview.htm"/> @@ -54,6 +54,7 @@ <keyword name="Constant Gain Change" ref="html/Modify_Gain_menu.htm#ConstantGain"/> <keyword name="Options menu" ref="html/Options_menu.htm"/> <keyword name="Maximizing" ref="html/Options_menu.htm#Maximizing"/> + <keyword name="Analysis results" ref="html/Analysis_results.htm"/> <keyword name="Logs" ref="html/Logs.htm"/> <keyword name="Language menu" ref="html/Language_menu.htm"/> <keyword name="Help menu" ref="html/Help_menu.htm"/> @@ -111,6 +112,7 @@ <file>html/Target_Volume.htm</file> <file>html/File_List.htm</file> <file>html/Status.htm</file> + <file>html/Analysis_results.htm</file> <file>html/Logs.htm</file> <file>html/Log_File.png</file> <file>html/Log_Panel.htm</file>
View file
qmp3gain-0.9.4.tar.xz/installer/config/config.xml -> qmp3gain-0.9.6.tar.xz/installer/config/config.xml
Changed
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <Installer> <Name>QMP3Gain</Name> - <Version>0.9.4</Version> + <Version>0.9.6</Version> <Title>QMP3Gain</Title> <Publisher>Zematix</Publisher> <ProductUrl>https://sourceforge.net/projects/qmp3gain/</ProductUrl>
View file
qmp3gain-0.9.4.tar.xz/installer/installer.pri -> qmp3gain-0.9.6.tar.xz/installer/installer.pri
Changed
@@ -28,10 +28,12 @@ mkdir -p $${DEPLOYDIR}/usr/share/$${TARGET}/translations &&\ cp $$ROOT/translations/qmp3gain_*.qm $${DEPLOYDIR}/usr/share/$${TARGET}/translations &&\ linuxdeploy --appdir $${DEPLOYDIR} -i $$ROOT/resources/linux/icons/hicolor/256x256/$${TARGET}.png --icon-filename=qmp3gain -d $$ROOT/resources/linux/applications/$${TARGET}.desktop --plugin qt --plugin gstreamer --output appimage &&\ - mv $$ROOT/QMP3Gain-x86_64.AppImage $$ROOT/bin/$${TARGET}-$${APP_VERSION}-linux-x64.AppImage + if -f $$ROOT/QMP3Gain-x86_64.AppImage ; then mv $$ROOT/QMP3Gain-x86_64.AppImage $$ROOT/bin/$${TARGET}-$${APP_VERSION}-linux-x64.AppImage; fi &&\ + if -f $$ROOT/QMP3Gain-i686.AppImage ; then mv $$ROOT/QMP3Gain-i686.AppImage $$ROOT/bin/$${TARGET}-$${APP_VERSION}-linux-i386.AppImage; fi } win32 { - deploy.commands = @if not exist $${DESTDIR}\\mp3gain.exe ( echo "Backend mp3gain.exe must copied into $$DESTDIR" ) $$escape_expand(\n\t) \ + deploy.commands = \ + @if not exist $${DESTDIR}\\mp3gain.exe ( echo "Backend mp3gain.exe must copied into $$DESTDIR" ) $$escape_expand(\n\t) \ @if not exist $${DESTDIR}\\mp3gain.exe ( exit 1 ) $$escape_expand(\n\t) \ if exist $${DEPLOYDIR} ( rmdir /s /q $${DEPLOYDIR} ) $$escape_expand(\n\t) \ mkdir $${DEPLOYDIR}\main\data & \ @@ -47,7 +49,8 @@ copy $$ROOT\translations\qmp3gain_*.qm $${DEPLOYDIR}\\main\\data\\translations & \ xcopy /s /y $$INSTALLERDIR\packages\main\meta $${DEPLOYDIR}\main\meta\ & \ lrelease $${DEPLOYDIR}\main\meta\hu.ts & \ - binarycreator --offline-only -c $${INSTALLERDIR}\config\config.xml -p $${DEPLOYDIR} $${DESTDIR}\qmp3gain-$${APP_VERSION}-win-x64-installer.exe + @if "$$QMAKE_HOST.arch" == "x86_64" ( binarycreator --offline-only -c $${INSTALLERDIR}\config\config.xml -p $${DEPLOYDIR} $${DESTDIR}\qmp3gain-$${APP_VERSION}-win-x64-installer.exe ) $$escape_expand(\n\t) \ + @if "$$QMAKE_HOST.arch" == "x86" ( binarycreator --offline-only -c $${INSTALLERDIR}\config\config.xml -p $${DEPLOYDIR} $${DESTDIR}\qmp3gain-$${APP_VERSION}-win-i386-installer.exe ) $$escape_expand(\n\t) } QMAKE_EXTRA_TARGETS += deploy
View file
qmp3gain-0.9.4.tar.xz/installer/packages/main/meta/package.xml -> qmp3gain-0.9.6.tar.xz/installer/packages/main/meta/package.xml
Changed
@@ -5,9 +5,9 @@ <Description>Install QMP3Gain application. It contains a single component.</Description> <Description xml:lang="hu">QMP3Gain alkalmazás telepítése. Mindössze egyetlen komponenst tartalmaz.</Description> <Description xml:lang="it">Installa l'applicazione QMP3Gain. Contiene un solo componente.</Description> - <Version>0.9.4</Version> + <Version>0.9.5</Version> <Name>main</Name> - <ReleaseDate>2023-12-27</ReleaseDate> + <ReleaseDate>2025-11-01</ReleaseDate> <ForcedInstallation>true</ForcedInstallation> <Licenses> <License name="GNU General Public License" file="LICENSE.txt" />
View file
qmp3gain-0.9.4.tar.xz/src/aboutdialog.ui -> qmp3gain-0.9.6.tar.xz/src/aboutdialog.ui
Changed
@@ -7,7 +7,7 @@ <x>0</x> <y>0</y> <width>375</width> - <height>461</height> + <height>480</height> </rect> </property> <property name="windowTitle"> @@ -136,7 +136,6 @@ <widget class="QLabel" name="label_7"> <property name="font"> <font> - <weight>50</weight> <bold>false</bold> </font> </property> @@ -175,7 +174,6 @@ <widget class="QLabel" name="label_9"> <property name="font"> <font> - <weight>50</weight> <bold>false</bold> </font> </property> @@ -214,7 +212,6 @@ <widget class="QLabel" name="label_11"> <property name="font"> <font> - <weight>50</weight> <bold>false</bold> </font> </property> @@ -253,7 +250,6 @@ <widget class="QLabel" name="label_13"> <property name="font"> <font> - <weight>50</weight> <bold>false</bold> </font> </property> @@ -299,7 +295,6 @@ <widget class="QLabel" name="label_14"> <property name="font"> <font> - <weight>50</weight> <bold>false</bold> </font> </property>
View file
qmp3gain-0.9.4.tar.xz/src/main.cpp -> qmp3gain-0.9.6.tar.xz/src/main.cpp
Changed
@@ -5,11 +5,25 @@ int main(int argc, char *argv) { + // actionAuto_screen_scale_factor setting must be applied before QApplication (CoreApplication) is created + QString actionAuto_screen_scale_factor = QString::fromUtf8("actionAuto_screen_scale_factor"); + QSettings *settings = new QSettings(APP_COMPANY, APP_TITLE); + bool defaultChecked = QCoreApplication::testAttribute(Qt::AA_EnableHighDpiScaling); + bool checked = settings->value(actionAuto_screen_scale_factor, defaultChecked).toBool(); + if (checked){ + QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); + } + else{ + QCoreApplication::setAttribute(Qt::AA_DisableHighDpiScaling); + } + settings->setValue(actionAuto_screen_scale_factor, checked); + QApplication app(argc, argv); QStringList argumentList = app.arguments(); argumentList.removeFirst(); if (!argumentList.isEmpty()) return 0; + MainWindow mainWin; app.setApplicationName(mainWin.getAppTitle()); mainWin.switchLanguage();
View file
qmp3gain-0.9.4.tar.xz/src/mainwindow.cpp -> qmp3gain-0.9.6.tar.xz/src/mainwindow.cpp
Changed
@@ -26,7 +26,8 @@ #endif // init const static variables -const QString MainWindow::appTitle = "QMP3Gain"; +const QString MainWindow::appTitle = APP_TITLE; +const QString MainWindow::appCompany = APP_COMPANY; const QString MainWindow::appVersion = QString() + APP_MAJOR_VER + "." + APP_MINOR_VER + "." + APP_SUBMINOR_VER; const QString MainWindow::backEndFixed = "mp3gain"; // only used if backEndFileName is empty, see this->getBackEnd() const double MainWindow::defaultNormalTargetValue = 89.0; @@ -68,6 +69,10 @@ actions << actionPreserve_file_date_time; actions << actionNo_check_for_Layer_I_or_II; actions << actionDon_t_clip_when_doing_track_gain; + actions << actionAuto_screen_scale_factor; + // Options/Analysis results + actions << actionCSV_header_usage; + actions << actionAll_columns_included; // Options/Tags actions << actionIgnore_do_not_read_or_write_tags; actions << actionRe_calculate_do_not_read_tags; @@ -106,7 +111,7 @@ logOutputTypes.insert(actionLogBackend, checkBox_logBackend); // persist parameters - settings = new QSettings("Zematix", appTitle); + settings = new QSettings(appCompany, appTitle); readSettings(); // manage backEndVersion and backEndFileName @@ -814,7 +819,10 @@ // action elements foreach (QAction* action, actions) { + bool isFromreadSettings = true; + action->setData(QVariant(isFromreadSettings)); action->setChecked(settings->value(action->objectName(), action->isChecked()).toBool()); + action->setData(QVariant()); } // log checkboxes @@ -2778,6 +2786,7 @@ bool isNoToAll_FileLastModified = false; bool isYesToAll_FileSize = false; bool isNoToAll_FileSize = false; + bool isFirstM3GLine = true; while ( (!isXML && !inFileMain.atEnd()) || (isXML && !fileElement.isNull()) ) { bool isAnalysisIgnored = false; @@ -2794,6 +2803,12 @@ if (!isXML) { QString line = inFileMain.readLine(); + if (isFirstM3GLine) { + isFirstM3GLine = false; + if (actionCSV_header_usage->isChecked()) { + continue; // while - skip first header line + } + } QStringList fields = line.split(','); if (fields.size()!=7) throw(-1); @@ -2978,6 +2993,7 @@ } // while + refreshMenu(); throw(0); } catch (int e){ @@ -3005,8 +3021,32 @@ QTextStream out(&fileMain); QModelIndexList indices = getModelIndices(); - if (isXML) + if (isXML) { out << "<root>" << Qt::endl; + } + else if (actionCSV_header_usage->isChecked()) { + out << "\"Path\"" << ","; + out << "\"File\"" << ","; + out << "\"Last modified\"" << ","; + out << "\"Size\"" << ","; + out << "\"Max Amplitude\"" << ","; + out << "\"dBGain\"" << ","; + out << "\"Album dBGain\""; + if (actionAll_columns_included->isChecked()) { + out << ","; + out << "\"Volume\"" << ","; + out << "\"clipping\"" << ","; + out << "\"Track Gain\"" << ","; + out << "\"clip(Track)\"" << ","; + out << "\"Max Noclip Gain\"" << ","; + out << "\"Album Volume\"" << ","; + out << "\"Album Max Amplitude\"" << ","; + out << "\"Album Gain\"" << ","; + out << "\"clip(Album)\""; + } + out << Qt::endl; + } + foreach(QModelIndex index, indices) { int row = model->itemFromIndex(index)->row(); QStandardItem *item = 0; @@ -3019,15 +3059,21 @@ if (isXML) out << "\t\t<path>" << item->text().toHtmlEscaped() << "</path>" << Qt::endl; else - out << "\"" << item->text() << "\"" << ","; + out << "\"" << item->text() << "\""; } + + if (!isXML) + out << ","; item = getItem(row, "File"); if (item){ if (isXML) out << "\t\t<file>" << item->text().toHtmlEscaped() << "</file>" << Qt::endl; else - out << "\"" << item->text() << "\"" << ","; + out << "\"" << item->text() << "\""; } + + if (!isXML) + out << ","; item = getItem(row, "Path/File"); if (item) { QFileInfo fi(item->text()); @@ -3035,12 +3081,17 @@ if (isXML) out << "\t\t<file_last_modified>" << dateTime.toString("yyyy-MM-dd hh:mm:ss").toHtmlEscaped() << "</file_last_modified>" << Qt::endl; else - out << "#" << dateTime.toString("yyyy-MM-dd hh:mm:ss") << "#" << ","; + out << "#" << dateTime.toString("yyyy-MM-dd hh:mm:ss") << "#"; if (isXML) out << "\t\t<file_size>" << fi.size() << "</file_size>" << Qt::endl; - else - out << fi.size() << ","; + else { + out << ","; + out << fi.size(); + } } + + if (!isXML) + out << ","; item = getItem(row, "Max Amplitude"); if (item){ double maxAmplitude = item->data().toDouble(); @@ -3048,8 +3099,11 @@ if (isXML) out << "\t\t<max_amplitude>" << maxAmplitudeStr.toHtmlEscaped() << "</max_amplitude>" << Qt::endl; else - out << maxAmplitudeStr << ","; + out << maxAmplitudeStr; } + + if (!isXML) + out << ","; item = getItem(row, "dBGain"); if (item){ double dBGain = item->data().toDouble(); @@ -3057,30 +3111,141 @@ if (isXML) out << "\t\t<db_gain>" << dBGainStr.toHtmlEscaped() << "</db_gain>" << Qt::endl; else - out << dBGainStr << ","; + out << dBGainStr; } + + if (!isXML) + out << ","; item = getItem(row, "Album dBGain"); if (item){ - double AlbumdBGain = item->data().toDouble(); - QString AlbumdBGainStr = QString("%1").arg(AlbumdBGain, 0, 'f', 3); + double albumdBGain = item->data().toDouble(); + QString albumdBGainStr = QString("%1").arg(albumdBGain, 0, 'f', 3); if (isXML) - out << "\t\t<album_db_gain>" << AlbumdBGainStr.toHtmlEscaped() << "</album_db_gain>" << Qt::endl; + out << "\t\t<album_db_gain>" << albumdBGainStr.toHtmlEscaped() << "</album_db_gain>" << Qt::endl; else - out << AlbumdBGainStr; + out << albumdBGainStr; } - if (isXML) + if (actionAll_columns_included->isChecked()) { + if (!isXML) + out << ","; + item = getItem(row, "Volume"); + if (item){ + double volume = item->data().toDouble(); + QString volumeStr = QString("%1").arg(volume, 0, 'f', 3); + if (isXML) + out << "\t\t<volume>" << volumeStr.toHtmlEscaped() << "</volume>" << Qt::endl; + else { + out << volumeStr; + } + } +
View file
qmp3gain-0.9.4.tar.xz/src/mainwindow.h -> qmp3gain-0.9.6.tar.xz/src/mainwindow.h
Changed
@@ -17,6 +17,9 @@ #include "ui_mainwindow.h" +const QString APP_COMPANY = "Zematix"; +const QString APP_TITLE = "QMP3Gain"; + class MainWindow : public QMainWindow, public Ui::MainWindow { Q_OBJECT @@ -25,6 +28,7 @@ MainWindow(QWidget *parent = 0); ~MainWindow(); inline QPointer<QSettings> getSettings() { return settings; } + inline static const QString & getAppCompany() { return appCompany; } inline static const QString & getAppTitle() { return appTitle; } inline static const QString & getAppVersion() { return appVersion; } inline const QString & getBackEnd() { return backEndFileName.isEmpty() ? backEndFixed : backEndFileName; } @@ -108,6 +112,7 @@ const char ** modelHeaderLabels; QStringList modelHeaderList; // contains column labels (always in english) of model header QPointer<QStandardItemModel> model; + const static QString appCompany; const static QString appTitle; const static QString appVersion; const static QString backEndFixed; @@ -247,6 +252,9 @@ // menu: Options/Always_on_Top void on_actionAlways_on_Top_toggled(bool checked); + // menu: Options/Auto_screen_scale_factor + void on_actionAuto_screen_scale_factor_toggled(bool checked); + // menu: Options/Tags/Remove_Tags_from_files void on_actionRemove_Tags_from_files_triggered();
View file
qmp3gain-0.9.4.tar.xz/src/mainwindow.ui -> qmp3gain-0.9.6.tar.xz/src/mainwindow.ui
Changed
@@ -109,6 +109,9 @@ <property name="editTriggers"> <set>QAbstractItemView::NoEditTriggers</set> </property> + <property name="sortingEnabled"> + <bool>true</bool> + </property> </widget> </item> <item> @@ -162,7 +165,7 @@ <x>0</x> <y>0</y> <width>732</width> - <height>30</height> + <height>22</height> </rect> </property> <widget class="QMenu" name="menuFile"> @@ -270,12 +273,21 @@ <addaction name="actionLogDock"/> <addaction name="actionLogOpenAutomaticallyPanel"/> </widget> + <widget class="QMenu" name="menuAnalysis_results"> + <property name="title"> + <string>Analysis results</string> + </property> + <addaction name="actionCSV_header_usage"/> + <addaction name="actionAll_columns_included"/> + </widget> <addaction name="actionAlways_on_Top"/> <addaction name="actionWork_on_Selected_files_only"/> <addaction name="actionAdd_Subfolders"/> <addaction name="actionPreserve_file_date_time"/> <addaction name="actionNo_check_for_Layer_I_or_II"/> <addaction name="actionDon_t_clip_when_doing_track_gain"/> + <addaction name="actionAuto_screen_scale_factor"/> + <addaction name="menuAnalysis_results"/> <addaction name="menuTags"/> <addaction name="menuLogs"/> <addaction name="separator"/> @@ -347,9 +359,6 @@ <property name="floating"> <bool>false</bool> </property> - <property name="features"> - <set>QDockWidget::AllDockWidgetFeatures</set> - </property> <property name="allowedAreas"> <set>Qt::BottomDockWidgetArea|Qt::TopDockWidgetArea</set> </property> @@ -836,6 +845,9 @@ <property name="checkable"> <bool>true</bool> </property> + <property name="checked"> + <bool>false</bool> + </property> <property name="text"> <string>Always on Top</string> </property> @@ -1263,9 +1275,6 @@ <property name="text"> <string>Open automatically panel</string> </property> - <property name="toolTip"> - <string>Log panel is automaticaly opened if error occurs</string> - </property> <property name="statusTip"> <string>Log panel is automaticaly opened if error occurs</string> </property> @@ -1278,6 +1287,48 @@ <string>Trace</string> </property> </action> + <action name="actionAuto_screen_scale_factor"> + <property name="checkable"> + <bool>true</bool> + </property> + <property name="text"> + <string>Auto screen scale factor</string> + </property> + <property name="toolTip"> + <string>Auto scales application user interface components</string> + </property> + <property name="statusTip"> + <string>Auto scales application user interface components</string> + </property> + </action> + <action name="actionCSV_header_usage"> + <property name="checkable"> + <bool>true</bool> + </property> + <property name="text"> + <string>CSV header usage</string> + </property> + <property name="toolTip"> + <string>At analysis result process CSV header is presumed</string> + </property> + <property name="statusTip"> + <string>At analysis result process CSV header is presumed</string> + </property> + </action> + <action name="actionAll_columns_included"> + <property name="checkable"> + <bool>true</bool> + </property> + <property name="text"> + <string>All columns included</string> + </property> + <property name="toolTip"> + <string>All columns are presumed/generated at Load/Save Analysis results including the hidden ones</string> + </property> + <property name="statusTip"> + <string>All columns are presumed/generated at Load/Save Analysis results including the hidden ones</string> + </property> + </action> </widget> <customwidgets> <customwidget>
View file
qmp3gain-0.9.4.tar.xz/translations/qmp3gain_hu.ts -> qmp3gain-0.9.6.tar.xz/translations/qmp3gain_hu.ts
Changed
@@ -1283,6 +1283,34 @@ <source>Failed to decode MPEG frame: Error reading the stream. (code %1)</source> <translation>Nem sikerült dekódolni az MPEG-frame-et: Hiba történt az adatfolyam olvasása közben. (kód %1)</translation> </message> + <message> + <source>Auto screen scale factor</source> + <translation>Automatikus képernyőméretezési faktor</translation> + </message> + <message> + <source>Auto scales application user interface components</source> + <translation>Automatikus skálázása az alkalmazás felhasználói felületének</translation> + </message> + <message> + <source>Restart application to apply your changes</source> + <translation>Indítsa újra az alkalmazást a módosítások érvényesítéséhez</translation> + </message> + <message> + <source>CSV header usage</source> + <translation>CSV fejléc használata</translation> + </message> + <message> + <source>At analysis result process CSV header is presumed</source> + <translation>Analízis eredmény feldolgozásánál CSV fejléc használata</translation> + </message> + <message> + <source>All columns included</source> + <translation>Összes oszlop beleértve</translation> + </message> + <message> + <source>All columns are presumed/generated at Load/Save Analysis results including the hidden ones</source> + <translation>Összes oszlop beleértve Elemzés eredmények betöltése/mentése funkcióknál, a rejtettekkel együtt</translation> + </message> </context> <context> <name>QDialogButtonBox</name>
View file
qmp3gain-0.9.4.tar.xz/translations/qmp3gain_it.ts -> qmp3gain-0.9.6.tar.xz/translations/qmp3gain_it.ts
Changed
@@ -1287,6 +1287,34 @@ <source>Failed to decode MPEG frame: Error reading the stream. (code %1)</source> <translation>Impossibile decodificare il frame MPEG: errore durante la lettura del flusso. (codice %1)</translation> </message> + <message> + <source>Auto screen scale factor</source> + <translation>Fattore di scala automatica dello schermo</translation> + </message> + <message> + <source>Auto scales application user interface components</source> + <translation>Componenti dell'interfaccia utente dell'applicazione di ridimensionamento automatico</translation> + </message> + <message> + <source>Restart application to apply your changes</source> + <translation>Riavvia l'applicazione per applicare le modifiche</translation> + </message> + <message> + <source>CSV header usage</source> + <translation>Utilizzo dell'intestazione CSV</translation> + </message> + <message> + <source>At analysis result process CSV header is presumed</source> + <translation>Utilizzo dell'intestazione CSV durante l'elaborazione dei risultati dell'analisi</translation> + </message> + <message> + <source>All columns included</source> + <translation>Tutte le colonne incluse</translation> + </message> + <message> + <source>All columns are presumed/generated at Load/Save Analysis results including the hidden ones</source> + <translation>Tutte le colonne sono presunte/generate nei risultati dell'analisi di caricamento/salvataggio, comprese quelle nascoste</translation> + </message> </context> <context> <name>QDialogButtonBox</name>
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.