chme
7dd8955a92
[filescanner] Add http stream to the library prior to adding to a
...
persistent playlist
2018-04-15 22:09:28 +02:00
chme
60ebac076b
Refactor adding non library items to the queue
...
Instead of asking a client to first scan the path into a media_file_info
object and afterwards add it to the queue, we now offer a library
function to directly add a path.
The library-source that can handle the given path translates the path
into new queue item(s) and adds them to the queue.
2018-04-15 22:09:28 +02:00
ejurgensen
acd5bd3272
[raop] Always try to get volumes from devices at keep_alive intervals
...
Should be ok, even if the device does not support GET_PARAMETER for
volume, no harm done, we will just stop querying.
2018-04-14 22:19:53 +02:00
ejurgensen
d9a67b6dce
[raop] Use GET_PARAMETER of volume to keep connection alive and get speaker volume
2018-04-11 22:29:07 +02:00
chme
879307f3ac
[smartpl] Support "starts with" operator for string fields
2018-03-17 13:23:48 +01:00
ejurgensen
ea4ea072cd
Merge pull request #499 from chme/jsonapi
...
New endpoints for the JSON api (library, queue)
2018-03-17 09:38:02 +01:00
chme
a78ed20848
[jsonapi] Add new JSON api endpoints
...
Allows
- browsing artists/albums/playlists
- search
- moving a queue item
2018-03-14 19:22:13 +01:00
chme
d1b47465a8
[jsonapi] Disable gzipping response
...
An attempt to improve the performance of the artists and albums
endpoints.
2018-03-14 19:21:57 +01:00
chme
66bdb7c0a9
[db] Add function to get a human readable string for data and media kind
2018-03-14 19:21:57 +01:00
chme
d59e62312a
[httpd] Allow cross origin POST, PUT, DELETE, OPTIONS requests
...
If the web interface is hosted on a different server, this is required
to allow sending e. g. post/put requests to control outputs.
2018-03-14 19:12:20 +01:00
chme
a764fb3c52
[httpd] Serve index.html if requested source is a directory
...
Defaults to an index.html file instead of redirecting to admin.html. It
will not redirect to index.html, but instead serve the file (if exists)
directly. This allows nicer uris in the webinterface.
We will still redirect to admin.html if no index.html is found for
requests to http://ip:port/
2018-03-14 19:12:20 +01:00
ejurgensen
e79beb6877
[httpd_daap] Workaround for Android "Remote for iTunes" requesting playlist 0
...
See issue #505
2018-03-11 22:40:07 +01:00
chme
2b5fa56bf9
[dacp] Add missing call to "db_queue_enum_end" in error case
2018-03-08 21:50:41 +01:00
chme
f47a17e186
[db] Remove unused function "db_queue_get_pos_byfileid"
2018-03-08 21:50:41 +01:00
ejurgensen
50c6d3f272
[db] Silence misleading log error message
...
We were logging a missing lastfm_sk in the admin table as
an error, which it really isn't
2018-03-03 20:13:09 +01:00
ejurgensen
ea6fd1476a
[db] Improve speed of browse queries (issue #478 )
...
Before, we returned either unordered (for RSP, meaning client had to
sort) or ordered by a client selected sort_clause[]. The latter are
multi-purpose and therefore not optimised for browse queries.
To speed up, we predefine the entire set of browse queries, including
order, with matching indices. The predefined queries are used except
if the client explicitly requests a non-default order or query.
As a special bonus, the commit also allows queries with I_SUB that
have an offset but no limit.
2018-03-02 21:11:31 +01:00
ejurgensen
121b812c30
[transcode] Lower log level of "will transcode" messages
2018-03-02 20:51:33 +01:00
chme
cd96ec579a
[db/library] Use "PRAGMA optimize" instead of "ANALYZE"
...
ANALYZE collects and saves statistics even if there were no database
changes and the last collected data is still good.
According to the sqlite3 documentation, it is recommended to use "PRAGMA
optimize" which will call "ANALYZE" if it is necessary. "PRAGMA
optimize" will run "ANALYZE" based on prior queries on the same database
connection. It is recommended to run optimize before closing the
connection.
(see https://www.sqlite.org/lang_analyze.html )
2018-02-26 18:41:28 +01:00
ejurgensen
666af127d5
[raop] Fix gcrypt error handling in raop_verification.c
...
And I learnt that gcrypt doesn't follow the negative-on-error pattern
2018-02-22 22:36:50 +01:00
ejurgensen
c2a563eec7
[main] Remove build date so there will be no complaints about non-producible builds
2018-02-22 22:16:22 +01:00
ejurgensen
f386c13bd9
[pipe] Add forgotten include of config.h
2018-02-22 22:11:42 +01:00
ejurgensen
6a56c19ad5
[pipe] Add forgotten include of pthread
2018-02-22 22:03:37 +01:00
ejurgensen
6c2ee276de
Merge pull request #495 from chme/fixwarnings
...
Fix compiler warnings
2018-02-22 21:52:17 +01:00
ejurgensen
b1c9518a78
[-] Make json-c a required library
...
Already kind of was required, as it was required by Spotify, Chromecast and the web api
2018-02-22 21:49:11 +01:00
chme
30aa4cf525
[db] Fix comments
2018-02-22 21:36:14 +01:00
chme
8b2d40d46f
Initialize local variables to silence OpenWrt compiler warnings
2018-02-22 21:35:38 +01:00
chme
1212723072
[jsonapi] Do not set "DAAP-Server" header in json api response
2018-02-15 19:19:13 +01:00
chme
0e9feac829
[jsonapi] Rework outputs endpoint and strictly match uris by request
...
method
2018-02-15 19:19:13 +01:00
chme
83bb06225b
[misc] Add helper function to check if a key with a given type exists
2018-02-15 19:19:13 +01:00
chme
1379ef235c
[httpd] Support assigning request methods to uri handlers
2018-02-15 19:19:13 +01:00
chme
a98713ba49
[jsonapi] Return proper HTTP status codes
2018-02-11 10:55:11 +01:00
chme
d4b05e98ae
[httpd] Add PUT and DELETE to the allowed http request methods
2018-02-10 10:39:32 +01:00
chme
43887d160f
[mpd] Refactor commands to enable/disable/toggle/volume for outputs
2018-02-10 09:04:18 +01:00
chme
decf9f1329
[player] Add commands to enable/disable output
2018-02-10 09:04:18 +01:00
chme
93879c6f90
[player] Refactor speaker enumerate callback
2018-02-10 09:04:18 +01:00
chme
94fd370df2
[player] Simplify parameter passing to player commands
2018-02-10 09:04:18 +01:00
chme
d36e6ac5ab
[player] Refactor speaker_set/speaker_activate
2018-02-10 09:04:18 +01:00
chme
f2659d995b
[player] Refactor speaker_set/speaker_deactivate
2018-02-07 21:04:47 +01:00
ejurgensen
e70f9623db
[filescanner] Update ffmpeg id3 tag mapping, include grouping tags
2018-01-31 21:46:17 +01:00
ejurgensen
0b3f4dfa15
[transcode] Ignore some errors from avcodec_send_packet(), fixes #483
...
Since the stream can at least in some cases be transcoded anyway
2018-01-26 22:37:28 +01:00
Scott Shambarger
49c88a9cc5
[configure] Fixed make distcheck
2018-01-25 21:52:20 -08:00
ejurgensen
c23f2c01b2
[scan] Fix bugs related to iTunes XML playlists
...
1) They would get disabled after rescan
2) Playlists and playlistitems didn't get cleaned up
2018-01-25 22:26:00 +01:00
ejurgensen
e1fb3607e9
[scan] Treat playlists with mtime==db_timestamp as modified + better virtual_path for iTunes XML playlists
...
Should fix a problem where saving a playlist with gedit was not picked up by forked-daapd as a modification
2018-01-24 21:36:50 +01:00
ejurgensen
4000d15778
[main] Add cmd line options to disable mdns announcements + update man page
2018-01-14 19:46:19 +01:00
chme
18a6372fb1
[dbperf] Use sqlite3_trace_v2 instead of deprecated sqlite3_profile
...
Set log severity depending on how long the query was running and return
early if log level is lower than the current one.
2018-01-13 11:05:58 +01:00
chme
c747456880
[logger] Expose log severity
2018-01-13 10:51:48 +01:00
ejurgensen
4da45bdfab
[httpd] Parser should allow queries that are not key/value
...
E.g. http://prem3.di.fm:80/progressive_hi?my_premium_key
2018-01-08 20:13:05 +01:00
ejurgensen
45d193e56c
[scan] Use open()/close() instead of euidaccess() to support ACL's
...
Fixes #474
2018-01-06 20:10:34 +01:00
ejurgensen
8d043dd9e9
[http] Temporary fix for bug in commit 8f899f2
...
See 8f899f2051 (commitcomment-26433079)
2018-01-02 21:20:28 +01:00
ejurgensen
f71028b25d
Merge pull request #477 from chme/player
...
[player] Check player state in stop and pause commands
2017-12-30 12:53:43 +01:00