ejurgensen
63c3d59d2f
[spotify] Preserve fine-grained errors from request_make()
2021-09-24 19:17:47 +02:00
ejurgensen
6692411040
[-] Fixup PR 1309 (usermark)
2021-09-17 22:58:21 +02:00
whatdoineed2do/Ray
4d5c256327
[db,jsonapi] revert usermark from queue item table
2021-09-16 10:43:55 +01:00
whatdoineed2do/Ray
16cf3cb44b
[jsonapi] use u32 types for parsing param: rating
2021-09-16 09:11:31 +01:00
whatdoineed2do/Ray
52d1ba7dd4
[db,jsonapi] remove DB_FILES_USERMARK_MAX
2021-09-15 08:40:07 +01:00
whatdoineed2do/Ray
d43ce017f5
[db,jsonapi,smartpl] db usermark flag review
2021-09-08 14:51:55 +01:00
whatdoineed2do/Ray
e65203e1e2
[db] expand file tbl's flag values
2021-09-07 11:49:24 +01:00
whatdoineed2do/Ray
ad573b8bc7
[db,jsonapi]] update api/library/tracks and db to accept 'flag' param
2021-09-06 20:15:35 +01:00
whatdoineed2do/Ray
5cbb5f061d
[smartpl] add review 'flag'
2021-09-06 20:15:35 +01:00
whatdoineed2do/Ray
4dcc9b602e
[db] add review 'flag' column to files/queue tbls
2021-09-06 20:15:35 +01:00
Christian Meffert
29cd5a7a19
Merge pull request #1286 from chme/spotify_podcasts
...
[spotify] Scan spotify podcast subscriptions into library
2021-09-04 12:06:26 +02:00
chme
d8a344d87c
Fix wrong check for NULL after creating smartpl parser
2021-09-04 09:55:11 +02:00
chme
ce3e79d804
[spotify] Move "has_podcast_support" to spotify_status and expose this
...
flag in the web API
2021-09-04 09:46:29 +02:00
chme
c58e792ff4
[spotify] Code format change
2021-09-04 09:46:28 +02:00
chme
f700935b57
[spotify] Add artwork support for episodes (podcasts)
2021-09-04 09:46:28 +02:00
chme
24450bc90a
[spotify] Scan spotify podcast subscriptions into library
2021-09-04 09:46:28 +02:00
ejurgensen
3f13ab1026
[pipe] Use fstat instead of lstat to fix time-of-check time-of-use warning
...
Fixes warning from CodeQL. Wasn't really a security issue since the check was
just a service to the user.
2021-09-02 00:17:22 +02:00
ejurgensen
de7ab1547f
[library] Remove needless stat() in scan_playlist()
...
Fixes time-of-check time-of-use warning from CodeQL
2021-09-02 00:12:18 +02:00
ejurgensen
54faa11ce5
[spotify] Update librespot-c so ./configure works with FreeBSD
2021-09-01 17:11:45 +02:00
ejurgensen
7584e6377f
[misc] Fix forgotten return in net_evhttp_bind()
...
Makes it impossible to use the bind_address config setting properly
2021-08-30 23:46:36 +02:00
ejurgensen
e1375f6ad6
[streaming] Clean up streaming_player_status_update()
...
Fixes compiler warning from newer versions of gcc + reduces malloc's
2021-08-27 16:46:08 +02:00
ejurgensen
774d7c36fd
[input] Logging changes
2021-08-18 01:00:17 +02:00
ejurgensen
f4983b8a11
[airplay] Add missing include of errno.h in the new events handling
...
Closes #1294
2021-08-14 21:13:50 +02:00
ejurgensen
b6835fac29
[airplay] Support for airplay events (eg Homepod controls)
...
Ref. issue #1181
2021-07-31 01:16:23 +02:00
ejurgensen
246d8ae0ce
[misc] Fix use-after-free in net_bind()
...
Thanks to Ba Jinsheng for reporting this bug
2021-07-31 00:55:48 +02:00
Christian Meffert
dc8e66109e
Merge pull request #1284 from chme/web-update
...
Web interface v1.1.0
2021-07-09 10:03:38 +02:00
Christian Meffert
81dafab4ac
Merge pull request #1283 from chme/smartpl-comment-field
...
[smartpl] Add "comment" field to smartpl expression language
2021-07-09 10:02:51 +02:00
Christian Meffert
3a9589c25b
Merge pull request #1282 from chme/httpd_webroot
...
[httpd] Dereference web root directory to allow symlinks
2021-07-09 09:56:06 +02:00
ejurgensen
d2f4efa1bf
[misc] Centralize thread naming plus name websocket thread
2021-07-05 21:40:31 +02:00
ejurgensen
eae09039d5
[spotify] Add missing include of config.h
2021-07-05 21:09:02 +02:00
chme
1e4728f6b1
[jsonapi] Expose "use_libspotify" config
2021-07-04 14:40:08 +02:00
chme
44c24cee0f
[jsonapi] Add "comment" field to track object
2021-07-04 12:03:05 +02:00
chme
467b169210
[smartpl] Add "comment" string field
2021-07-04 11:48:51 +02:00
chme
93b9740233
[httpd] Dereference web root directory to allow symlinks
2021-07-04 11:41:39 +02:00
ejurgensen
e18969ef75
[rsp] Interpret artist in queries as album_artist ( fixes #1263 )
2021-06-07 20:22:36 +02:00
ejurgensen
5d2d2ea227
[spotify] Add missing include of errno.h ( fixes #1267 )
2021-06-05 21:10:22 +02:00
ejurgensen
9fbbf9836c
[spotify] Submit actual system info to Spotify
2021-06-05 21:09:44 +02:00
ejurgensen
4463d4e7d8
[-] Fix build with old libgcrypt versions (eg Buster's) with no pkg-config
2021-06-01 20:29:16 +02:00
ejurgensen
6f0fef6179
[spotify] Reintroduce libspotify support, change spotifyc to librespot-c
...
Select use of either libspotify or librespot-c as streaming backend via config
option.
librespot-c (renamed/improved spotifyc) impl has the following:
- sync interface
- seek support
- honor bitrate config, set client and thread name
- use web access token with "streaming" scope for login
- fix issue with podcast playback
Also say goodbye to file-based Spotify login.
2021-05-31 23:24:58 +02:00
ejurgensen
2bbc5f16c5
[xcode] Add support for seekable custom I/O (evbuffer input to transcode)
2021-05-31 11:55:32 +02:00
ejurgensen
57449a126a
[xcode] Merge avio_evbuffer into transcode
...
Only used by transcode anyway. Makes it easier to add custom seek for evbuffer.
2021-05-31 11:55:32 +02:00
ejurgensen
b058f47ffb
[input] Also log input buffer threshold in debug mode
2021-05-31 11:55:32 +02:00
ejurgensen
a67c74ba6c
[spotify] Introduce own spotifyc as replacement for libspotify
2021-05-31 11:54:30 +02:00
ejurgensen
d3cc8a52f8
[mpd] Minor fixup
2021-05-28 16:57:57 +02:00
ejurgensen
c96dc1fcff
[dacp] Fix support for device-volume (speaker volume buttons)
...
Closes #613
2021-05-26 23:20:40 +02:00
ejurgensen
d2187d0ace
[db] Partially revert commit aaffa4a
so that source sort tags are used again
...
Fix for issue #1257
2021-05-25 23:44:53 +02:00
ejurgensen
684c23a044
[db] Fix error where adding Spotify track to queue returns "0 tracks added"
...
Caused by queue_item_add returning >0 as success, but caller is expecting ==0.
Try to avoid other occurancess of this issue by generally checking for error
("ret < 0") instead.
2021-05-24 21:55:09 +02:00
ejurgensen
5fdace5195
[web] Remove verbose listener_cb() logging added in commit f939215
2021-05-21 23:43:00 +02:00
ejurgensen
28f8ff5253
[web] Fix libwebsocket 2.0 (Debian Buster) incompability added in commit 1a56255
2021-05-21 19:59:12 +02:00
ejurgensen
5de0533232
[airplay] Add mdns txt for Sonos Symfonisk
2021-05-21 18:50:28 +02:00
ejurgensen
1a56255c54
[web] Fix for websocket server only listening on ipv6 on FreeBSD
...
Credit @luusl
2021-05-21 16:13:44 +02:00
ejurgensen
5128d9478a
[misc] Fix for evhttp_bind_socket not supporting dual stack ipv4/6 on BSD
2021-05-20 21:01:00 +02:00
ejurgensen
c1db4d914f
[http] Also allow remote playlists to have https streams ( fixes #1251 )
...
Fix it by adding net_is_http_or_https() utility function in misc.h and make
sure it used whenever a http protocol check is made.
2021-05-19 22:53:25 +02:00
Christian Meffert
f93921554e
Merge pull request #1243 from luusl/enhance_websocket
...
Improve the websocket to send events to clients immediately.
2021-05-19 20:32:08 +02:00
taku0220
4d22cb05b3
[scan]Add sort tags for ALAC
2021-05-19 03:02:08 +09:00
martin
f3e5400caf
Libwebsockets 2.x compatibility
2021-05-17 12:47:57 +02:00
martin
a15edfcae9
Improve the websocket to send events to clients immediately.
2021-05-13 22:54:11 +02:00
ejurgensen
520a1251ec
[-] Change forked-daapd -> owntone in src/.gitignore
2021-05-06 20:48:52 +02:00
ejurgensen
a93455b5a9
[cfg] Rename configure macros FORK -> OWNTONE
2021-04-24 23:54:20 +02:00
ejurgensen
5f1686695a
[-] Name update forked-daapd -> owntone throughout the code
2021-04-24 23:54:20 +02:00
ejurgensen
f61665b81d
[-] Rename source and target names from forked-daapd to owntone
2021-04-24 23:54:20 +02:00
ejurgensen
89807b61ed
[input] Fix possible segfault-on-exit
...
Could occur if killed during playback (because input_stop() is async, thus
referencing cmdbase after it is destroyed)
2021-04-22 17:00:36 +02:00
luusl
8a1f85a14e
Fixed potential crash on pulseaudio sink info callback, when an error
...
occurs.
2021-04-12 13:11:47 +02:00
ejurgensen
f77161b5c2
[jsonapi] Get currently playing queue item details ( closes #1206 )
...
Add now_playing shorthand, so that /api/queue?id=now_playing returns the
currently playing queue item info.
2021-04-05 08:49:27 -07:00
ejurgensen
1fafab12e3
[xcode] Fix for "Invalid return value 0 for stream protocol" log msg
...
Custom avio must not return 0, see https://patchwork.ffmpeg.org/project/ffmpeg/patch/20171025082258.32530-2-george@nsup.org/
2021-04-05 09:57:50 +02:00
ejurgensen
c7faefe1f8
[docs] Change git links: owntone/forked-daapd -> owntone/owntone-server
2021-04-01 22:09:26 +02:00
ejurgensen
790c9dcca9
[misc] Define SOCK_NONBLOCK and SOCK_CLOEXEC if platform doesn't
2021-04-01 01:45:09 +02:00
ejurgensen
64d6b0d4c3
[raop] Fix scan-build make warning after removing switch in commit 98dad07
2021-04-01 01:21:11 +02:00
ejurgensen
ba8b752a9b
[misc] Fix macOS build (doesn't have SOCK_CLOEXEC)
2021-04-01 00:01:12 +02:00
ejurgensen
ed6176062a
[airplay] Logging adjustments
2021-03-31 23:55:25 +02:00
ejurgensen
d2a5f939f5
[mpd] Bind via misc.c's net_xxx methods
2021-03-31 23:55:25 +02:00
ejurgensen
d4711decdc
[httpd] Bind via misc.c's net_xxx methods
2021-03-31 23:55:25 +02:00
ejurgensen
11151affbd
[misc] Add net_evhttp_bind() for centralizing libevent based binding
2021-03-31 23:55:25 +02:00
ejurgensen
c423f3af91
[cfg] Add websocket_interface option
2021-03-31 23:55:25 +02:00
ejurgensen
e5fcfc6574
[cast] Use net_connect() instead of own cast_connect()
2021-03-31 23:55:25 +02:00
ejurgensen
98dad07b7f
[airplay] Convert services to dual stack, plus use net_connect() and net_bind()
2021-03-31 23:55:25 +02:00
ejurgensen
f3febb63d9
[raop] Convert services to dual stack, plus use net_bind() and net_connect()
2021-03-31 23:55:25 +02:00
ejurgensen
dfc1580f13
[misc] Add logging of net_connect() service
2021-03-31 23:55:25 +02:00
ejurgensen
dd0f0ece78
[mdns] Remove ipv4/ipv6 argument to mdns_browse
...
Make sure mdns_browse() always works the same, and follows user config.
2021-03-31 23:55:25 +02:00
ejurgensen
7871d71a9c
[misc] Add utility network functions, incl configurable addr binding
...
Also make misc.c/h a bit less messy.
2021-03-31 23:55:25 +02:00
ejurgensen
3673aa7215
[player] Protect against crash if very first input_write() is FLAG_ERROR
2021-03-31 22:20:56 +02:00
ejurgensen
daa0652e7b
[docs] Rename repo: ejurgensen -> owntone
2021-03-30 23:39:07 +02:00
ejurgensen
75f6c72003
[misc] Correct comment
2021-03-27 22:44:16 +01:00
ejurgensen
9c3887a80f
[commands] Add missing include
2021-03-27 22:44:02 +01:00
ejurgensen
19635e61ec
[httpd] Fix scan-build make warning from commit 3a03c74
...
Potential buffer overflow
2021-03-15 21:59:40 +01:00
chme
3a03c74f91
Deny access to files outside the web root directory
2021-03-14 09:08:16 +01:00
ejurgensen
363bd5644b
[pipe] Support for Shairport sync metadata flush event
2021-03-12 19:48:01 +01:00
ejurgensen
bbe7526414
[airplay] Update pairing modules (pair_ap 0.2)
2021-03-07 23:02:14 +01:00
Peter Salas
8ba35dfa19
[scan] Remove leftover iTunes #ifdefs
2021-02-28 08:31:16 -08:00
ejurgensen
036100eecd
[cast] Length check of protobuf messages just to be safe
2021-02-17 22:45:45 +01:00
ejurgensen
13be7999cb
[db] Add some headers in db_upgrade.c for easier navigation
2021-02-10 20:05:56 +01:00
ejurgensen
bd91a238ec
[db] Upgrade schema to 21.06, change default of query_limit to 0
2021-02-10 20:04:56 +01:00
ejurgensen
79b4a070b0
[db] Change type of "disabled" to int64
...
Before the value in the db was not read straight into mfi->disabled and
pli->disabled, instead it was evaluated as != 0, so the ->disabled field
would just be true or false. This was also necessary when INOTIFY_FAKE_COOKIE
(1 << 32) was written to the DB, because it could not fit in the uint32 of
mfi->disabled/pli->disabled.
I consider this juggling poor practice, so with this change it is read straight
in and out, always as a int64.
2021-02-09 15:16:06 +01:00
ejurgensen
b6163c9d34
[db] Fix bug in bind_generic, input to sqlite3_bind_int64 should be int64_t
2021-02-09 15:16:06 +01:00
ejurgensen
1fa1d9091b
[db] Consolidate setting struct fields from database queries
2021-02-09 15:16:06 +01:00
ejurgensen
689d1ce3dd
[db] Refactor queue_item functions
...
- Use prepared statements
- Add qi_mfi_map that defines mapping between mfi, dbmfi and qi
- Use qi_cols_map/qi_mfi_map for iteration (avoid duplicating field references)
- Stick to "qi" as name for a queue_item in db.c (more similar to mfi/pli/gri)
- Some renaming and other minor stuff in db.c's queue code
2021-02-09 15:16:06 +01:00
ejurgensen
76c52bba3b
[rsp] Add ALAC as a codec Roku supports (ref issue #1182 )
2021-01-29 20:31:53 +01:00
ejurgensen
ac6d87656a
[airplay] Change recommended airplay2-receiver repo
2021-01-29 20:30:22 +01:00
chme
f75947f29a
[db] Remove break after v2103 update and directly run update for v2104
...
The break results in the ugrade stopping at v2103 and only after another
restart of forked-daapd the update to v2104 happens. Removing it will
directly update to the latest DB version.
2021-01-23 16:32:41 +01:00
ejurgensen
728d253e1f
[jsonapi] Make updating of currently playing track metadata easier
...
Update to commit #aaffa4a that makes it easier to update currently playing
track, user can use "now_playing" instead of getting the queue item id.
2021-01-21 22:46:19 +01:00