Roman Lebedev
459c4c5d86
Song: add EBU R 128 Integrated Loudness and Loudness Range fields, DB [de]serialization
...
Again, pretty boring boilerplate, rather identical to the handling of
other fields. We do need to be careful when [de]serializing it, though,
we don't want to accidentally loose the `NULL` (i.e. unknown) state!
2023-07-12 14:34:04 +02:00
Roman Lebedev
73c56f038e
SqlQuery: add `BindDoubleOrNullValue()` method
...
To facilitate serializing of the two DB fields added by the previous change.
2023-07-12 14:34:04 +02:00
Roman Lebedev
0a4888f861
Database scheme: add EBU R 128 Integrated Loudness and Loudness Range columns
...
Nothing really ground-breaking, just add those two fields
to each table that already has `bitrate`/`samplerate`/`bitdepth` fields.
Those new fields do need to be able to represent an invalid state
which is their default state, thus they are non-`NOT NULL`.
In principle, the actual field type could be `INTEGER`
(i.e. fixed point w/ 2 fractional digits), but unless we really want to
save a few bytes, it doesn't seem worthwhile.
FIXME: i'm not sure if `device-schema` should be changed too.
2023-07-12 14:34:04 +02:00
Strawbs Bot
0a26c295a0
Update translations
2023-07-02 14:10:05 +02:00
Jonas Kvinge
e66651a4cb
Song: Remove unused application include
2023-07-02 00:29:30 +02:00
Jonas Kvinge
1d9a052870
AlbumCoverChoiceController: Move result declaration
2023-07-02 00:29:19 +02:00
Jonas Kvinge
fa04eb67db
Convert old embedded and unset art in the new schema
2023-06-29 20:21:50 +02:00
Jonas Kvinge
5f4d6dffef
AlbumCoverLoader: Fix loading existing album covers from disk
2023-06-29 00:44:00 +02:00
Jonas Kvinge
b9c7510946
AlbumCoverLoader: Fix Handling default image in finish task
2023-06-28 23:52:39 +02:00
Jonas Kvinge
e690be1bdd
DeviceDatabaseBackend: Fix device schema version mismatch
...
schema_version in device-schema.sql is 4.
2023-06-26 20:06:11 +02:00
Jonas Kvinge
6ed5190276
Remove AudD lyrics
2023-06-25 01:14:12 +02:00
Jonas Kvinge
354b55cbbc
Use QFileInfo::path instead of QUrl::RemoveFilename
2023-06-15 21:06:18 +02:00
Jonas Kvinge
b87a950357
CoverUtils: Only create path if it doesn't exist
2023-06-15 21:04:11 +02:00
Jonas Kvinge
950c236720
AlbumCoverManager: Fix clear and unset actions
2023-06-15 20:35:41 +02:00
Jonas Kvinge
32982be4f2
EditTagDialog: Allow clearing unset cover
2023-06-15 20:34:03 +02:00
Jonas Kvinge
f467331934
Add ifdefs around #pragma GCC diagnostic
2023-06-15 20:10:25 +02:00
Dakes
1deacaecf9
FilterParser: Add ability to filter by rating
...
Playlists can now be filtered by the rating from 0-5 like:
rating:0 rating:<3 rating:!=0
or by a float value, like:
rating:f0.1 rating:>=f0.5
2023-06-09 21:31:15 +02:00
Jonas Kvinge
b0849d21f3
TidalStreamURLRequest: Ignore different track ID
2023-06-08 17:36:24 +02:00
Jonas Kvinge
5b60ea8e77
MainWindow: Remove F2 from edit tag shortcut
...
Fixes #1210
2023-06-07 19:38:59 +02:00
Jonas Kvinge
6d55eb5974
CollectionModel: Fix icon disk cache
2023-06-07 00:51:53 +02:00
Jonas Kvinge
972053c699
MoodbarLoader: Fix loading cached moodbars
2023-06-07 00:50:35 +02:00
Jonas Kvinge
9db7896828
Prefix class for ReloadSettings
2023-06-06 23:20:42 +02:00
Jonas Kvinge
be6f93735d
Simplify if statements
2023-06-06 23:19:45 +02:00
Jonas Kvinge
8ee32dfa88
Add static_cast to silence narrowing conversion warnings
2023-06-06 23:18:49 +02:00
Jonas Kvinge
e2f9411b46
EditTagDialog: Initialize cover_action
2023-06-06 23:17:29 +02:00
Jonas Kvinge
50fcda2763
OSDDBus: Remove use of QImage::isGrayscale, Always expect RGB
...
Fixes #1205
2023-06-06 21:43:05 +02:00
Jonas Kvinge
331aa382f9
Rewrite album cover loader
2023-06-06 20:41:01 +02:00
Jonas Kvinge
716e80fb84
UWPDeviceFinder: Fix EngineDeviceList
2023-06-01 21:35:48 +02:00
Jonas Kvinge
80067b806d
TranscodeDialog: Append number to filename if it already exists
...
Fixes #1200
2023-06-01 20:42:47 +02:00
Jonas Kvinge
315073f9a7
Add EngineDevice class
2023-06-01 19:31:19 +02:00
Jonas Kvinge
a1dbbba1a1
ContextView: Remove engine and device
2023-06-01 19:29:52 +02:00
Jonas Kvinge
cb8a0b6853
ContextSettingsPage: Remove engine and device
2023-06-01 19:29:52 +02:00
Jonas Kvinge
a5a29f7ad3
DeviceFinder: Add typedef DeviceList
2023-06-01 18:43:43 +02:00
Jonas Kvinge
8e14ef7c0c
GstStartup: Set rank for directsoundsink higher than wasapisink for MinGW
...
Fixes #1204
2023-06-01 18:31:55 +02:00
Jonas Kvinge
e466cb6e30
Add UWP device finder
2023-06-01 18:11:30 +02:00
Jonas Kvinge
f0df9dc0fb
GstEngine: Append "2" to wasapi2sink description
2023-06-01 17:22:11 +02:00
Strawbs Bot
b31c08083a
Update translations
2023-05-30 01:02:07 +02:00
Jonas Kvinge
60d7a4e7ee
AlbumCoverManager: Fix invalid reference
2023-05-29 11:24:41 +02:00
Strawbs Bot
000cf5fd5a
Update translations
2023-05-13 01:01:35 +02:00
Strawbs Bot
1aff69d3cf
Update translations
2023-05-06 01:02:19 +02:00
Robert Marshall
f2f63a703e
class CueParser Process composer metadata in cue files
...
Use composer as an alternative to songwriter
..and move a misplaced comment
2023-05-05 17:47:37 +02:00
Jonas Kvinge
97e6b17f96
ContextView: QFontDatabase::families is not static in Qt 5
2023-05-05 17:46:02 +02:00
Jonas Kvinge
b90d284b08
ContextView: Check for default font family
2023-05-05 16:43:34 +02:00
Jonas Kvinge
840a65c630
ContextSettingsPage: Use constant for default font family
2023-05-05 16:43:01 +02:00
Strawbs Bot
7c7724e41c
Update translations
2023-05-05 01:29:26 +02:00
Jonas Kvinge
919ff414e6
Replace SingleApplication with KDSingleApplication
2023-05-04 09:44:54 +02:00
Strawbs Bot
b861703dad
Update translations
2023-05-04 01:15:19 +02:00
Jonas Kvinge
2f17647cd3
Use const reference for AlbumCoverLoaderResult
2023-05-03 21:43:22 +02:00
Jonas Kvinge
f8d2c7eba3
Bump required Qt version to 5.12
2023-05-03 20:50:58 +02:00
Jonas Kvinge
e511b2faf9
Use new connect syntax for QMetaObject::invokeMethod
2023-05-03 20:08:51 +02:00
Jonas Kvinge
301e6b194a
Replace 0 msec singleshot with invoke method
2023-05-03 19:55:58 +02:00
Jonas Kvinge
1208ca3ad4
ContextView: Simplify font code
2023-05-03 01:59:13 +02:00
Jonas Kvinge
84e7cd0df8
CollectionWatcher: Connect PathChanged signal once
2023-05-03 01:17:10 +02:00
Strawbs Bot
7e1077426e
Update translations
2023-05-02 01:01:40 +02:00
Jonas Kvinge
1e2c437a08
CMakeLists: Remove hardcoded sqlite3 link with MSVC
2023-05-01 19:20:00 +02:00
Jonas Kvinge
1d3223e9c6
Add getopt supporting unicode
...
Fixes #1191
2023-05-01 16:44:18 +02:00
Strawbs Bot
ee4cd11ae1
Update translations
2023-04-29 01:01:40 +02:00
Strawbs Bot
3df29ed2a9
Update translations
2023-04-25 01:01:22 +02:00
Jonas Kvinge
69658f2022
AlbumCoverChoiceController: Check for nullptr in SearchForCover
2023-04-23 19:27:01 +02:00
Jonas Kvinge
5fd0a0831f
GstEngine: Include all outputs that starts with "Sink/Audio"
2023-04-23 01:28:52 +02:00
Strawbs Bot
43b299ebd1
Update translations
2023-04-23 01:21:40 +02:00
Jonas Kvinge
9612304023
GstEngine: Use _stricmp with MSVC
2023-04-23 01:20:11 +02:00
Jonas Kvinge
3154e59b36
EngineBase: Remove extra semicolon
2023-04-22 20:41:22 +02:00
Jonas Kvinge
4c1c322b54
Rename AnalyzerBase
2023-04-22 19:45:21 +02:00
Jonas Kvinge
e9f3281694
Rename EngineBase
2023-04-22 19:13:42 +02:00
Jonas Kvinge
c3534affdb
EngineBase: Remove PluginDetails
2023-04-22 17:18:29 +02:00
Jonas Kvinge
c6e62b3263
GstStartup: Remove setting rank for wasapisink and directsoundsink
2023-04-22 17:15:41 +02:00
Jonas Kvinge
d8ce177ce7
GstEngine: Remove class comment
2023-04-22 17:14:49 +02:00
Jonas Kvinge
726bfbefb0
Replace gst_element_factory_get_klass with gst_element_factory_get_metadata
2023-04-22 16:49:37 +02:00
Jonas Kvinge
3145433099
SystemTrayIcon: Simply icon loading
2023-04-22 15:27:34 +02:00
Jonas Kvinge
bdf6844b74
Database: Move error_reported
2023-04-22 14:38:45 +02:00
Jonas Kvinge
9ad430915c
CddaDevice: Remove application.h include
2023-04-22 14:31:25 +02:00
Jonas Kvinge
60bbd71a22
Remove NetworkAccessManager from song loader
2023-04-22 14:05:48 +02:00
Jonas Kvinge
c96498758f
Fix and improve gapless playback
...
If "about-to-finish" was emitted before the preload time was reached, we never set the next uri, so gapless playback was broken.
Make sure to always set the next uri, and increase preload gap from 5 to 8 seconds.
2023-04-22 03:54:11 +02:00
Strawbs Bot
f4600bd8eb
Update translations
2023-04-22 01:21:46 +02:00
Jonas Kvinge
7202a5734c
ListenBrainzScrobbler: Only send duration_ms when valid
2023-04-21 20:54:18 +02:00
Jonas Kvinge
8edb6eaa81
Song: Add missing const
2023-04-21 20:48:30 +02:00
Jonas Kvinge
b8eecc05fd
AlbumCoverLoader: Use own NetworkAccessManager instance
...
Since AlbumCoverLoader runs in it's own thread.
2023-04-21 20:29:43 +02:00
Jonas Kvinge
7fc5aef553
Use one instance of NetworkAccessManager
2023-04-21 20:20:53 +02:00
Jonas Kvinge
bee6b7f946
Rename original_url to media_url
2023-04-21 16:20:00 +02:00
Jonas Kvinge
3bedfb6ac8
GstEngine: Formatting
2023-04-21 15:07:17 +02:00
Jonas Kvinge
f49bf0192b
Engine::Base: Formatting
2023-04-21 15:06:44 +02:00
Jonas Kvinge
f36ac5272b
Scrobbler: Simplify error handling
2023-04-21 02:11:26 +02:00
Strawbs Bot
f0fe446f7f
Update translations
2023-04-21 01:01:44 +02:00
Jonas Kvinge
d9c4720a3e
ListenBrainzScrobbler: Split artist mbids by slash
2023-04-20 21:55:11 +02:00
monochromec
4de5d8f2a3
Fixed typo and improved wording of Rosetta notice
2023-04-20 16:29:48 +02:00
Strawbs Bot
8651311016
Update translations
2023-04-19 01:08:38 +02:00
Jonas Kvinge
1d27c5a14c
MainWindow: Add missing QSettings declaration
2023-04-18 20:17:01 +02:00
Jonas Kvinge
b0b8ff2d49
CollectionModel: URL percent encode disk cache keys
...
Fixes #1183
2023-04-18 18:42:37 +02:00
Jonas Kvinge
cd03e1fc74
Make it possible to not show Rosetta warning
...
Fixes #1180
2023-04-18 18:03:39 +02:00
Jonas Kvinge
b273a449e3
Add common message dialog
2023-04-18 17:44:42 +02:00
Jonas Kvinge
b637867f9e
MainWindow: Hide checkbox, set size, center rosetta warning
2023-04-18 16:54:43 +02:00
Jonas Kvinge
41d5792b27
Add screen utilities for screen and center widget on screen
2023-04-18 16:54:35 +02:00
Strawbs Bot
9baf1774e0
Update translations
2023-04-15 01:01:23 +02:00
Strawbs Bot
9ca66e4061
Update translations
2023-04-12 01:01:23 +02:00
Jonas Kvinge
db2d34f840
FavoriteWidget: Use icon loader for star icons
...
Fixes #1178
2023-04-10 21:29:52 +02:00
Strawbs Bot
195cc61df7
Update translations
2023-04-10 01:22:37 +02:00
Jonas Kvinge
aaa530e72b
Add const/references to all signal parameters
2023-04-09 20:23:42 +02:00
Jonas Kvinge
fa856ee905
Remove directory.h
2023-04-09 20:17:45 +02:00
Strawbs Bot
2bf7a5c4d3
Update translations
2023-04-08 01:27:44 +02:00
Jonas Kvinge
780b982635
SmartPlaylistSearchTermWidget: Fix loading search terms
...
Fixes #1172
2023-04-07 23:05:07 +02:00
Jonas Kvinge
74bbc1f19f
PlaylistGenerator: Use std::make_shared
2023-04-07 22:41:10 +02:00
Jonas Kvinge
e314545f2e
Database: Fix SQL query error message
2023-04-07 20:54:31 +02:00
Jonas Kvinge
f1a3a12c1c
CollectionBackend: Fix SQL query error message
2023-04-07 20:54:15 +02:00
Jonas Kvinge
ef080c3cb1
PlaylistView: Fix resetting album cover
2023-04-07 20:07:40 +02:00
Jonas Kvinge
7313db5ac0
Add compile test for QX11Application
...
if Qt was compiled without XCB, globalshortcut-x11 failed to compile.
2023-04-07 15:57:39 +02:00
Jonas Kvinge
b59aa0827e
GstEnginePipeline: Always set initial volume
2023-04-07 02:30:41 +02:00
Strawbs Bot
2584f1293e
Update translations
2023-04-07 01:13:27 +02:00
Jonas Kvinge
b660287779
Use `std::shared_ptr`for `AlbumCoverLoaderResult`
...
Reduces memory fragmentation with Qt 6
2023-04-06 23:18:10 +02:00
Jonas Kvinge
962536bc83
AlbumCoverLoaderResult: Use enum class for type
2023-04-06 01:23:42 +02:00
Strawbs Bot
ee4fcf8100
Update translations
2023-04-04 01:01:21 +02:00
Strawbs Bot
9a4ed1a19d
Update translations
2023-03-31 21:56:09 +02:00
Gaganpreet Arora
c1d0702b4d
QobuzRequest: Handle multiple discs in integration
...
Albums with multiple discs are not being handled which results in tracks
being listed out of order. If the disc (media_number) is present in
JSON, we use it to set the disc in the Song object.
2023-03-31 21:21:58 +02:00
Jonas Kvinge
bae1b42394
OSDPretty: Respect device pixel ratio
2023-03-29 18:23:06 +02:00
Jonas Kvinge
a2533edd57
PlayingWidget: Make previous pixmap respect device pixel ratio
2023-03-29 00:24:38 +02:00
Jonas Kvinge
7b88c198fe
SongSourceDelegate: Fix compile with Qt 5
2023-03-29 00:14:21 +02:00
Jonas Kvinge
c49cb0c119
ImageUtils: Formatting
2023-03-29 00:09:40 +02:00
Jonas Kvinge
03aabeb848
AlbumCoverManager: Respect device pixel ratio
2023-03-29 00:06:56 +02:00
Jonas Kvinge
1d3a837f7a
SongSourceDelegate: Respect device pixel ratio
2023-03-29 00:04:34 +02:00
Jonas Kvinge
92adc18b8f
ContextAlbum: Make size hint respect device pixel ratio
2023-03-28 18:21:19 +02:00
Fletcher Dostie
e4697c8ff1
Render context art at correct size
2023-03-28 17:54:56 +02:00
Jonas Kvinge
a3e9f152d8
CollectionSettingsPage: Remove iopriority hide
2023-03-26 03:14:52 +02:00
Jonas Kvinge
ffe6a81b9a
Collection: Always use Idle priority for watcher
2023-03-26 00:10:29 +01:00
Jonas Kvinge
9bb051b4eb
CollectionSettingsPage: Remove settings for IO and thread priority and workers
2023-03-26 00:09:41 +01:00
Jonas Kvinge
c1465a890f
TagReaderClient: Always use 1 tagreader worker
2023-03-26 00:08:55 +01:00
Jonas Kvinge
272976f0b7
TagReaderClient: Fix default save options
2023-03-25 23:54:15 +01:00
Jonas Kvinge
4724b170b1
AuddLyricsProvider: Disable provider by default
...
Since we are currently missing API key.
2023-03-25 19:20:10 +01:00
Jonas Kvinge
337bd4bcef
ListenBrainzScrobbler: Make sure we only add the same artist id once
2023-03-25 19:14:26 +01:00
Jonas Kvinge
0604c78453
CollectionBackend: Check for changed fingerprint
2023-03-25 18:35:14 +01:00
Jonas Kvinge
c8169adf7c
CollectionModel: Guard against invalid disc and year
2023-03-25 18:32:41 +01:00
Jonas Kvinge
7b610d131c
CollectionModel: Replace qMax with std::max
2023-03-25 18:31:21 +01:00
Jonas Kvinge
18da55453f
EditTagDialog: Not set for track, disc, year, etc to -1
2023-03-25 18:29:12 +01:00
Jonas Kvinge
2aeab8b672
CollectionModel: Remove unused QByteArray include
2023-03-25 18:26:53 +01:00
Jonas Kvinge
b02ac833ad
CollectionWatcher: Fix rescan songs feature
2023-03-25 16:38:03 +01:00
Jonas Kvinge
4de912cf41
Song: Fix missing colon in SQL bind value
2023-03-25 16:34:26 +01:00
Jonas Kvinge
ed260c6e20
CollectionWatcher: Check for changed AcoustID and MusicBrainz
2023-03-25 14:35:12 +01:00
Jonas Kvinge
fab38f693d
Scrobbler: Refactor and add MusicBrainz integration
2023-03-25 14:25:21 +01:00
Jonas Kvinge
aedbd52e9d
Add AcoustID
2023-03-24 22:48:22 +01:00
Jonas Kvinge
e967d15b4e
Add AudD lyrics provider
2023-03-24 21:16:11 +01:00
Fletcher Dostie
bb43cc63ec
Fix album art rendering on High DPI displays
2023-03-24 21:02:55 +01:00
Jonas Kvinge
ca176c319d
Add Acoustid and MusicBrainz tags to database schema
2023-03-24 21:00:58 +01:00
Jonas Kvinge
17c960ecd4
Song: Add Acoustid fingerprint and MusicBrainz tags
2023-03-24 20:57:46 +01:00
Jonas Kvinge
b766ae3498
Song: Use static_cast from int to Source
2023-03-24 20:54:42 +01:00
Jonas Kvinge
52c83d592c
Rename Stands4 to Lyrics.com
2023-03-22 23:36:15 +01:00
Jonas Kvinge
c8caea0d30
GstEnginePipeline: Use constexpr
2023-03-22 23:29:56 +01:00
Jonas Kvinge
7a6c54d8e7
GstEnginePipeline: Remove hard-coded num-bands
2023-03-22 23:29:24 +01:00
Strawbs Bot
7082e52a4f
Update translations
2023-03-21 01:01:49 +01:00
Strawbs Bot
6cdca617e0
Update translations
2023-03-20 01:14:38 +01:00
Jonas Kvinge
a1adc1a75a
Add option for strict SSL mode in backend settings
2023-03-19 23:02:17 +01:00
Jonas Kvinge
b16bec704a
GstEnginePipeline: Use "source-setup" instead of "notify::source" signal
...
This works with both playbin 2 and 3.
Possible fix for #1148
2023-03-19 22:28:12 +01:00