Commit Graph

4151 Commits

Author SHA1 Message Date
chme 1dde41fb87 [mpd] Fix wrong db playime info in 'stats' command (#360) 2017-03-04 17:23:52 +01:00
ejurgensen 62cb07c73b Merge pull request #359 from chme/shuffle
[dacp] Always start playing from the beginning of the shuffle queue
2017-03-04 11:37:21 +01:00
chme 1dfca1ec22 [dacp] Always start playing from the beginning of the shuffle queue 2017-03-04 08:57:58 +01:00
chme 03e9182423 [spotify] Fix usage of "artist_override" config value 2017-02-26 11:04:04 +01:00
chme 9c90cbcd12 [db] Fix return value of db_queue_add_by_query 2017-02-26 11:04:04 +01:00
chme 82e216c931 Add missing FALLTHROUGH comments to switch-case statements
This allows to suppress code analysis warnings in IDEs for missing break
statements.
2017-02-26 11:04:04 +01:00
chme 50b28bde96 [filescanner] Remove unused scan_metadata_icy function declaration 2017-02-26 11:04:04 +01:00
chme 78975b1aa3 [filescanner_ffmpeg] Add doc to scan_metadata_ffmpeg 2017-02-26 11:04:04 +01:00
chme e4f25f9418 [filescanner_ffmpeg] Refactor: consolidate special handling for
http-streams
2017-02-26 11:04:04 +01:00
ejurgensen a89440253c Set theme jekyll-theme-slate 2017-02-26 00:51:07 +01:00
sshambar c54c909ae4 Added support for libav/ffmpeg dual installs (#346)
* [config] Added support for libav/ffmpeg dual installs

Reordered CPPFLAGS/LIBS so that library flags (includes etc) appear
ahead of prefix/global directives and the correct headers/libraries
are checked (if symbols are defined in alternative libraries).
Updated libav checks to use header declaration checks
rather than link checks (so differences between
libav/ffmpeg can be correctly found), and updated code references
to use new defines.  Added support the alternate pkg-config
package names for libav.  Updated ffmpeg vs libav check
to check MICRO version number (>=100 for ffmpeg).  Simplified
resulting configure script by using a function to merge
CPPFLAGS variables.

* [config] Use FORKED_OPTS prefix for libevent_pthreads option

* [config] Add --with-libav option to select libav even if ffmpeg present
2017-02-19 15:21:00 +01:00
ejurgensen ff49e176f2 [spotify] Fixup header path to json.h 2017-02-16 21:51:46 +01:00
Scott Shambarger c7855e7c55 [config] Min automake 1.11, support silent rules on automake < 1.13 2017-02-16 10:44:00 -08:00
ejurgensen 26c22144fc [-] Misc housekeeping (minor memleaks, invalid free's) 2017-02-12 01:19:56 +01:00
chme 3896f61d06 [dacp] Keep the now playing item in the queue when calling (#353)
playqueueedit_clear
2017-02-11 09:28:35 +01:00
ejurgensen 98348b8fe9 [pipe] Removing CHECK_NULL with malloc, scan-build not happy about it 2017-02-11 00:28:29 +01:00
ejurgensen f0c9843194 [pipe] Fix exit problem due to misuse of COMMAND_PENDING 2017-02-10 23:56:58 +01:00
ejurgensen d8255e1d08 [pipe] Fix minor memleak 2017-02-10 23:03:38 +01:00
ejurgensen 13e6889990 [cast] Use friendly device name from mdns announcement 2017-02-10 19:27:52 +01:00
ejurgensen d2fe608c72 [http_streaming] Reduce log severity if write returns EAGAIN, it
just means that pipe was temporarily full (ref issue #329)
2017-02-08 22:47:49 +01:00
ejurgensen 245ce1d4e4 [player] Allow starting playback with no outputs 2017-02-08 22:31:47 +01:00
ejurgensen 1f15fb1993 [pipe] Refactor pipe input, hopefully into a more thread safe version 2017-02-08 22:29:37 +01:00
ejurgensen e6793b4779 [player] Add player_playback_start_byid() function, will be needed for pipe input 2017-02-08 22:29:37 +01:00
ejurgensen f27fb53caf [input] Rename player source ->xcode to ->input_ctx, because any input may use it, not just transcode 2017-02-08 22:29:37 +01:00
ejurgensen a183463bb2 [spotify] Try to avoid image load callbacks from Spotify after timeouts,
since the artwork struct may have become invalid
2017-02-07 23:23:39 +01:00
ejurgensen 3a7ed96895 [misc] Adding missing header for non-Posix timer platforms 2017-02-07 23:22:38 +01:00
chme 1f4e474671 [spotify] Retrieve playlist tracks based on user country (#352)
This avoids adding unplayable items to the library and due to the active
track relinking should make additional tracks playable by linking to a
playable version of the track.
2017-02-05 13:56:12 +01:00
ejurgensen 18fe8fe0ef [pipe] Temporary "fix" for threading issues 2017-02-05 00:11:21 +01:00
chme 9680fa093a [db] Fix mpd command 'delete' removing to many items
Previously db_queue_delete_bypos iterated over the items and called
delete for each item. The delete also adjusted the pos/shuffle_pos
values for the remaining items. 

A delete of pos = 0 resulted therefor in:
- fetch item with pos = 0
- delete item at pos
- update remaining items to pos = pos - 1
- fetch item with pos = 0 (returns the new item at pos 0)
- delete item at pos
- ...
2017-02-04 08:37:58 +01:00
chme d293356d8b [db] Extract function to fix queue position values 2017-02-04 08:37:58 +01:00
chme 1c8263224e [db] Fix incorrect query for db_queue_delete_bypos 2017-02-04 08:37:58 +01:00
chme bd4e379f15 [dacp] Fix requests for cue_play with command = "play" 2017-02-04 08:35:02 +01:00
chme 4e4e91d4a2 [player] Add log messages in case playback_start_item returns -1 2017-02-04 08:35:02 +01:00
ejurgensen 9d8dbaffe1 [db] Fix typo (closes #347) 2017-02-01 18:56:34 +01:00
ejurgensen 8513c9416c [travis-ci] Update configuration file (fix package name) 2017-01-31 22:32:27 +01:00
ejurgensen 31bf0114b6 [travis-ci] Update configuration file 2017-01-31 22:27:01 +01:00
ejurgensen bbb3322ddc [spotify] Flush audio buffer on playback stop - and since we are
flushing from another thread we use evbuffer_enable_locking() which
in turn adds a requirement for libevent_pthreads to be present
2017-01-30 22:50:02 +01:00
ejurgensen 3ba2fb741b [docs] Update README with new pipe features 2017-01-29 22:09:28 +01:00
ejurgensen f7018dc659 [player] Skip/remove unplayable tracks in queue instead of aborting 2017-01-29 22:07:51 +01:00
ejurgensen 0af75217e9 Merge branch 'inputs1' - new input modules 2017-01-29 13:16:58 +01:00
ejurgensen b44ae55c1d Some scan-build fixing up 2017-01-28 22:37:56 +01:00
ejurgensen 12567d8e93 [pipe] Make Shairport metadata parser work with incomplete reads from pipe 2017-01-28 22:20:35 +01:00
ejurgensen 41c5ef1474 [compat] Suppress warnings about unused functions 2017-01-28 22:20:35 +01:00
ejurgensen b6f969d96e [pipe/mxml] Add compability with older versions of mxml 2017-01-28 22:20:35 +01:00
ejurgensen 97aa544945 [library] Move library update trigger to new library module 2017-01-28 22:20:35 +01:00
ejurgensen dc84294348 [input/pipe] Parse basic Shairport metadata using mxml 2017-01-28 22:19:51 +01:00
ejurgensen ea874154b2 [input/file_http] Use swap_pointers to transfer ownership of metadata 2017-01-27 22:36:00 +01:00
ejurgensen 67d0504700 [input] Let input_metadata_free zero metadata like the other free functions 2017-01-27 22:36:00 +01:00
ejurgensen c975cf4474 [misc] Set output of safe_xxx to 0 also in error cases (for safety) 2017-01-27 22:36:00 +01:00
ejurgensen ab06a9fd7d [player] Update info about player.c 2017-01-27 22:36:00 +01:00