mirror of
https://github.com/spalencsar/bearwave.git
synced 2026-07-06 22:24:17 +02:00
Add SPDX license identifiers to all source files
This commit is contained in:
@@ -1,30 +1,31 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include "bearplayer.h"
|
||||
|
||||
#include <QUrl>
|
||||
#include <QDebug>
|
||||
#include <QMediaMetaData>
|
||||
#include <QUrl>
|
||||
|
||||
|
||||
|
||||
BearPlayer::BearPlayer(QObject *parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
BearPlayer::BearPlayer(QObject *parent) : QObject(parent) {
|
||||
m_audioOutput = new QAudioOutput(this);
|
||||
m_mediaPlayer = new QMediaPlayer(this);
|
||||
m_mediaPlayer->setAudioOutput(m_audioOutput);
|
||||
|
||||
m_coverArtFetcher = new CoverArtFetcher(this);
|
||||
connect(m_coverArtFetcher, &CoverArtFetcher::coverUrlReady, this, &BearPlayer::onCoverUrlReady);
|
||||
connect(m_coverArtFetcher, &CoverArtFetcher::coverUrlReady, this,
|
||||
&BearPlayer::onCoverUrlReady);
|
||||
|
||||
m_icyReader = new IcyReader(this);
|
||||
connect(m_icyReader, &IcyReader::metaDataReceived, this, &BearPlayer::onIcyMetaDataReceived);
|
||||
connect(m_icyReader, &IcyReader::metaDataReceived, this,
|
||||
&BearPlayer::onIcyMetaDataReceived);
|
||||
|
||||
connect(m_mediaPlayer, &QMediaPlayer::playbackStateChanged,
|
||||
this, &BearPlayer::onPlaybackStateChanged);
|
||||
connect(m_mediaPlayer, &QMediaPlayer::mediaStatusChanged,
|
||||
this, &BearPlayer::onMediaStatusChanged);
|
||||
connect(m_mediaPlayer, &QMediaPlayer::metaDataChanged,
|
||||
this, &BearPlayer::onMetaDataChanged);
|
||||
connect(m_mediaPlayer, &QMediaPlayer::playbackStateChanged, this,
|
||||
&BearPlayer::onPlaybackStateChanged);
|
||||
connect(m_mediaPlayer, &QMediaPlayer::mediaStatusChanged, this,
|
||||
&BearPlayer::onMediaStatusChanged);
|
||||
connect(m_mediaPlayer, &QMediaPlayer::metaDataChanged, this,
|
||||
&BearPlayer::onMetaDataChanged);
|
||||
|
||||
m_retryTimer.setSingleShot(true);
|
||||
m_retryTimer.setInterval(1200);
|
||||
@@ -39,13 +40,9 @@ BearPlayer::BearPlayer(QObject *parent)
|
||||
});
|
||||
}
|
||||
|
||||
BearPlayer::~BearPlayer()
|
||||
{
|
||||
stop();
|
||||
}
|
||||
BearPlayer::~BearPlayer() { stop(); }
|
||||
|
||||
void BearPlayer::playUrl(const QString &url, const QString &name)
|
||||
{
|
||||
void BearPlayer::playUrl(const QString &url, const QString &name) {
|
||||
if (url.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
@@ -64,8 +61,7 @@ void BearPlayer::playUrl(const QString &url, const QString &name)
|
||||
qDebug() << "Playing:" << name << url;
|
||||
}
|
||||
|
||||
void BearPlayer::stop()
|
||||
{
|
||||
void BearPlayer::stop() {
|
||||
m_mediaPlayer->stop();
|
||||
m_icyReader->stop();
|
||||
m_currentStationName.clear();
|
||||
@@ -76,8 +72,7 @@ void BearPlayer::stop()
|
||||
clearTrackInfo();
|
||||
}
|
||||
|
||||
void BearPlayer::togglePlayPause()
|
||||
{
|
||||
void BearPlayer::togglePlayPause() {
|
||||
if (m_playing) {
|
||||
m_mediaPlayer->pause();
|
||||
} else {
|
||||
@@ -85,14 +80,12 @@ void BearPlayer::togglePlayPause()
|
||||
}
|
||||
}
|
||||
|
||||
void BearPlayer::setVolume(qreal vol)
|
||||
{
|
||||
void BearPlayer::setVolume(qreal vol) {
|
||||
m_audioOutput->setVolume(qBound(0.0, vol, 1.0));
|
||||
emit volumeChanged(m_audioOutput->volume());
|
||||
}
|
||||
|
||||
void BearPlayer::onPlaybackStateChanged(QMediaPlayer::PlaybackState state)
|
||||
{
|
||||
void BearPlayer::onPlaybackStateChanged(QMediaPlayer::PlaybackState state) {
|
||||
m_playing = (state == QMediaPlayer::PlayingState);
|
||||
emit playingChanged(m_playing);
|
||||
|
||||
@@ -101,8 +94,7 @@ void BearPlayer::onPlaybackStateChanged(QMediaPlayer::PlaybackState state)
|
||||
}
|
||||
}
|
||||
|
||||
void BearPlayer::onMediaStatusChanged(QMediaPlayer::MediaStatus status)
|
||||
{
|
||||
void BearPlayer::onMediaStatusChanged(QMediaPlayer::MediaStatus status) {
|
||||
if (status == QMediaPlayer::InvalidMedia) {
|
||||
m_playing = false;
|
||||
emit playingChanged(m_playing);
|
||||
@@ -110,8 +102,7 @@ void BearPlayer::onMediaStatusChanged(QMediaPlayer::MediaStatus status)
|
||||
}
|
||||
}
|
||||
|
||||
void BearPlayer::scheduleRetry()
|
||||
{
|
||||
void BearPlayer::scheduleRetry() {
|
||||
if (m_lastUrl.isEmpty() || m_retryAttempts >= 2 || m_playing) {
|
||||
return;
|
||||
}
|
||||
@@ -120,8 +111,7 @@ void BearPlayer::scheduleRetry()
|
||||
}
|
||||
}
|
||||
|
||||
void BearPlayer::onMetaDataChanged()
|
||||
{
|
||||
void BearPlayer::onMetaDataChanged() {
|
||||
QMediaMetaData meta = m_mediaPlayer->metaData();
|
||||
|
||||
QString artist = meta.stringValue(QMediaMetaData::ContributingArtist);
|
||||
@@ -131,7 +121,8 @@ void BearPlayer::onMetaDataChanged()
|
||||
|
||||
QString title = meta.stringValue(QMediaMetaData::Title);
|
||||
|
||||
// Ignore completely empty metadata from QMediaPlayer so we don't overwrite IcyReader
|
||||
// Ignore completely empty metadata from QMediaPlayer so we don't overwrite
|
||||
// IcyReader
|
||||
if (artist.isEmpty() && title.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
@@ -147,16 +138,15 @@ void BearPlayer::onMetaDataChanged()
|
||||
emit trackInfoChanged();
|
||||
}
|
||||
|
||||
void BearPlayer::onCoverUrlReady(const QString &url)
|
||||
{
|
||||
void BearPlayer::onCoverUrlReady(const QString &url) {
|
||||
if (m_currentCoverArtUrl != url) {
|
||||
m_currentCoverArtUrl = url;
|
||||
emit trackInfoChanged();
|
||||
}
|
||||
}
|
||||
|
||||
void BearPlayer::onIcyMetaDataReceived(const QString &artist, const QString &title)
|
||||
{
|
||||
void BearPlayer::onIcyMetaDataReceived(const QString &artist,
|
||||
const QString &title) {
|
||||
if (m_currentTrackArtist == artist && m_currentTrackTitle == title) {
|
||||
return;
|
||||
}
|
||||
@@ -168,8 +158,7 @@ void BearPlayer::onIcyMetaDataReceived(const QString &artist, const QString &tit
|
||||
emit trackInfoChanged();
|
||||
}
|
||||
|
||||
QString BearPlayer::currentNowPlaying() const
|
||||
{
|
||||
QString BearPlayer::currentNowPlaying() const {
|
||||
if (!m_currentTrackArtist.isEmpty() && !m_currentTrackTitle.isEmpty()) {
|
||||
return m_currentTrackArtist + QStringLiteral(" - ") + m_currentTrackTitle;
|
||||
}
|
||||
@@ -182,8 +171,7 @@ QString BearPlayer::currentNowPlaying() const
|
||||
return QString();
|
||||
}
|
||||
|
||||
void BearPlayer::clearTrackInfo()
|
||||
{
|
||||
void BearPlayer::clearTrackInfo() {
|
||||
if (m_currentTrackArtist.isEmpty() && m_currentTrackTitle.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#ifndef BEARPLAYER_H
|
||||
#define BEARPLAYER_H
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include "bearwavecontroladaptor.h"
|
||||
|
||||
#include "radiobackend.h"
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#ifndef BEARWAVECONTROLADAPTOR_H
|
||||
#define BEARWAVECONTROLADAPTOR_H
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include "coverartfetcher.h"
|
||||
#include <QUrlQuery>
|
||||
#include <QJsonDocument>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#ifndef COVERARTFETCHER_H
|
||||
#define COVERARTFETCHER_H
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include "icyreader.h"
|
||||
#include <QNetworkRequest>
|
||||
#include <QDebug>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#ifndef ICYREADER_H
|
||||
#define ICYREADER_H
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include <QApplication>
|
||||
#include <QDBusConnection>
|
||||
#include <QIcon>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include "mprisadaptor.h"
|
||||
|
||||
#include "radiobackend.h"
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#ifndef MPRISADAPTOR_H
|
||||
#define MPRISADAPTOR_H
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include "notificationmanager.h"
|
||||
#include "radiobackend.h"
|
||||
#include "bearplayer.h"
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#ifndef NOTIFICATIONMANAGER_H
|
||||
#define NOTIFICATIONMANAGER_H
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
import QtQuick 2.15
|
||||
import QtQuick.Controls 2.15
|
||||
import QtQuick.Layouts 1.15
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include "radiobackend.h"
|
||||
|
||||
#include <QDebug>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#ifndef RADIOBACKEND_H
|
||||
#define RADIOBACKEND_H
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include "radiobrowser.h"
|
||||
|
||||
#include <QJsonDocument>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#ifndef RADIOBROWSER_H
|
||||
#define RADIOBROWSER_H
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include "radiostation.h"
|
||||
|
||||
#include <QJsonObject>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// Copyright (c) 2026 Sebastian Palencsar
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#ifndef RADIOSTATION_H
|
||||
#define RADIOSTATION_H
|
||||
|
||||
|
||||
Reference in New Issue
Block a user