Commit Graph
612 Commits
Author SHA1 Message Date
Mike Brady 684565679c Merge stability changes to develoment branch and its convolution additions 2017-03-11 14:18:52 +00:00
Mike Brady 5c48bfe0e9 De-globalise ab_read and ab_write. player thread now fully reentrant. 2017-03-10 19:57:02 +00:00
Mike Brady 314b5291a6 Make the seq_diff... etc calls explicitly depend on a base value 2017-03-10 19:41:51 +00:00
Mike Brady b559139862 De-globalise fix_volume and the vol_mutex 2017-03-10 19:20:49 +00:00
Mike Brady 755e95904c De globalise everything except ab_read and ab_write and the volume control stuff 2017-03-10 17:44:50 +00:00
Mike Brady 3ada8c944c Make initialising and destroying mutexes and condition variables internal to the player thread. 2017-03-09 17:51:07 +00:00
Mike Brady f06e638d24 de-globalise flowcontrol ab_mutex,flush_mutex, first_packet_time_to_play, time_since_play_started 2017-03-09 17:22:48 +00:00
Mike Brady c87414237f de-globalise missing_packets, late_packets, too_late_packets, resend_requests, decoder_in_use, last_seqno_read 2017-03-09 16:28:26 +00:00
Mike Brady 05305e1581 De-globalise input_bytes_per_frame,output_bytes_per_frame,output_sample_ratio,max_frame_size_change,decoder_info,shutdown_requested,connection_state_to_output,player_thread_please_stop 2017-03-09 16:10:39 +00:00
Mike Brady 600cebacd4 De-globalise previous_random_number 2017-03-09 14:43:41 +00:00
Mike Brady cae9337dc4 De-globalise max_frames_per_packet,input_num_channels,input_bit_depth,input_rate 2017-03-09 14:26:28 +00:00
Mike Brady d90fd0df50 Change the order of initialisation back to waht it was before de-globalising the init_decoder, etc. 2017-03-09 14:08:06 +00:00
Mike Brady ea072ec249 Move init and terminate decoder calls inside the player thread -- still using globals though 2017-03-08 20:13:10 +00:00
Mike Brady 498c1d6e18 Move buffer inside player thread 2017-03-08 19:58:02 +00:00
Mike Brady cbcda67f64 Fix a bug to ensure a silent frame is supplied to replace a missing frame. 2017-03-08 16:17:35 +00:00
Mike Brady 7d672bcf56 Untested, probably not working 2017-03-07 22:42:23 +00:00
Yann Pomarede 7b9cd28e90 2 audio filters added, a volume-dependent-loudness and a convolution filter. 2017-02-27 22:43:23 +01:00
Mike Brady 64371bb85c Remove obselete stuffing code. 2017-02-25 15:58:59 +00:00
Mike Brady cf29625d2c Clang Format 2017-02-11 12:12:07 +00:00
Mike Brady 2a4a4ed22b Add volume_max_db setting which works on the hw mixer if it exists or the sw attenuator otherwise. 2017-02-05 16:18:05 +00:00
Mike Brady 73e504ac2b Ensure apple_alac and the associated libstdc++ is not included unless apple_alac is selected. 2017-01-31 16:06:00 +00:00
Mike Brady 49239c3842 Use a precalculated array of pseudorandom numbers to do dither, reducing runtime load on low-powered processors. 2017-01-30 21:05:52 +00:00
Mike Brady 0764199545 Add possibility of using an array of precalculated pseudo random numbers to reduce processor load. 2017-01-30 18:34:09 +00:00
Mike Brady 62aaf07478 Add support for mbed TLS and deprecate polarssl support 2017-01-30 08:21:12 +00:00
Mike Brady b5ee350b3c Add *untested* support for S24_3LE and S24_3BE output format. 2016-09-28 11:47:44 +01:00
Mike Brady 0499743bd9 Make endian-independent. Allow users to specify only U8/S8/S16/S24/S32 2016-09-12 22:01:57 +01:00
Mike Brady 8cabb7d0ab format player.c 2016-09-11 15:42:33 +01:00
Mike Brady e9fef46fdd Fix 8-bit dithering, fix software volume control 2016-09-11 15:40:59 +01:00
Mike Brady e527d9f55f Soxr interpolation working. 2016-09-11 11:33:37 +01:00
Mike Brady 064bd293c5 Tidy up with a clang-format 2016-09-11 10:35:53 +01:00
Mike Brady 6bf0a1d483 Beginning to work, also added S8 and U8 support as VMWare Fusion and the Pi both offer them 2016-09-10 19:00:57 +01:00
Mike Brady d1c6478035 Some bug fixes and hacks. Not working. 2016-09-09 12:34:21 +01:00
Mike Brady 3469a2ab02 New backend for converting 32-bit "native" samples to output format ready for testing 2016-09-08 21:53:19 +01:00
Mike Brady 8d008fa2ec Begin to add full-scale post processing. Does not compile. 2016-09-08 15:56:22 +01:00
Mike Brady 2fad92e7a7 Get dither mask working right 2016-09-08 07:57:28 +01:00
Mike Brady 4849c1d429 Remove mersenne generator -- too slow, try another one 2016-09-07 16:55:14 +01:00
Mike Brady 4e4edf9909 Add a fancy 64-bit pseudo random number generator -- thanks to its developers 2016-09-07 09:05:43 +01:00
Mike Brady c7c794c72b Preliminary support for 32-bit stuffing 2016-09-05 22:35:44 +01:00
Mike Brady cb7c12d636 Fix silence bug and hack code to avoid the stuff procedures 2016-09-05 17:11:30 +01:00
Mike Brady e6e1acd91e Stop multiplying monotonic timestamps by the output to input sampling ratio 2016-09-05 15:24:59 +01:00
Mike Brady ae84366e8d Change over to times as opposed to frames for setting timing options 2016-09-04 19:37:22 +01:00
Mike Brady eca364691e Working reliably with all 16-bit speeds 2016-09-04 16:34:56 +01:00
Mike Brady 30a016867c Add code to change format from 16 to 24 and 32 bit and to change sample rates 2016-09-04 13:29:11 +01:00
Mike Brady 68721f64e0 Fix a few little bugs associated with outputing at a higher rate 2016-09-02 17:29:24 +01:00
Mike Brady ef851a927b Enable 64-bit monotonic rtptime calculations 2016-09-02 16:53:52 +01:00
Mike Brady 1185a2aaa9 Add more support for monotonic 64-bit timestamps and frame sequence numbers 2016-09-02 13:48:39 +01:00
Mike Brady 7f6f4f4478 Begin to add support for monotonic 64-bit timestamps and frame sequence numbers 2016-09-02 12:22:38 +01:00
Mike Brady 0479994c4c Apple ALAC decoder not working -- magic cookie contents are faulty. 2016-08-30 23:33:08 +01:00
Mike Brady 72f1c3b5ae Make the decoder choice a bit more general, highlight names of input format parameters 2016-08-30 22:01:05 +01:00
Mike Brady 945483d9c3 Merge support of apple's ALAC decoder 2016-08-28 21:38:24 +01:00