aboutsummaryrefslogtreecommitdiffstats
path: root/src/output (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-02-24output/httpd/client: eliminate GLibMax Kellermann1-13/+11
2014-02-24output/{shout,win32}: include cleanupMax Kellermann2-3/+0
2014-02-24output/openal: use usleep() instead of g_usleep()Max Kellermann1-2/+2
2014-02-24output/pulse: use setenv() instead of g_setenv()Max Kellermann1-3/+2
There is no advantage in using g_setenv().
2014-02-24output/pulse: remove bogus g_free() callMax Kellermann1-2/+0
2014-02-22output/sles: new output plugin for AndroidMax Kellermann7-0/+817
2014-02-20ConfigGlobal: eliminate function config_get_next_param()Max Kellermann1-3/+2
2014-02-19Mixer: add class MixerListenerMax Kellermann4-11/+31
Use a listener interface instead of GlobalEvents.
2014-02-19output/Init: pass AudioOutput referencesMax Kellermann1-29/+29
2014-02-19output/httpd: move to dedicated directoryMax Kellermann10-4/+349
2014-02-19Timer: move to output/Max Kellermann5-3/+117
2014-02-06mixer/Plugin: pass AudioOutput reference to init()Max Kellermann7-50/+46
Passing a void pointer is unsafe.
2014-02-06MixerPlugin: convert function pointers to Mixer virtual methodsMax Kellermann1-1/+1
2014-02-05Mixer: use reference instead of pointer for MixerPluginMax Kellermann1-2/+2
2014-02-05Mixer: rename struct mixer_plugin to MixerPluginMax Kellermann2-2/+3
2014-02-05MixerPlugin: add EventLoop& init() parameterMax Kellermann4-14/+17
2014-01-30Main, OutputThread: increase kernel timer slack (Linux)Max Kellermann1-0/+2
Allows the kernel to combine timer wakeups with other processes, reducing power usage.
2014-01-29OutputThread: move more functions into the AudioOutput classMax Kellermann2-240/+271
2014-01-29output: rename "chunk" to "current_chunk"Max Kellermann4-28/+30
2014-01-29output: move functions into the AudioOutput structMax Kellermann23-328/+281
2014-01-29AudioOutput: make "plugin" a referenceMax Kellermann5-37/+37
2014-01-29AudioOutput: pass plugin to constructorMax Kellermann18-45/+68
Make it "const".
2014-01-28AudioOutput: add constructor and destructorMax Kellermann19-101/+27
2014-01-28output: rename source filesMax Kellermann16-19/+19
2014-01-28output: rename struct audio_output to AudioOutputMax Kellermann31-267/+268
2014-01-28OutputPlugin: rename struct audio_output_plugin to AudioOutputPluginMax Kellermann38-49/+52
2014-01-28OutputAll: convert to class, move instance to class PartitionMax Kellermann10-815/+791
Another big chunk of code for multi-player support.
2014-01-24Mixer*: move to mixer/Max Kellermann9-13/+13
2014-01-24Filter*: move to filter/Max Kellermann4-11/+11
2014-01-24Client*: move to client/Max Kellermann1-1/+1
2014-01-24Config*: move to config/Max Kellermann8-11/+11
2014-01-23output/*: move to output/plugins/Max Kellermann57-17/+3501
2014-01-23Encoder*: move to src/encoderMax Kellermann3-6/+6
.. and move the plugins to src/encoder/plugins/.
2014-01-13copyright year 2014Max Kellermann35-35/+35
2014-01-07util/Alloc: new library replacing GLib's g_malloc()Max Kellermann1-1/+1
2014-01-06event/SocketMonitor: don't close the socket automaticallyMax Kellermann1-0/+3
Users now have to call Close() explicitly. This simplifies using the class, as most users have automatic socket management already, and Steal() had to be used often.
2014-01-06util/Cast: new utility libraryMax Kellermann1-1/+2
2014-01-05output/httpd: move the clients.clear() call to the IOThreadMax Kellermann1-1/+3
This call is not thread-safe.
2014-01-05output/httpd: import GetEventLoop()Max Kellermann2-3/+5
2014-01-04output/httpd: move Bind()/Unbind() to the IOThreadMax Kellermann1-4/+8
Fixes more thread-safety bugs.
2014-01-04output/httpd: move all broadcast operations to the IOThreadMax Kellermann2-11/+76
Add a Page queue to class HttpdOutput, and use DeferredMonitor to flush this queue inside the IOThread. This fixes a thread-safety issue: much of EventLoop is not thread-safe, and the httpd plugin ignored that problem.
2014-01-04output/httpd: use the IOThreadMax Kellermann1-2/+2
Do all I/O in the IOThread and not in the main thread. This solves an upcoming deadlock problem.
2014-01-04output/httpd: move queue size check to HttpdClient::PushPage()Max Kellermann3-18/+6
Don't let the server care for client problems.
2014-01-04output/httpd: wrap the std::list in std::queueMax Kellermann2-6/+16
2014-01-04output/httpd: merge duplicate code to ClearQueue()Max Kellermann2-5/+15
2014-01-04output/httpd: keep track of queue sizeMax Kellermann2-13/+14
Don't iterate the std::list each time.
2013-12-31output/httpd: change "struct" to "class"Max Kellermann3-4/+7
2013-12-31output/httpd: move code to methods Delay(), Play(), Cancel()Max Kellermann2-22/+46
2013-12-31output/httpd: move Cast() into the classMax Kellermann2-25/+23
2013-12-31output/httpd: add methods Init(), Finish()Max Kellermann2-12/+29