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
ejurgensen
56d3f42598
Fix a few gcc 8 / scan-build compiler warnings
2019-09-22 00:51:17 +02:00
ejurgensen
cf927e7daa
[pipe] Fixup missing condition
2019-09-20 21:51:09 +02:00
ejurgensen
e1a0e366cf
[dacp] Make sure Remote updates images from metadata pipes
2019-09-20 21:47:17 +02:00
ejurgensen
7316c060b8
[pipe/artwork] Support for artwork via Shairport metadata pipes, take 3
...
This implementation uses a tmpfile for storage of the artwork, plus it uses
artwork_get() which means that it scales the image as requested by the client.
It also does not create a tmpfile unless we actually receive artwork.
2019-09-20 21:47:17 +02:00
ejurgensen
ddb91e61ef
[pipe/artwork] Support for artwork via Shairport metadata pipes, take 2
...
This implementation uses a tmpfile for storage of the artwork (instead of the
cache, which may not be enabled).
2019-09-20 21:47:17 +02:00
ejurgensen
69fafd873d
[pipe/artwork] Support for artwork via Shairport metadata pipes
...
This implementation uses the cache for storage. Might change that to use a
tmpfile instead.
2019-09-20 21:47:17 +02:00
ejurgensen
2e149273e5
[cache] Clear stash if called with called with NULL
2019-09-20 21:47:17 +02:00
ejurgensen
1752901529
[misc] Change b64_* to wrap ffmpeg's base64 encoder/decoder
...
Using ffmpeg's is probably better than having our own, plus it provides us with
decoded length, which we will need to support artwork via pipe.
2019-09-20 21:47:17 +02:00
ejurgensen
e654276262
[alsa] Fix incorrect use of abs() for float, use fabs() instead
2019-09-18 21:28:15 +02:00
ejurgensen
6836a0f277
[mdns] Fix incorrect error check for getaddrinfo (can cause segfault)
...
Non-zero return from getaddrinfo is an error, so since *ai could be a null
pointer when derefenced in the following socket() call.
2019-09-18 21:18:01 +02:00
ejurgensen
4ab734343c
[-] Free events on exit (turns out event_base_free does not free them)
...
Credit @whatdoineed2do, ref. pr #797
2019-09-09 22:23:00 +02:00
Christian Meffert
0a593463b8
Merge pull request #803 from chme/mpdplay
...
[mpd] Fix initial value of 'songpos' in play command
2019-09-08 14:39:33 +02:00
chme
d88182820c
[mpd] Fix initial value of 'songpos' in play command
2019-09-07 08:31:31 +02:00
Christian Meffert
743edcc3dd
Merge pull request #798 from chme/webupdate
...
Update player web interface to v0.5.5
2019-09-01 13:20:22 +02:00