Commit Graph

2688 Commits

Author SHA1 Message Date
Julien BLACHE
10a0b16573 Implement RAOP retransmit buffer 2010-10-06 19:30:03 +02:00
Julien BLACHE
faea2d33a1 Split out RAOP packet sending 2010-10-06 19:30:03 +02:00
Julien BLACHE
385375cdc6 Add RAOP control request handler 2010-10-06 19:30:03 +02:00
Julien BLACHE
a2329dfd3a Use djb_hash(libname) as the RTP SSRC ID 2010-10-03 17:01:08 +02:00
Julien BLACHE
f13a83147d Move code around, no functional changes 2010-10-02 13:18:12 +02:00
Julien BLACHE
65a75dd85f Do not use a scoped address in SDP payload 2010-10-02 12:41:45 +02:00
Julien BLACHE
309ad6060e RAOP device discovery rework, rework add/update 2010-09-30 19:24:34 +02:00
Julien BLACHE
48de711301 RAOP device discovery rework, remove add/remove branch & reindent 2010-09-30 19:18:49 +02:00
Julien BLACHE
999066d703 RAOP device discovery rework, split remove code 2010-09-30 19:15:17 +02:00
Julien BLACHE
01df67ceb6 Move last_active check into the device add case 2010-09-30 19:08:43 +02:00
Kai Elwert
cd8686be82 Add DB profiling support 2010-09-29 18:56:38 +02:00
Julien BLACHE
5c81144beb Revert to standard SQLite functions for DB startup, creation and upgrade
No need to use the blocking variants here as there is no concurrency during
DB startup.
2010-09-29 18:26:31 +02:00
Julien BLACHE
b79cf13c95 Remove custom collation and custom daap_songalbumid() function code 2010-09-28 18:39:43 +02:00
Julien BLACHE
da0011de3b Load our SQLite extension 2010-09-28 18:38:10 +02:00
Julien BLACHE
517f11c691 Add the SQLite extension to the build 2010-09-28 18:35:25 +02:00
Julien BLACHE
743476fec0 Add SQLite extension
Move the custom collation and daap_songalbumid() function to a custom SQLite
extension. This will make it possible to use them both from any SQLite client
or frontend.
2010-09-28 18:33:32 +02:00
Julien BLACHE
a4c74c2063 Use AF_UNSPEC instead of -1 as error code for family 2010-09-26 14:52:41 +02:00
Julien BLACHE
a3d549bd37 Reduce stack usage for boolean flags 2010-09-25 20:57:10 +02:00
Julien BLACHE
50a9a3690f RAOP auth quirk for old (802.11g) AirPort Express 2010-09-25 20:57:10 +02:00
Julien BLACHE
cc4e271de1 Add Authorization header to all RTSP requests 2010-09-25 20:57:10 +02:00
Julien BLACHE
2d139d77a5 Export evrtsp_method() 2010-09-25 20:57:10 +02:00
Julien BLACHE
d0e0700a13 Move code around, no functional changes 2010-09-25 20:57:10 +02:00
Julien BLACHE
6f642f487b Rework WWW-Authenticate header parsing
Make it work for both
 WWW-Authenticate: Digest realm="raop", nonce="518C974C3847DEAE59B1FE0609C437C702C4BEFE"
and
 WWW-Authenticate: Digest realm="raop" nonce="3328882a152ab0b51bc16b15a038b3bb"

802.11g and 802.11n AirPort Express, respectively.
2010-09-25 20:57:10 +02:00
Julien BLACHE
f7c2bf756a Remove duplicate mstm tag in server-info reply 2010-09-18 22:50:26 +02:00
Julien BLACHE
8411aa48b7 Keep Avahi code inside mdns_avahi.c 2010-09-18 17:25:50 +02:00
Julien BLACHE
7ba3b23f63 Rename mdns_avahi.h to mdns.h 2010-09-18 17:24:34 +02:00
Julien BLACHE
33d51f0652 Add key/value functions & data types 2010-09-18 17:24:33 +02:00
Julien BLACHE
aa57931879 Fix typo in goto label name 2010-09-17 12:21:05 +02:00
Julien BLACHE
d5d1a2d3cb Move code around, no functional changes 2010-09-15 19:05:39 +02:00
Julien BLACHE
1f3e79d2c2 Document ffmpeg 0.5.1+ requirement 2010-09-15 18:22:07 +02:00
Julien BLACHE
5155bc05ef Add check for av_lockmgr_register() in libavcodec (ffmpeg 0.5.1+) 2010-09-15 18:21:19 +02:00
Julien BLACHE
b05d173139 Add a lock manager callback for ffmpeg 2010-09-15 18:20:23 +02:00
Julien BLACHE
235e13ef70 Call avcodec_init() 2010-09-15 18:17:35 +02:00
Julien BLACHE
748a208796 Fix gcrypt_init_fail error path
Set ret to EXIT_FAILURE and swap the gcrypt_init_fail and signal_block_fail
labels so they appear in the correct (reverse) order. No impact.
2010-09-15 18:05:20 +02:00
Julien BLACHE
ce683b26ab Add configure checks for timerfd 2010-09-14 22:39:22 +02:00
Julien BLACHE
bc443752b3 Move eventfd checks to the Linux-specific portion of configure 2010-09-14 22:35:48 +02:00
Julien BLACHE
75fb755db7 Assign ms to target_pts to ensure full 64bit computation of target_pts
Clang produced interesting results without this (or casting ms to int64_t),
as the seek target got mis-computed and fell short of the requested seek
target in ms (ex. wanted 18569 ms -> got 555 ms).
2010-09-13 22:06:53 +02:00
Julien BLACHE
115ded61d0 Move code around, no functional changes
Assign start_time right at the start, making the target_pts computation more
obvious wrt start_time and showing the symmetry of the target_pts and got_pts
computations.
2010-09-13 22:06:52 +02:00
Julien BLACHE
d1af41f0e7 Fix got_pts computation wrt start_time
Substract start_time from got_pts after actually getting got_pts, and then
rescale the result.
2010-09-13 22:06:12 +02:00
Julien BLACHE
bff494ac5d Use a union for command argument in struct player_command 2010-09-13 19:08:29 +02:00
Julien BLACHE
7f79ca5709 Modify player commands to use per-command lock & condition
This makes the player commands usable in a concurrent multithread setup, which
was not the case with the global command+lock+condition due to the time it
could take the player thread to act upon the command event. This left a wide
open window for race conditions with other threads locking cmd_lck before the
player thread had a go at it.
2010-09-13 19:07:00 +02:00
Julien BLACHE
942f3e4aad Modify player-to-DACP status update communication
Have DACP set a callback (through a sync_command() setter) into the player
instead of setting an fd without any locking. All the code now lies in DACP
instead of being split between DACP and the player.
2010-09-13 18:40:41 +02:00
Julien BLACHE
90b13b1855 Remove checks for evhttp.h and libevent_extra
We're using our internal copy of evhttp anyway, so there's no point in keeping
the checks. We're not likely to switch back to the stock evhttp anytime soon.
2010-09-12 18:46:38 +02:00
Julien BLACHE
b78b90ad0e Remove useless #include <evhttp.h> 2010-09-12 18:43:22 +02:00
Julien BLACHE
01b42d3108 Fix typo, checking for evbuf instead of update 2010-09-12 17:31:31 +02:00
Julien BLACHE
c6c53e6a28 Fix integer type mismatch in SQL query
sample_count is uint64, not int.
2010-09-10 20:58:10 +02:00
Julien BLACHE
b1e57f8f6a Factor out common code in RSP 2010-09-10 18:47:43 +02:00
Julien BLACHE
0cb62fdabf Bind IPv4 server first, to avoid v4compat 2010-09-10 18:47:43 +02:00
Julien BLACHE
e9b8fd8bd7 Check for both ip6-localhost and localhost 2010-09-10 18:47:42 +02:00
Julien BLACHE
053b8df4ba Factor out common code to increase playcount while streaming 2010-09-10 18:47:42 +02:00