Commit Graph

178 Commits

Author SHA1 Message Date
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 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 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 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 72ede666d4 Replace use of C style casts 2020-06-15 17:59:02 +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 732be5a34f Use g_free 2020-05-24 23:22:18 +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 1851f26e3f Reduce includes 2020-02-09 02:29:35 +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 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 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 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 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 d199a2be0d Fix typos and spelling 2019-08-22 18:45:32 +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 e5f3123567 Fix gst_pad_send_event block in ErrorMessageReceived() 2019-05-27 21:39:38 +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 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 3e658845d2 Add option to disable volume control 2019-03-09 16:48:45 +01:00
Jonas Kvinge ff35b01bac Improve gst engine error handling 2018-10-30 23:39:08 +01:00
Jonas Kvinge 3e9530fa8d Set metadata from deezer engine 2018-10-23 20:21:33 +02:00
Jonas Kvinge db035351be Remove whitespaces 2018-10-02 00:38:52 +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 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 c518e42e18 Remove whitespace 2018-08-09 18:39:44 +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 fc66e2e2c7 Fixes to xine engine 2018-06-28 23:12:39 +02:00
Jonas Kvinge 985b91e5f4 Fix setting output/device for Xine and VLC backend
- Fixed setting output and device on Xine and VLC backend
- Fixed track slider for Xine, VLC and Phonon
- Improved backend settings to better support multiple backends
- Added group by samplerate and bitdepth in collection
- Fixed crash on exit when existing instance of the application is already runnung caused by NVIDIA driver
- Changed Q_OS_MAC to Q_OS_MACOS
2018-06-28 01:15:32 +02:00
Jonas Kvinge f329b7239a Update README 2018-05-07 21:32:40 +02:00
Jonas Kvinge 0b8e1f89d7 Don't fail playback without replay gain 2018-05-01 14:00:26 +02:00
Jonas Kvinge ad2b567216 Fix playback of WavPack 2018-05-01 13:34:32 +02:00
Jonas Kvinge e337b7933b Includes, comments and bugfixes
- Fix includes
- Use common regex (Song::kCoverRemoveDisc) for removing Disc/CD from album
- Remove Disc/CD from album when creating hash
- Make imobiledevice support compile
- Fix setting device on windows
2018-05-01 00:41:33 +02:00
Jonas Kvinge 1b32e61aba Remove redundant code. 2018-04-07 12:19:01 +02:00
Jonas Kvinge 917b9c39b8 Fix paths
- Use QStandardPaths
- Load settings in StatusView widget
- Update about
- Remove redundant code
- Temporary hide missing audiopanorama error as workaround for windows build
2018-04-06 22:13:11 +02:00
Jonas Kvinge 43bf7e3ca8 Improvments to gstreamer backend and settings +++
- Fixed bug not setting environment for gstreamer before initialization
- Fixed windows directsound device
- Fixed crash on failure to create gstreamer element
- Fixed crash when switching backend
- Don't stop playback if equalizer or replay gain fails in gstreamer
- Improvments to backend settings
- Fixed backend settings to work for windows
- Fixed replay gain settings not working
- Fixed right click menu for album showing in statusview even when no song was playing
- Removed redundant code
2018-04-05 21:40:05 +02:00
Jonas Kvinge 1817127a90 Improvements to gstreamer backend.
- Use PlayBin instead of URIDecodeBin
- Change QUrl to QByteArray in pipeline
- Move URL stuff to FixupUrl() in GstEngine
2018-04-02 03:43:56 +02:00
Jonas Kvinge e5426500a8 Fix CD playback. 2018-03-10 13:00:09 +01:00
Jonas Kvinge b2b1ba7abe Initial commit. 2018-02-27 18:06:05 +01:00