Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | input/soup: new input plugin based on libsoup | Max Kellermann | 2011-08-24 | 12 | -1/+500 |
| | | | | | | | | To demonstrate the new I/O thread. libsoup is well-integrated into the GLib main loop, which made this plugin pretty easy to write. As a side effect, we have to initialize the I/O thread in all debug programs that use the input API. | ||||
* | io_thread: new thread for non-blocking background I/O | Max Kellermann | 2011-08-24 | 4 | -0/+134 |
| | | | | Try to eliminate the remaining blocking I/O. | ||||
* | input/curl: remove obsolete function input_curl_reinit() | Max Kellermann | 2011-08-24 | 3 | -21/+0 |
| | |||||
* | output/raop: use GLib byte order macros | Max Kellermann | 2011-08-24 | 1 | -5/+3 |
| | |||||
* | output/raop: use fill_int() in fill_time_...() | Max Kellermann | 2011-08-24 | 1 | -19/+14 |
| | | | | Eliminate duplicate code. | ||||
* | output/raop: check if the "host" option is present | Max Kellermann | 2011-08-24 | 1 | -1/+8 |
| | | | | Better than dereferencing NULL. | ||||
* | output/raop: remove excessive debug messages | Max Kellermann | 2011-08-24 | 2 | -9/+0 |
| | |||||
* | output/raop: consistently use GError | Max Kellermann | 2011-08-24 | 4 | -81/+157 |
| | |||||
* | output/raop: use GLib heap functions | Max Kellermann | 2011-08-24 | 1 | -30/+22 |
| | |||||
* | output/raop: functions that always succeed return void | Max Kellermann | 2011-08-24 | 1 | -22/+14 |
| | | | | No point in returning true, and checking that. | ||||
* | output/raop: rtspcl_connect() returns false on error | Max Kellermann | 2011-08-24 | 1 | -3/+9 |
| | | | | .. and not -1, which is "true". | ||||
* | output/raop: error checking in send_control_command() | Max Kellermann | 2011-08-24 | 1 | -6/+13 |
| | |||||
* | output/raop: make some allocations static | Max Kellermann | 2011-08-24 | 1 | -29/+29 |
| | | | | Allocate objects on the stack to reduce heap overhead. | ||||
* | output/raop: remove unused local variables | Max Kellermann | 2011-08-24 | 1 | -4/+2 |
| | |||||
* | output/raop: make some exec_request parameters const | Max Kellermann | 2011-08-24 | 1 | -7/+10 |
| | |||||
* | output/raop: use "char*" for string buffers | Max Kellermann | 2011-08-24 | 2 | -20/+20 |
| | | | | Not unsigned char. Eliminate useless casts. | ||||
* | output/raop: make send_control_command() static | Max Kellermann | 2011-08-24 | 2 | -4/+1 |
| | | | | Only used internally. | ||||
* | output/raop: remove useless test_default_device() implementation | Max Kellermann | 2011-08-24 | 1 | -7/+0 |
| | | | | This defaults to "false" when the method pointer is NULL. | ||||
* | Merge branch 'v0.16.x' | Max Kellermann | 2011-08-24 | 5 | -6/+127 |
|\ | |||||
| * | output/pulse: fix deadlock when the stream was suspended | Max Kellermann | 2011-08-23 | 2 | -0/+32 |
| | | | | | | | | | | Check if the stream is suspended; wake up the main loop when it becomes suspended. | ||||
| * | output/pulse: add assertions | Max Kellermann | 2011-08-23 | 1 | -0/+30 |
| | | |||||
| * | output/pulse: return 0 on error | Max Kellermann | 2011-08-23 | 1 | -1/+1 |
| | | | | | | | | Not a bool. | ||||
| * | pulse/output: fix deadlock when resuming the stream | Max Kellermann | 2011-08-23 | 2 | -1/+4 |
| | | | | | | | | Unlock the mainloop in all code paths. | ||||
| * | input/curl: limit the receive buffer size | Max Kellermann | 2011-08-23 | 2 | -0/+32 |
| | | |||||
| * | output/httpd: add assertions | Max Kellermann | 2011-08-23 | 1 | -1/+17 |
| | | |||||
| * | output/httpd: don't warn on client disconnect | Max Kellermann | 2011-08-23 | 2 | -1/+9 |
| | | | | | | | | | | | | This warning should only be logged when we really received something. When the client disconnects, G_IO_IN is triggered, and the read returns G_IO_STATUS_EOF. | ||||
| * | decoder/mpcdec: fix gcc warning | Max Kellermann | 2011-08-23 | 1 | -2/+2 |
| | | | | | | | | Move the variable "vbr_update_acc" into the #ifdef block. | ||||
* | | output/raop: rewrite remove_char_from_string | Jonathan Neuschäfer | 2011-07-25 | 1 | -14/+15 |
| | | |||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2011-07-20 | 13 | -39/+102 |
|\| | | | | | | | | | | | Conflicts: src/player_thread.c src/playlist_control.c | ||||
| * | encoder_plugin: add method pre_tag() | Max Kellermann | 2011-07-20 | 5 | -2/+39 |
| | | | | | | | | | | | | | | In the "vorbis" plugin, this is a copy of the old flush() method, while flush() gets a lot of code remove, it just sets the "flush" flag and nothing else. It doesn't start a new stream now, which should fix a few problems in some players. | ||||
| * | output/httpd: explicitly convert size_t to bool in pause() | Max Kellermann | 2011-07-20 | 1 | -1/+2 |
| | | |||||
| * | pipe: lock the mutex in music_pipe_size() | Max Kellermann | 2011-07-20 | 1 | -1/+4 |
| | | |||||
| * | pipe: make read-only functions "pure" | Max Kellermann | 2011-07-20 | 1 | -0/+5 |
| | | | | | | | | Enable gcc optimizations. | ||||
| * | output_thread: unlock the mutex while calling cancel() | Max Kellermann | 2011-07-20 | 1 | -1/+6 |
| | | | | | | | | The method may take longer, and we shouldn't be holding the lock. | ||||
| * | player_thread: lock the player while setting the bite_rate | Max Kellermann | 2011-07-20 | 1 | -0/+2 |
| | | |||||
| * | update_walk: apply follow_inside_symlinks to absolute symlinks | Max Kellermann | 2011-07-20 | 2 | -2/+9 |
| | | |||||
| * | wavpack: obey all decoder commands, stop at CUE track border | Max Kellermann | 2011-07-20 | 2 | -9/+7 |
| | | | | | | | | It used to ignore the decoder_data() return value. | ||||
| * | decoder/wavpack: use the correct integer types | Max Kellermann | 2011-07-20 | 1 | -10/+5 |
| | | | | | | | | | | libwavpack provides int32_t samples, and wants uin32_t for sample counts. | ||||
| * | decoder/wavpack: simplify the WavpackUnpackSamples()==0 check | Max Kellermann | 2011-07-20 | 1 | -17/+14 |
| | | | | | | | | .. and remove one indent level. | ||||
| * | playlist_control: don't resume playback when seeking to another song while ↵ | Max Kellermann | 2011-07-20 | 2 | -3/+6 |
| | | | | | | | | | | | | | | paused Use a shortcut in playlist_seek_song(), don't call playlist_play_order() because that would reset the "paused" state. | ||||
| * | output/alsa: fix SIGFPE when alsa announces a period size of 0 | Max Kellermann | 2011-07-20 | 2 | -0/+10 |
| | | |||||
* | | output/raop: use memset() instead of bzero() | Max Kellermann | 2011-07-20 | 1 | -1/+1 |
| | | | | | | | | There's no bzero() on WIN32. | ||||
* | | output/raop: include winsock.h on WIN32 | Max Kellermann | 2011-07-20 | 2 | -7/+16 |
| | | |||||
* | | output/raop: use GMutex instead of pthread_mutex_t | Max Kellermann | 2011-07-20 | 2 | -27/+26 |
| | | | | | | | | Be portable on WIN32. | ||||
* | | output/raop: add missing mutex unlock call in error handler | Max Kellermann | 2011-07-20 | 1 | -0/+2 |
| | | |||||
* | | queue: implement song "priorities" | Max Kellermann | 2011-07-19 | 10 | -6/+701 |
| | | | | | | | | | | Sorts remaining songs by priority. This can be used for the much-demanded "queue feature". | ||||
* | | output/shout: fix a memory leak | Jonathan Neuschäfer | 2011-07-19 | 1 | -1/+1 |
| | | |||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2011-07-19 | 17 | -56/+247 |
|\| | | | | | | | | | | | Conflicts: NEWS configure.ac | ||||
| * | decoder/ffmpeg: use avformat_open_input() if available | Max Kellermann | 2011-07-18 | 1 | -4/+35 |
| | | | | | | | | av_open_input_stream() has been deprecated. | ||||
| * | decoder: use AVDictionary instead of AVMetadata | Max Kellermann | 2011-07-18 | 1 | -1/+14 |
| | | | | | | | | AVMetadata has been deprecated. |