Commit Graph

272 Commits

Author SHA1 Message Date
Jonas Kvinge 95ac85f642 Move stream discoverer from pipeline to engine
Fixes #491
2020-10-21 00:07:58 +02:00
Jonas Kvinge ca8877ad47 Revert gst_discoverer_stop 2020-10-20 18:47:40 +02:00
Jonas Kvinge 6d8f31048c Add call to gst_discoverer_stop
Stream discoverer currently only works on Linux
2020-10-20 18:28:09 +02:00
Jonas Kvinge dbb8ec0290 Remove debug in bus callbacks 2020-10-19 19:09:48 +02:00
Jonas Kvinge b6693a71f9 Rename initialise to initialize 2020-10-17 17:29:09 +02:00
Jonas Kvinge 5b21118a8c Replace gst_tag_list_free with gst_tag_list_unref 2020-10-17 04:54:46 +02:00
Jonas Kvinge c30fb0d38c Log errors in MM device finder 2020-10-17 03:19:13 +02:00
Jonas Kvinge aeb0d05017 Add CoInitializeEx() to mmdevice finder and refactor code 2020-10-15 16:06:07 +02:00
Jonas Kvinge 24286dbe9d Use QtConcurrent::run directly 2020-10-14 22:49:37 +02:00
Jonas Kvinge 4a53d4f043 Ignore "IDirectSoundBuffer_GetStatus The operation completed successfully"
Fixes #557
2020-10-13 00:49:34 +02:00
Jonas Kvinge b6ff7e6b47 Fix transition to next song in CUE files
Fixes #552
2020-10-10 01:57:02 +02:00
Jonas Kvinge 74a5233b5d Replace use of deprecated gstreamer low-percent
- Add settings for low-watermark and high-watermark
- Add button to reset buffer settings to defaults
2020-10-07 20:29:26 +02:00
Jonas Kvinge 8d24bc50c9 Change GST to GStreamer in debug logging 2020-10-03 20:08:33 +02:00
Jonas Kvinge 458efe9168 Remove gstreamer registry workaround for Windows 2020-10-03 20:05:30 +02:00
Jonas Kvinge 61ffb7d97a Unref bus 2020-10-03 13:09:09 +02:00
Jonas Kvinge cdcfd64ec4 Possible fix for WASAPI crashes 2020-10-03 01:58:52 +02:00
Jonas Kvinge 1ffd010e4a Add windows.h include to MM device finder
Fixes compile error with mingw-w64 8.0.0
2020-09-19 02:06:15 +02:00
Jonas Kvinge 9221797c9d Add sqlite3.exe to nsi 2020-09-11 22:58:56 +02:00
Jonas Kvinge 08f32d1de6 Refactor playlist view/header code
- Don't reload all settings when changing playlists
- Fix initial playlist header columns sizes
- Properly reset header state when resetting columns
2020-08-29 19:55:00 +02:00
Jonas Kvinge b1099e6974 Handle metadata with tilde in title 2020-08-07 00:52:09 +02:00
Jonas Kvinge 638998a861 Replace QTimeLine::CurveShape with QEasingCurve 2020-07-18 17:53:14 +02:00
Jonas Kvinge af67de8aa6 Use lambdas for QtConcurrent::run instead of NewClosure 2020-07-18 16:28:39 +02:00
Jonas Kvinge 07553476d4 Remove xine 2020-07-16 00:59:46 +02:00
Jonas Kvinge 1773283456 Remove xine metronom.pts_per_smpls check 2020-07-16 00:44:41 +02:00
Jonas Kvinge 614a09db1d Fix some compile warnings 2020-07-13 18:11:57 +02:00
Jonas Kvinge 7fd5c058be Fix buffer overflow when coverting S24LE 2020-07-04 01:55:36 +02:00
Jonas Kvinge b22e8b4702 Convert S24LE and F32LE for analyzer
Fixes #155
2020-07-04 00:29:11 +02:00
Jonas Kvinge b51cc21140 Use override 2020-06-26 23:01:57 +02:00
Jonas Kvinge dc36aee7ff Change some explicit usage 2020-06-26 22:41:38 +02:00
Jonas Kvinge 651020388d Use override 2020-06-15 21:55:05 +02:00
Jonas Kvinge 72ede666d4 Replace use of C style casts 2020-06-15 17:59:02 +02:00
Jonas Kvinge 56caab4461 Remove redundant initialization 2020-06-15 00:11:52 +02:00
Jonas Kvinge 13b60351a6 Replace use of deprecated C++ headers 2020-06-14 23:54:18 +02:00
Jonas Kvinge 082c9097e4 Fix parameter name mispatches 2020-06-14 18:58:24 +02:00
Jonas Kvinge 2fbdb29ebc Replace 0 with nullptr 2020-06-14 17:02:47 +02:00
Jonas Kvinge 732be5a34f Use g_free 2020-05-24 23:22:18 +02:00
Jonas Kvinge 1f45c78ebb Unmap buffer references in error cases 2020-05-24 23:21:26 +02:00
Jonas Kvinge eb4ce1feab Use toUtf8() not toLocal8Bit() when converting string for UNC path
Fixes #418
2020-04-30 17:32:31 +02:00
Jonas Kvinge 011897da53 Remove gstreamer registry file on startup for Windows
Workaround for issue #266
2020-04-27 15:54:37 +02:00
Jonas Kvinge 6e061764ee Remove phonon 2020-04-25 01:42:29 +02:00
Jonas Kvinge 8da4c88fd3 Fix compile warnings 2020-04-23 21:08:28 +02:00
Jonas Kvinge a2c0e4d4b1 Improve album cover loader, lyrics search and streaming support
- Improve album cover loader
- Add album cover loader result struct
- Move album cover thumbnail scaling to album cover loader
- Make init art manual look for album cover images in song directory
- Make album cover search work for songs outside of collection and
  streams
- Make album cover search work based on artist + title if album is not
  present
- Update art manual in playlist for local files, devices and CDDA
- Make lyrics search work for streams
- Add stream dialog to menu
- Remove dead code in InternetSearchModel
- Simplify code in InternetSearchView
2020-04-20 18:03:18 +02:00
Jonas Kvinge c69fff52cc Remove useless using std 2020-04-20 17:49:06 +02:00
Jonas Kvinge 21b2193cd0 Add explicit 2020-04-07 16:49:15 +02:00
Jonas Kvinge 424b0e61cb Remove extra newlines 2020-02-12 00:07:05 +01:00
Jonas Kvinge 7ff1a88ca8 Add QCoreApplication to xineengine.cpp 2020-02-09 04:20:22 +01:00
Jonas Kvinge 1851f26e3f Reduce includes 2020-02-09 02:29:35 +01:00
Jonas Kvinge 8e0d792bf0 Reduce includes 2020-02-08 03:40:30 +01:00
Jonas Kvinge fc2d601424 Remove useless stdbool.h include 2019-12-30 23:14:40 +01:00
Jonas Kvinge c141df6b86 Remove low-latency setting for wasapisink 2019-11-26 22:30:56 +01:00
Jonas Kvinge c0a2ad5f50 Change comment 2019-11-18 17:16:58 +01:00
Jonas Kvinge 1b65dcd7df Fix comparison between signed/unsigned 2019-11-15 00:23:06 +01:00
Jonas Kvinge 89b06ae7c7 Mulitply samples by channels, dont hardcode to 2 2019-11-09 16:34:17 +01:00
Jonas Kvinge 834877c503 Refactor gstreamer engine code, equalizer and fix stereo balancer 2019-11-08 23:07:21 +01:00
Jonas Kvinge d033b79af4 Remove exclusive for wasapisink
Fixes #283
2019-11-07 20:26:25 +01:00
Jonas Kvinge 4e593cebab Add const 2019-11-06 21:53:09 +01:00
Jonas Kvinge e838840548 Remove duplicate check 2019-11-03 19:56:10 +01:00
Jonas Kvinge 6a430b441e Remove debug line 2019-11-03 19:56:01 +01:00
Jonas Kvinge 7b977ea839 Rename EngineDevice --> DeviceFinders, Add MMDeviceFinder 2019-11-03 19:53:08 +01:00
Jonas Kvinge e800b236aa Simplify the pipeline
Fix issue where bitrate is updated incorrectly by stream discoverer
Fixes issue #282
Also make it possible to enable stereo balancer without enabling the
equalizer
2019-10-27 23:48:54 +01:00
Jonas Kvinge 4ab7871106 Add wasapisink to directsound devicefinder 2019-10-27 23:47:28 +01:00
Jonas Kvinge d9c703d944 Add gst/audio/audio.h include 2019-10-20 20:04:23 +02:00
Jonas Kvinge 364b650033 Convert S32LE to S16LE for analyzer 2019-10-20 18:52:58 +02:00
Jonas Kvinge 156eb874db Fix analyzer and cleanup old pipeline code
- Move HandoffCallback to audio queue
- Add new callback for detecting source format
- Remove old decodebin stuff
2019-10-20 02:56:47 +02:00
Jonas Kvinge abeb580228 Disable analyzer for other bit depths than 16
This removes the splitting of the pipeline with the tee.
Move HandoffCallback to the source, which makes it possible to convert the audio buffer in HandoffCallback later.
Until then just disable analyzer for other formats.

Removes tee and probe queue converter and sink
2019-10-19 01:45:24 +02:00
Jonas Kvinge 9821b70c38 Dont use gst_caps_to_string as it causes hang with some formats 2019-10-12 01:58:01 +02:00
Jonas Kvinge f4489e6807 No need to initialize SimpleMetaBundle here 2019-09-30 20:31:18 +02:00
Jonas Kvinge b57535c5ad Make gstreamer discoverer handle next url too 2019-09-23 01:03:03 +02:00
Jonas Kvinge 30ed362a8c Increase preload gap 2019-09-23 01:00:27 +02:00
Jonas Kvinge 3d3d641e1c Fix player not using preloaded stream url breaking gapless playback
Fixes #26
2019-09-22 22:47:07 +02:00
Jonas Kvinge defc0ada78 Fix compile warnings 2019-09-19 17:44:14 +02:00
Jonas Kvinge 4a9c9f8cd4 gstreamer: disconnect callbacks, avoid gst_discoverer_stop 2019-09-17 22:42:51 +02:00
Jonas Kvinge 2d67279180 Fix minor code issues 2019-09-15 20:27:32 +02:00
Jonas Kvinge d0eb1ba96e Avoid gst_discoverer_stop on all OSes except Linux 2019-09-14 20:11:29 +02:00
Jonas Kvinge 1cafaf3a79 Disable video for playbin 2019-09-12 18:07:10 +02:00
Jonas Kvinge c66c1e17d3 Make gstreamer pipeline detect filetype 2019-09-09 22:11:13 +02:00
Jonas Kvinge 57d9c87de6 Replace NULL with nullptr 2019-09-08 21:18:26 +02:00
Jonas Kvinge 795f95d855 Add gstreamer stream discoverer workaround for Windows
- gst_discoverer_stop seem to block
2019-09-08 21:07:56 +02:00
Jonas Kvinge fb377c32ea Initialize filetype and bitrate 2019-09-08 17:36:50 +02:00
Jonas Kvinge b462ec022a Remove unused variable 2019-09-07 23:50:26 +02:00
Jonas Kvinge e45a0bf24b Add stream discoverer to gstreamer pipeline and continuous updating of bitrate 2019-09-07 23:34:13 +02:00
Jonas Kvinge 9b45f0661e Add option to bundle gstreamer plugins on Linux 2019-08-27 22:29:48 +02:00
Jonas Kvinge d199a2be0d Fix typos and spelling 2019-08-22 18:45:32 +02:00
Jonas Kvinge bd78e8c275 Fix memory leaks 2019-07-22 20:53:05 +02:00
Jonas Kvinge 7fa1461d5e Use QUrl::isLocalFile() 2019-07-09 21:43:56 +02:00
Jonas Kvinge 65780e1672 Improve album cover searching and cover manager, use HttpStatusCodeAttribute and QSslError for services
- Improve album cover manager
- Change art_automatic and art_manual to QUrl
- Refresh collection album covers when new album covers are fetched
- Fix automatic album cover searching for local files outside of the collection
- Make all Json services check HttpStatusCodeAttribute
- Show detailed SSL errors for Subsonic, Tidal and Qobuz
2019-07-07 21:14:24 +02:00
Jonas Kvinge aec9df1882
Switch to queue2 for probe queue (#204) 2019-07-05 23:50:57 +02:00
Jonas Kvinge d413f2c3a7 Revert "Try queue2 for probe queue"
This reverts commit a9c162476c.
2019-07-03 02:24:32 +02:00
Jonas Kvinge a9c162476c Try queue2 for probe queue 2019-07-02 00:47:10 +02:00
Jonas Kvinge a9da8811fc Turn off ssl-strict in gst pipeline 2019-06-17 23:01:38 +02:00
Jonas Kvinge 8b05af7ca3 Make xine analyzer optional 2019-05-28 18:37:51 +02:00
Jonas Kvinge cecae7cdc3 Fix xine metronom compile 2019-05-27 21:56:07 +02:00
Jonas Kvinge e5f3123567 Fix gst_pad_send_event block in ErrorMessageReceived() 2019-05-27 21:39:38 +02:00
Jonas Kvinge 193fa176dc Detach vlc callbacks 2019-04-25 00:54:57 +02:00
Jonas Kvinge 0a1dfeb860 Fix some minor vlc issues 2019-04-23 19:20:46 +02:00
Jonas Kvinge 3c6c9741ff Fix vlc crash 2019-04-21 22:24:24 +02:00
Jonas Kvinge 239f58e290 Only create audiopanorama when equalizer is enabled 2019-04-21 20:13:03 +02:00
Jonas Kvinge 60a9154326 Fix equalizer 2019-04-20 22:23:22 +02:00
Jonas Kvinge f761b8d4e1 Fix includes 2019-04-20 17:36:42 +02:00
Jonas Kvinge 3ed6817ac9 Initialize gstreamer independent of witch engine is used 2019-04-20 15:25:31 +02:00
Jonas Kvinge 907d18a83a Add moodbar 2019-04-18 15:03:01 +02:00
Jonas Kvinge 9be161d165 Fix code style and errors 2019-04-08 18:46:11 +02:00
Jonas Kvinge 6e463d1de3 Remove broken mono playback setting 2019-03-27 00:31:47 +01:00
Jonas Kvinge 21970f3065 Fix gst leaks 2019-03-27 00:27:49 +01:00
Jonas Kvinge 380f2509ac Remove deezer 2019-03-09 17:43:20 +01:00
Jonas Kvinge 3e658845d2 Add option to disable volume control 2019-03-09 16:48:45 +01:00
Jonas Kvinge 384209ba70 Fix UNC path in gst engine 2019-02-25 16:35:29 +01:00
Jonas Kvinge 954e0e8a59
Add translations support (#82)
* Add translations support
* Update .gitignore
2019-02-22 20:24:38 +01:00
Jonas Kvinge 513aafca16 Disable fading when alsa device is selected 2019-01-09 20:02:40 +01:00
Jonas Kvinge c271e05abc Use Q_OS_MACOS instead of Q_OS_DARWIN 2019-01-04 00:39:22 +01:00
Jonas Kvinge 030106986b Fix Utilities::SetEnv 2019-01-03 23:18:39 +01:00
Jonas Kvinge 7d8ba57e5f Fix bundle dir for macOS 2019-01-03 23:18:39 +01:00
Jonas Kvinge d3bcb38669 Fix macos build 2019-01-01 22:06:48 +01:00
Jonas Kvinge 4641115314 Rename macos device finder 2019-01-01 20:22:19 +01:00
Jonas Kvinge 1023a3da6f Fix some copyrights 2018-12-29 03:21:15 +01:00
Jonas Kvinge 9d09e7f6fe Remove dead code 2018-11-17 03:23:22 +01:00
Jonas Kvinge 072a3065cd Don't set paths for gst scanner and plugins on macos 2018-11-15 20:20:30 +01:00
Jonas Kvinge e35d618133 Make Deezer engine use quality setting 2018-11-09 19:27:36 +01:00
Jonas Kvinge 67c889f982 Improve Xine engine code 2018-10-30 23:40:41 +01:00
Jonas Kvinge 08cba25071 Improve VLC error handling 2018-10-30 23:40:05 +01:00
Jonas Kvinge ff35b01bac Improve gst engine error handling 2018-10-30 23:39:08 +01:00
Jonas Kvinge faee1977fe Add better error handling between engine and player 2018-10-30 23:21:51 +01:00
Jonas Kvinge 0c10013858 Ops 2018-10-23 21:14:58 +02:00
Jonas Kvinge 3e9530fa8d Set metadata from deezer engine 2018-10-23 20:21:33 +02:00
Jonas Kvinge ba8717f95a Fix Deezer engine error state 2018-10-22 23:04:34 +02:00
Jonas Kvinge 3a02ece169 Add EnsureInitialised() 2018-10-22 20:40:02 +02:00
Jonas Kvinge 0cda4e27aa Replace qSort/qStableSort/qSwap 2018-10-19 20:18:46 +02:00
Jonas Kvinge 9eadeddfd9 Fixup and finish deezer engine 2018-10-19 19:15:33 +02:00
Jonas Kvinge a9e905b301 Fix bug not loading engine 2018-10-17 22:55:36 +02:00
Jonas Kvinge 0a81fa99fc Add Deezer support 2018-10-14 00:08:33 +02:00
Jonas Kvinge 1fbfabdf66 Remove whitespaces 2018-10-02 00:46:54 +02:00
Jonas Kvinge db035351be Remove whitespaces 2018-10-02 00:38:52 +02:00
Jonas Kvinge 36563cd1e1 Fix compile 2018-09-22 23:32:11 +02:00
Jonas Kvinge 072e712f0d Add missing QUrl include 2018-09-22 23:30:19 +02:00
Jonas Kvinge 121a186160 Improve contextview and engine code 2018-09-22 23:13:56 +02:00
Jonas Kvinge 8a57356f64 More Tidal fixes 2018-09-22 15:37:42 +02:00
Jonas Kvinge c77cb002f3 Add support for both ALSA hw and plughw 2018-09-21 23:29:00 +02:00
Jonas Kvinge 5e577190a8 Fix some copyrights 2018-09-21 01:12:21 +02:00
Jonas Kvinge 0143617056 Fix bug setting wrong temp metadata and bug in pipeline 2018-09-21 00:34:02 +02:00
Jonas Kvinge ac6cac8da1 New context with albums and lyrics +++ much more
* Added new lyrics provider with lyrics from AudD and API Seeds
* New improved context widget with albums and lyrics
* Fixed playing and context widget getting stuck in play mode when there was an error
* Changed icons for artists in collection, tidal and cover manager
* Removed "search" icon from "Search automatically" checkbox (right click) that looked ugly
* Removed some unused widgets from the src/widgets directory
* Fixed initial size of window and side panel
* Fixed saving window size correctly
2018-08-29 21:42:24 +02:00
Jonas Kvinge 41b0b1efd4 Remove broken xine fader until it's properly fixed 2018-08-12 15:05:34 +02:00
Jonas Kvinge c518e42e18 Remove whitespace 2018-08-09 18:39:44 +02:00
Jonas Kvinge 820124f9e1 Add tidal support 2018-08-09 18:10:03 +02:00
Jonas Kvinge 26062bd07b Remove unneeded include 2018-07-28 00:16:56 +02:00
Jonas Kvinge 73029ab7a2 Remove dead analyzer code from VLC engine 2018-07-28 00:09:39 +02:00
Jonas Kvinge 670cd4e081 Remove unused variable 2018-07-05 03:28:32 +02:00
Jonas Kvinge ab3569a285 More macos fixes 2018-07-03 17:51:52 +02:00
Jonas Kvinge ada7325a04 Fix macos build 2018-07-01 22:26:46 +02:00
Jonas Kvinge 3894419b14 More engine fixes 2018-07-01 15:30:53 +02:00
Jonas Kvinge 04f1d296ea More engine fixes 2018-07-01 01:29:52 +02:00