Commit Graph

4151 Commits

Author SHA1 Message Date
ejurgensen ae1f2d75d3 [pipe] Prepare reading and parsing Shairport metadata pipes 2017-01-27 22:36:00 +01:00
ejurgensen 8b5cac0538 [file/http/input] Implement metadata handling through input interface 2017-01-27 22:36:00 +01:00
ejurgensen 0b9b008a1a [player] Try to consolidate metadata handling + use input interface 2017-01-27 22:36:00 +01:00
ejurgensen 7b6a7b65b3 [input] Add interface for getting metadata from input modules 2017-01-27 22:36:00 +01:00
ejurgensen 2696b27972 [artwork] Let the artwork handler for streams use queue->artwork_url instead of calling the player, which was messy 2017-01-27 22:36:00 +01:00
ejurgensen 4d4a4ffd70 [db] Remove special icy update function, add db_queue_update_item()
- we will use the latter generalised form from now on, even though it is perhaps a tad slower
2017-01-27 22:36:00 +01:00
ejurgensen e92152cadb [db] Upgrade db to 19.03: Add artwork_url column to queue table 2017-01-27 22:36:00 +01:00
ejurgensen 40d50d693b [misc] Add small function to swap pointers 2017-01-27 22:36:00 +01:00
ejurgensen ee32b9cb70 [pipe] Reset pipes when required + prepare for metadata pipes 2017-01-27 22:36:00 +01:00
ejurgensen 90f37b75ce [player] Fix it so source_read() returns silence and not an error until source_check stops playback 2017-01-27 22:36:00 +01:00
ejurgensen 9fb62441d2 [pipe] Use worker thread instead of filescanner for watching pipes 2017-01-27 22:36:00 +01:00
ejurgensen 061beaf272 [worker] Make sure worker accepts NULL-arguments 2017-01-27 22:35:16 +01:00
ejurgensen 7f7207bb87 [pipe] Pipe input interface (wip) 2017-01-27 22:35:15 +01:00
ejurgensen acc67338a1 [input] Add a buffer full callback for the player 2017-01-27 22:35:15 +01:00
ejurgensen aa8edeead4 [player] Add suspend/resume on underrun + misc fixing up 2017-01-27 22:35:15 +01:00
ejurgensen 18918ce489 [db] Rename db_file_save_seek -> db_file_seek_update 2017-01-27 22:35:15 +01:00
ejurgensen 6af8fa07b4 [spotify] Use timespec_reltoabs instead of internal mk_reltime 2017-01-27 22:35:15 +01:00
ejurgensen 6db4e40119 [misc] Add function to add a relative time to current clock 2017-01-27 22:34:15 +01:00
ejurgensen 9aede45a12 [pipe] Add a pipe input with autostart capabilities 2017-01-27 22:30:47 +01:00
ejurgensen 938e197fa4 [player] Refactor read/write
- remove read skip which is obsolete when input has own thread and cannot block
- simplify code
- fix while loop that could loop infinitely
2017-01-27 22:29:08 +01:00
ejurgensen 1258481202 [listener] Rename LISTENER_PLAYLIST to LISTENER_QUEUE 2017-01-27 22:25:32 +01:00
ejurgensen 60daf03f66 [cache/scan] Let notifications from db.c about library updates go through
filescanner/listener instead of directly to the cache
2017-01-27 22:25:32 +01:00
ejurgensen 79639c73ed [input] Add Spotify input module 2017-01-27 22:08:56 +01:00
ejurgensen c92ebf9dfb [player] Fix problem where player_playback_cb triggers after playback stop 2017-01-27 22:01:24 +01:00
ejurgensen 3e24f857fa [input] Add input interface to player - WIP 2017-01-27 22:01:24 +01:00
ejurgensen c50b038397 [misc] Move STOB and BTOS macros to misc.h 2017-01-27 22:01:24 +01:00
ejurgensen 171a75375b [outputs] Fix for (unlikely) situation where all outputs have no init() 2017-01-27 22:01:24 +01:00
ejurgensen 41aa530fd3 [http] Add support for http post in the libevent client (required for scrobbling) 2017-01-25 22:52:11 +01:00
ejurgensen db4068f046 [artwork] Hardcode destination pixel format for png rescaling since
avcode_find_best_pix_fmt_of_list() does not live up to its name
(fixes issue #345)
2017-01-25 21:02:41 +01:00
ejurgensen 084de7811e [raop] Fix missing uint64 cast, which since commit fdd85cc was giving too short song lengths 2017-01-23 23:41:10 +01:00
sshambar 297de6d86c [osx] Added INSTALL instructions for macports (#344)
Also fixed antlr3_install.sh to handle missing /usr/local/bin
2017-01-23 22:13:50 +01:00
sshambar bc4b046897 [logger] Add missing include (#342) 2017-01-23 08:41:23 +01:00
ejurgensen 36d9051a91 [misc] Fixup coding style 2017-01-22 23:47:45 +01:00
ejurgensen 5dc8eea4c2 [main] Re-include pthread.h that was removed in pr #334, needs to be
here because it is used by the gcrypt macro
2017-01-22 23:35:38 +01:00
ejurgensen 91ae0c1ec6 Merge pull request #341 from sshambar/fixscripts
Updated pairing and antlr install scripts
2017-01-21 21:56:39 +01:00
ejurgensen f7bd6fc447 Merge pull request #335 from sshambar/fixosx
OSX patches
2017-01-21 21:56:16 +01:00
Scott Shambarger 07c40a27ea [scripts] Update antlr35_install to support non-sudo install, more options.
Added support for using curl in addition to wget. Added support for compiling
as non-root, and installing later as root w/o sudo.  Added GNU Make check.
Made all downloads and urls vars at top of script.  Added usage.
Allow cancelling downloads, or using exiting downloaded files (offline).
Allow setting any install prefix. Auto-detect if on 64bit OS.
Better handling of various errors.
2017-01-21 15:37:24 -05:00
Scott Shambarger 37b1678103 [scripts] Minor updates to pairinghelper.sh option parsing 2017-01-21 15:36:42 -05:00
Scott Shambarger 2cf2eb32aa [scripts] Updated pairinghelper.sh to handle repeated attempts at pairing
Added Usage help, allow a custom config-file, provide better feedback
with unable to read logs or write to media directory.  Fixed log parsing
to only look for pairing success or failure after most recent remote
discovery to allow repeated pairing attempts (possibly with different
remotes).  Better timeout handling, especially as FreeBSD has a delay
in processing the pairing file.
2017-01-21 13:10:59 -05:00
Scott Shambarger 836320518b Merge branch 'master' into fixosx 2017-01-21 13:04:38 -05:00
ejurgensen 8ffdd6dd86 Merge pull request #334 from sshambar/fixthreads
[threads] Added missing initializers, check errors on mutex/cond calls
2017-01-21 18:53:51 +01:00
Scott Shambarger a837389ac5 Minor change: remove unused include, init variable. 2017-01-21 08:51:51 -08:00
Scott Shambarger 6f7355dfce Merge branch 'fixthreads' into fixosx 2017-01-21 10:38:47 -05:00
sshambar b128271656 Merge branch 'master' into fixthreads 2017-01-21 10:27:26 -05:00
Scott Shambarger 8e3797ec43 [threads] Update mutex/cond functions to use new CHECK_ERR macros
Added various macros to check return values and log any errors and abort
if the call fails.
Updated logging to handle early errors before logging initialized.
2017-01-21 07:11:20 -08:00
chme e092a9ff3e [spotify] Respect settings for 'artist_override' and 'album_override' (#340)
when scanning spotify through the web api

The goal is to reduce the artist/album cluttering that happens because
of the users spotify playlists. If 'artist_override' is true, all tracks
not in a saved album are treated as part of a compilation giving them
the configured album-artist (e. g. "Various artists"). I
'album_override' is true, tracks not in a saved album will use the
playlistname as albumname.
2017-01-21 10:17:33 +01:00
chme 62dd1bb407 [travic-ci] Added configuration file for travis-ci (#339)
Builds different configuration with scan-build reporting failure if
scan-build found issues. Due to the ANTLR3 generated files the checker
deadcode.DeadStores needs to be disabled or all builds will fail.
2017-01-21 10:13:40 +01:00
ejurgensen 516a6f434c Merge pull request #337 from chme/libraryfix
Fix memory leaks / scan-build issues
2017-01-20 19:15:04 +01:00
chme 6163269832 [dacp/db] Fix issue found with scan-build
- Result of operation is garbage or undefined in dacp_reply_cue_play
- Uninitialized argument value in dacp_reply_playqueuecontents
- Uninitialized argument value in queue_fetch_byposrelativetoitem
2017-01-20 19:00:11 +01:00
chme 4e869f6fda [dacp] Fix indentation 2017-01-20 19:00:11 +01:00