Commit Graph

4879 Commits

Author SHA1 Message Date
ejurgensen
a4f9bb576d [xcode] Increase read timeout 15s -> 30s (ref. issue #728) 2019-11-02 08:56:10 -07:00
ejurgensen
98e779094d Add Visual Studie Code specific files to gitignore 2019-11-02 08:53:29 -07:00
Christian Meffert
1455057170
Merge pull request #835 from chme/gitignore
Add Eclipse CDT specific files to gitignore
2019-11-02 08:01:16 +01:00
chme
3458fb3d42 Add Eclipse CDT specific files to gitignore 2019-11-02 07:59:21 +01:00
Christian Meffert
cafdb96329
Merge pull request #833 from chme/cache_control
[httpd] Force browsers to always revalidate their cache
2019-11-02 07:57:55 +01:00
ejurgensen
00b6770658 [docs] README update, Apple Music should work now 2019-11-01 15:51:05 -07:00
ejurgensen
40c7522baa [db] Make Apple Music on Catalina work - part 2 (fix for issue #834)
Extends the playlist table with media_kind to handle playlist queries like
this from Apple Music:

/databases/71/containers?session-id=12345678&revision-number=4&delta=0&query=('dmap.itemname:Library%20name','com.apple.itunes.extended-media-kind:1','com.apple.itunes.extended-media-kind:32','com.apple.itunes.extended-media-kind:128','com.apple.itunes.extended-media-kind:65537')&meta=dmap.itemid,dmap.itemname,dmap.persistentid,dmap.parentcontainerid,com.apple.itunes.is-podcast-playlist,com.apple.itunes.special-playlist,com.apple.itunes.smart-playlist,dmap.haschildcontainers,com.apple.itunes.saved-genius,dmap.objectextradata
2019-11-01 15:44:53 -07:00
ejurgensen
a69e79e5ec [daap] Make Apple Music on Catalina work - part 1 (fix for issue #834)
Like with iTunes, it has adverse effects to announce support for DAAP groups,
so with this change we also check if user-agent is "Music" before deciding what
to announce.
2019-11-01 15:43:56 -07:00
Christian Meffert
846aa98df2
Merge pull request #832 from chme/webupdate
Update player web interface to v0.5.6
2019-10-27 08:59:51 +01:00
chme
49e3647a36 [htdocs] Rebuild player web interface v0.5.6 2019-10-27 07:43:42 +01:00
chme
584456800c [web-src] Add VSCode specific files to gitignore 2019-10-27 07:43:42 +01:00
chme
f1742b18b3 [web-src] Fix multiple triggering of navbar-links routes 2019-10-27 07:43:42 +01:00
ejurgensen
dd24c35b2f [misc] Add missing comparison in quality_is_equal() 2019-10-26 23:30:44 +02:00
ejurgensen
051e526b2c [pipe] Disallow 24 bit input, doesn't work currently
If 24 bit input needs to be transcoded, like it will for AirPlay, it
will fail in transcode.c, because XCODE_PCM24 actually produces 4-byte
samples.
2019-10-26 23:28:05 +02:00
chme
662bfa529b [httpd] Force browsers to always revalidate their cached versions
Setting Cache-Control to "no-cache" tells a client to always make a
request to check if the version in the client cache is still valid
(response code 403 not modified).
2019-10-26 12:01:15 +02:00
chme
f500b21c94 [web-src] Add autocomplete="off" to search field 2019-10-26 11:51:57 +02:00
chme
7a236a21b8 [web-src] Disable play/pause/etc. buttons if queue is empty 2019-10-26 10:08:38 +02:00
chme
e8ead500c5 [web-src] make outputs and settings buttons clickable 2019-10-26 09:23:51 +02:00
chme
1631aa04c6 [web-src] Add vue-click-outside as a dependency 2019-10-26 09:23:45 +02:00
ejurgensen
85ab7c3057 [alsa] Fix playback of 24 bit audio (issue #830)
The player will write 24 bit samples using 3 bytes, not 4, so the appropriate
sample format is SND_PCM_FORMAT_S24_3LE, not SND_PCM_FORMAT_S24_LE.

For extra protection we also use snd_pcm_bytes_to_frames() instead of BTOS(),
because that way we can be more certain that the buffer is not too short for
snd_pcm_writei().
2019-10-22 19:51:51 +02:00
ejurgensen
41f51d43ac [pipe] Allow configuration of 32 bit input format (issue #830)
Should work with e.g. arecord -f S32_LE -r 96000 -c 2 -t wav
2019-10-21 21:54:12 +02:00
ejurgensen
ef1c24f227
[docs] Update README client compability: Apple Music not working
Apple Music on macOS not working, see issue #785
2019-10-20 14:53:22 +02:00
chme
4c835f4435 [player] Remove dead code and rework check if fetching queue item failed 2019-10-20 14:36:21 +02:00
chme
69d3c97b7e [player] Fix freeing of queue item if error happens during seek
Plus fix some code style issues and add more documentation
2019-10-20 14:36:21 +02:00
chme
779e5b8617 [README] Add new seek parameter to JSON API documentation 2019-10-20 14:36:21 +02:00
chme
6e5d6791ff [player/dacp/mpd/jsonapi] Combine seek commands into one with mode param
Also changes relative seeking behavior:
- seeking behind the the current track only switches to the previous
track, if we are not more than 3 seconds into the current track,
otherwise starts current track from the beginning
- seeking beyond the current track will start the next track from the
beginning
2019-10-20 14:36:21 +02:00
chme
d69f328973 [jsonapi] Support relative seeking 2019-10-20 14:36:21 +02:00
chme
ced11ef0c1 [player] Allow seeking by a relative amount of milliseconds 2019-10-20 14:36:21 +02:00
ejurgensen
e13185c1bf
Merge pull request #831 from chme/pipe_artwork
Show pipe artwork in player web interface
2019-10-20 14:33:03 +02:00
Christian Meffert
dc9e6d73e1
Merge pull request #826 from roblan/patch-1
[web-src] update .browserlistrc file
2019-10-20 08:48:10 +02:00
chme
dc9396886c [jsonapi] Set correct artwork url for pipe input 2019-10-20 08:39:18 +02:00
chme
7e6b8f740d [db] Add missing mapping of queue version into queue item on fetch 2019-10-20 08:38:40 +02:00
roblan
1ac2f43734
[web-src] update browserlistrc file 2019-10-08 21:16:24 +02:00
ejurgensen
547222ec2b
Merge pull request #821 from chme/master_vol
[player] Fix missing update of master volume in web interface
2019-09-26 22:17:37 +02:00
ejurgensen
a08e08c63a
Merge pull request #820 from chme/outputs_toggle
New JSON API endpoint for toggling outputs
2019-09-26 22:17:19 +02:00
chme
e3edcb5b96 [player] Fix missing update of master volume in web interface
Activating/deactivating an output might change the master volume,
therefor send a volume change notification.
2019-09-26 08:11:29 +02:00
chme
37b7a2952b [README] Add documentation for toggle outputs endpoint 2019-09-26 08:03:28 +02:00
chme
2846287169 [jsonapi] Add endpoint "/api/outputs/{id}/toggle" to toggle outputs 2019-09-26 08:00:03 +02:00
ejurgensen
5d93fd5042
[docs] Update README with note about Debian package not including web UI 2019-09-23 21:35:57 +02:00
ejurgensen
8cff93ce55 [streaming] A bit of fixing up 2019-09-22 23:08:35 +02:00
whatdoineed2do/Ray
586dc4342d [streaming] mem leak fix on client initiated disconnect; close callback cleans
up the session but not the evhhttp_request object alloc'd in
  httpd()-> event_base_loop() -> ... -> evhttp_request_new()
2019-09-22 23:08:35 +02:00
whatdoineed2do/Ray
c2ba1fdb63 [streaming,conf,xcode] review fixes 2019-09-22 22:58:32 +02:00
whatdoineed2do/Ray
008e11bfb8 [streaming] review: remove bps/channels from cfg, undoc icy_metaint cfg option 2019-09-22 22:58:32 +02:00
whatdoineed2do/Ray
7ccd32c354 [streaming] validate cfg for supported ffmpeg/mp3 sample_rates
$ fmpeg -h encoder=mp3
    ...
	Supported sample rates: 44100 48000 32000 22050 24000 16000 11025 12000 8000
	Supported sample formats: s32p fltp s16p
	Supported channel layouts: mono stereo
2019-09-22 22:58:32 +02:00
whatdoineed2do/Ray
8762891145 [streaming] configurable icy_metaint 2019-09-22 22:58:32 +02:00
whatdoineed2do/Ray
f5c3eb0c14 [streaming] refactor for sperate in/out streaming qualities and configurable streaming params 2019-09-22 22:58:32 +02:00
whatdoineed2do/Ray
07d297aaca [streaming] increase icy-metaint interval to 16k bytes 2019-09-22 22:58:32 +02:00
whatdoineed2do/Ray
554799ebc3 [streaming/xcode] configurable MP3 streaming bitrate 2019-09-22 22:58:32 +02:00
ejurgensen
cae790ed7e [pipe] Harden pict_tmpfile_recreate() against invalid input, take 2 2019-09-22 22:56:18 +02:00
ejurgensen
d2921e9444 [pipe] Harden pict_tmpfile_recreate() against invalid input 2019-09-22 20:27:47 +02:00