refactorizada la GUI, ola y audioengine se ejecutan fuera de widgets.

Opción para ejecutar sin mostrar la GUI. Los controles de la interfaz no
son reactivos, no están conectados a las órdenes de audio.
cambio en la personalidad dmx para procesar los canales en mejor orden.
evita mandar dos veces los canales dobles por cada dmx frame, incluyendo file/folder.
This commit is contained in:
snt 2024-05-04 01:43:44 +02:00
parent 4ee82c5e5f
commit 1fccbf64fd
20 changed files with 416 additions and 323 deletions

View file

@ -18,34 +18,29 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "libremediaserver-audio.h"
#include "main.h"
bool hasUi(int &argc, char *argv[])
{
for (int i = 1; i < argc; ++i) {
if (!strcmp(argv[i], "--gui"))
return true;
}
return false;
}
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QStringList args = app.arguments();
if (args.size() > 1)
libreMediaServerAudio lms(hasUi(argc, argv));
#ifndef NOGUI
if (hasUi(argc, argv))
{
if (args.contains("-v"))
{
qDebug() << VERSION;
qDebug() << COPYRIGHT;
qDebug() << LICENSE;
return 0;
}
if (args.contains("-h"))
{
qDebug() << VERSION;
qDebug() << COPYRIGHT;
qDebug() << LICENSE;
qDebug() << "Help for command line options:";
qDebug() << "-v show the version and exits";
qDebug() << "-h this help";
return 0;
}
libreMediaServerAudioUi *lmsUi = new libreMediaServerAudioUi();
lms.setUi(lmsUi);
lmsUi->show();
}
libreMediaServerAudio libreMediaServerAudio(args);
libreMediaServerAudio.show();
#endif
return app.exec();
}