diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/NEWS | 58 | ||||
-rw-r--r-- | doc/README | 5 | ||||
-rw-r--r-- | doc/TODO | 215 | ||||
-rw-r--r-- | doc/man/artsc-config-trinity.1 | 41 | ||||
-rw-r--r-- | doc/man/artscat-trinity.1 | 43 | ||||
-rw-r--r-- | doc/man/artsdsp-trinity.1 | 31 |
6 files changed, 115 insertions, 278 deletions
diff --git a/doc/NEWS b/doc/NEWS deleted file mode 100644 index 081bca6..0000000 --- a/doc/NEWS +++ /dev/null @@ -1,58 +0,0 @@ -aRts-1.2.0: -- added EsounD support -- fixed autosuspend in conjunction with full duplex - -aRts-1.1.0: -- added functions to StdSynthModule to find if/how many other modules are - connected to the inputs and outputs of yourself - -aRts-1.0.0: -- full duplex fixed - -aRts-0.7.0: -- recording in the C API -- new interface for video embedding (Arts::VideoPlayObject) via X11 embedding -- threaded oss audio i/o (-a toss) which works better with some kernel drivers -- irix audio i/o method (-a sgi) -- ALSA-0.9.0 support -- Preference=N lines in .mcopclass files make it possible to to choose one - implementation over another if they both implement the same interface - -aRts-0.6.1: -- new artsdsp -s (single threaded) option for compatibility to more programs - (for instance netscape) -- ALSA-0.9.0 support -- bugfixes: artsdsp/artsc rpath fix, alsa crash without soundcard fixed, md5 - cookie loading, oss driver endianess issue, compile fixes - -aRts-0.6.0: -- new interfaces (Arts::InputStream, Arts::StreamPlayObject) for decoding - streams of data with PlayObjects (rather than just files) -- new Arts::PitchablePlayObject for changing playing speed/pitch -- support for streaming of data from tdeioslaves into PlayObjects -- dynamic implementation of classes/attributes (Arts::DynamicSkeleton) - -(some of the items that are listed in aRts-0.6.0 have been done somewhere - between 0.4 and 0.6 and only now found its way into this) - -aRts-0.5.4: -- fix random segfaults on solaris - -aRts-0.5.3: -- performance improvement for aRts midi instruments (bus code rewritten) -- structures designed by artsbuilder can be used modules in structures again - (and elsewhere), via generic Arts::Loader's - -aRts-0.5.2: -- threading support (libmcop_mt) -- glib-2.0 mainloop integration (libgmcop) -- KArtsWidget makes it easy to use Arts::Widget implementations in conjunction - with qt widgets (i.e. no extra window), this also removes the annoying extra - window in artscontrol -- generic gui factory used by noatun and artscontrol to create effect guis - -================================================================================ -This file starts in the middle of nowhere, because it hasn't always been -here. But please update this if you do bigger changes (fixing a spelling -error in a comment probably doesn't count, doing one of the TODO items -most certainly does). diff --git a/doc/README b/doc/README deleted file mode 100644 index 906e214..0000000 --- a/doc/README +++ /dev/null @@ -1,5 +0,0 @@ -All of the aRts documentation is now in "The aRts Handbook" which is -in KDE DocBook format, part of tdemultimedia. It should be found on a -KDE system in $TDEDIR/share/doc/tde/HTML/default/artsbuilder/index.html. - -An on-line version can be found at http://www.arts-project.org/doc/handbook diff --git a/doc/TODO b/doc/TODO deleted file mode 100644 index 29d2123..0000000 --- a/doc/TODO +++ /dev/null @@ -1,215 +0,0 @@ -- fix problems with REGISTER_IMPLEMENTATION: - => sometimes, global constructors don't work, so we'd better get rid - of them entierly ; instead, an init function needs to be added to - dynamically loaded modules -- get rid of all error handling done by assert ; thus, one by one review - each assert if it can happen under any circumstances if yes, it needs - to be replaced by some other mechanism -- report errors properly if some component could not be loaded ; right - now, it fails within assert(skel) in generated code, which doesn't - help users much to debug the problem -- VERSION-INFO for modules? -- md5auth isn't initialized properly in conjunction with ARTS_SERVER -- make it possible to use C API and C++ API together -- FIXME: what to do about apps which are not threaded but nevertheless - want to use the engine? -- gsl: rounding should be used even for unsigned conversions - -## MCOP Core Infrastructure - -- offer sampleprecise timing -- resource management (i.e. locate resources like "samples" or "structures" - in a similar uniform way KDE does with TDEStandardDirs) -- check why adding thousand non-running objects degrades scheduling - performance quite a lot -- recursive scheduling again (with loops & cycles) -- obsoleting: use V2 implementations even if user requests a normal - implementation, since they have a newer version -- error notification for connection breaks - this would enable intelligent - clients to immediately know when something goes wrong, so they can terminate - sanely instead of crashing -- mcopidl: use unsigned char arrays instead of strings for inline marshalled - data in idl files - this will fix the "maximum string length" warnings and - while doing this improve space and speed -- try to clean up notification manager, code generation and _copy() _release() - style referencing across functions in notification and Dispatcher - the - alternatives seem to be even more automatic referencing magic, or freeing - objects only if the stack is empty (idle freeing) -- fix generated code for struct Foo { object bar; } -- fix fallback into higher namespaces, the following idl file should be accepted - module A { interface Z; module B { interface Y : Z { }; }; }; - -- debugging: if two alternating messages are emitted, the message compression - doesn't work, and the user will be flooded with debugging message, the X - server will crash, and so on - a possible strategy would be: - * make an always present MCOP object which can receive confirmations from - artsmessage - * start artsmessage as usual, but tell it about the MCOP object, so that - artsmessage can - - tell the MCOP object if it is done - - query the MCOP object for the repetition count of the message - * queue repeated messages as long as they are still visible on screen - -## aRts SoundServer - -- export configuration interfaces from the soundserver (so that - you can see and change the autosuspend timeout for instance) -- support multiple artsd instances on one computer (like multiple displays), - and think of a clever way to register them -- more support for different audio input/output methods (i.e. SDL) -- support channels != 2 -- expand capabilities of shell utils (making them eventually as powerful as - artscontrol, or better ;) -- make it possible to share a cookie between multiple hosts (like storing it - in nfs mounted home directory) -- make it possible for artsd to cascade audio input/output to another artsd -- ARTS_COOKIE, OSS_DEVICE - -## C API / artsdsp - -- implement an arts_stream_flush for writing half-written data packets - (useful for implementing SNDCTL_DSP_POST in artsdsp) -- move to CSL (CSL a new common sound layer, especially intended to be - compatible between Gnome and KDE) -- pkgconfig file -- it might be useful to allow clients on big endian systems to pass their - 16bit data with their native byte order - for compatibility with older API - versions, its required to make this an extra parameter - as an efficiency bonus, one could also make the wire representation then - 16bit big endian, which requires support from the sound server though; its - not required to implement the feature, though (which is probably useful - for application writers on 16bit big endian machines) - -## GUI Support - -- port visual objects (beginnings are in tdemultimedia/arts/gui) -- hbox, vbox -- gui generation -- hints via mcopidl - -## aRts Modules / Signal processing - -- midi recording for Brahms -- StereoEffectStack should support reordering (and probably listing) effects - (maybe backport noatuns version) -- hard disc recording -- allow progressive loading for wave files -- write blockwise caching (not requiring whole samples to be held in memory) -- akai support -- better interpolation / resampling -- the Resampler class should do big endian and float as inputs -- LADSPA support -- provide a GUI for stereo_pitch_shift - -## kcmarts - -- add restart option to the control panel, so that you can restart artsd easier - if it crashed (it never crashes, does it ;) - close #38417 when done - -## artsbuilder (and runtime) - -- allow to give additional parameters (like names for sample files to play) - through .arts-map files -- more examples (instruments, songs and such) -- gui editing (or should is it better to write a new editor for that) -- live editing of running structures -- component bar where you can choose components without going through all - these submenus -- property editor (like in delphi) -- support pressing "return" in the various dialogs and close them on doing - that (rather than always having to click "ok" with the mouse) -- i18n fixes - -## artscontrol - -- be able to remove midi ports *KDE2.2* -- add a mixer -- persistent state (Arts::Environment), so that the environment - can be restored on next login (or per song or something like that) -- edit .arts-map files visually - -## Optimization (this section contains various optimization ideas) - -- use no floats for adressing the fractional part in resampling but integers - (that will be MUCH faster) -- use short int for i16le resampling, instead of using a long and adding - sign manually (faster at least on athlon) -- tune the MCOP transfer protocol - * rewrite Buffer not to use vector<char> to store data, but malloc'd blocks - * try to write "zero allocation" invocations, that means, try not to allocate - memory on performing an invocation. For instance Buffers could be kept in - pools, and be reused for further invocations, without the need to realloc - another memory block - * try to minimize the amount of copies of data, possibly even using something - like sharedmem to share data between the sending and receiving buffer - * hardcode frequently used calls in the Arts::Object interface - -## Documentation / Web - -- improve kdoc comments everywhere -- write incomplete sections in The aRts Handbook; improve formatting - -## Misc - -- put streamwise blocking into MCOP, see artscat.cpp to read really ugly - source which lives without that feature -- implement plugins that transfer non-standard datatypes such as midi events, - video frames, fft packets, oscilloscope views, ... (which was impossible - with aRts on CORBA) -- make aRts run inside Brahms, KWave or your-favorite-other-app, to do - signal processing where it is needed (similar to AudioLogic Environment, - for instance) -- convince other people to use aRts, so that the usefulness of universal - plugins written for the API increases -- when being crazy, implement gatewaying from MCOP to DCOP, CORBA, XMLRPC - or whatever else might be useful - -## Interoperability (GNOME/C) - -- write a gartscontrol (in C) as native Gnome/Gtk app -- further work on CSL -- C language binding, based on glib -- mcopidl code generation for C - -## FlowSystem changes: - -It would be nice if the flowsystem became more "detached" from the normal -operation, making it ideally runnable in one or more thread dedicated for -audio processing. - -Flowsystem transactions: - - these group operation like: starting, stopping, connecting, disconnecting, - ... to transactions which will later (asynchronously) executed by the - flowsystem - -Example: problematic assertion - - assert(done[i] <= samples); /* synthschedule.cpp:998 */ - - the problem with the assertion here is this - suppose some object reacts - in a way on some signal that will lead to the creation of new objects, - then those will get into the flowsystem, and we can't ultimately say - anything about how far these have been calculated so far - - extremely problematic in this context are so-called call-ins, that is - you do calculateBlock, and during this, the dispatcher mainloop gets - called for some reason (I hope that this does not happen currently) - - if that would hypothetically happen, then there the whole flowsystem - could get restructured (because i.e. ordinary midi events could be - processed) - -## libartskde - - * ensure that there is a pair of classes, like KAudioPlayStream and - KAudioRecordStream (or whatever they should be called) that can do - approximately what the C API can do - - * don't export implementation details in the API - for instance - KAudio(Play|Record)Stream should probably only inherit from QObject, and - only "use" some aRts objects to do the actual work - that way, they can - be changed/modified more easily afterwards - - * use Qt signals/slots as callbacks (at least as one possibility) for - "please produce new audio data" / "here is new audio data" - that way, - polling isn't necessary any longer diff --git a/doc/man/artsc-config-trinity.1 b/doc/man/artsc-config-trinity.1 new file mode 100644 index 0000000..6e61ea5 --- /dev/null +++ b/doc/man/artsc-config-trinity.1 @@ -0,0 +1,41 @@ +.TH "ARTSC-CONFIG" "1" +.SH "NAME" +artsc-config \(em Get information about a libartsc installation +.SH "SYNOPSIS" +.PP +\fBartsc-config\fR [\fB\-\-arts-prefix\fI\fR\fP] [\fB\-\-arts-version\fI\fR\fP] [\fB\-\-cflags\fI\fR\fP] [\fB\-\-libs\fI\fR\fP] [\fB\-\-version\fI\fR\fP] +.SH "DESCRIPTION" +.PP +This manual page documents briefly the +\fBartsc-config\fR command. +.PP +\fBartsc-config\fR displays information about a previous libartsc installation. +.SH "OPTIONS" +.PP +This program follows the usual GNU command line syntax, +with long options starting with two dashes (`\-'). A summary of +options is included below. +.IP "\fB\-\-arts-prefix\fP " 10 +This is the prefix used when libartsc was installed. +.IP "\fB\-\-arts-version\fP " 10 +Outputs version information about the installed arts. +.IP "\fB\-\-cflags\fP " 10 +Set of compiler options (CFLAGS) to use when compiling files that use libartsc. +.IP "\fB\-\-libs\fP " 10 +Shows the complete set of libs and other linker options you will need in order to link your application with libartsc. +.IP "\fB\-\-version\fP " 10 +Outputs version information about the installed libartsc. +.SH "AUTHOR" +.PP +This manual page was written by Chris Cheney +<[email protected]> for the \fBDebian\fP system (but may be used by +others). Permission is granted to copy, distribute and/or +modify this document under the terms of the GNU General Public +License, Version 2 or any later version published by the Free +Software Foundation. + +.PP +On Debian systems, the complete text of the GNU General +Public License can be found in /usr/share/common-licenses/GPL. + +.\" created by instant / docbook-to-man diff --git a/doc/man/artscat-trinity.1 b/doc/man/artscat-trinity.1 new file mode 100644 index 0000000..7c809df --- /dev/null +++ b/doc/man/artscat-trinity.1 @@ -0,0 +1,43 @@ +.TH "ARTSCAT" "1" +.SH "NAME" +artscat \(em pipe data to sound device +.SH "SYNOPSIS" +.PP +\fBartscat\fR [\fB\fI options \fR\fP] [\fB\fI filename \fR\fP] +.SH "DESCRIPTION" +.PP +This manual page documents briefly the +\fBartscat\fR command. +.PP +\fBartscat\fR pipes data from a pipe to the sound device through arts. +.SH "OPTIONS" +.PP +This program follows the usual GNU command line syntax, +with long options starting with two dashes (`\-'). A summary of +options is included below. +.IP "\fB-b \fIbits\fR\fP " 10 +set number of bits (8 or 16) +.IP "\fB-c \fIchannels\fR\fP " 10 +set number of channels (1 or 2) +.IP "\fB-h\fP " 10 +display help and exit +.IP "\fB-r \fIsamplingrate\fR\fP " 10 +set samplingrate to use +.IP "\fB-t \fItitle\fR\fP " 10 +set stream title +.IP "\fB-v\fP " 10 +show version +.SH "AUTHOR" +.PP +This manual page was written by Chris Cheney +<[email protected]> for the \fBDebian\fP system (but may be used by +others). Permission is granted to copy, distribute and/or +modify this document under the terms of the GNU General Public +License, Version 2 or any later version published by the Free +Software Foundation. + +.PP +On Debian systems, the complete text of the GNU General +Public License can be found in /usr/share/common-licenses/GPL. + +.\" created by instant / docbook-to-man diff --git a/doc/man/artsdsp-trinity.1 b/doc/man/artsdsp-trinity.1 new file mode 100644 index 0000000..2615f47 --- /dev/null +++ b/doc/man/artsdsp-trinity.1 @@ -0,0 +1,31 @@ +.TH ARTSDSP "1" "February 2008" "artsdsp" "User Commands" +.SH NAME +artsdsp \- manual page for artsdsp +.SH DESCRIPTION +artsdsp \- attempt to reroute audio device to artsd +.PP +artsdsp [options] binary +.PP +options: +.TP +.B \-h, \-\-help +Show brief help. +.TP +.B \-n, \-\-name\fR=\fINAME\fR +Use name to identify player to artsd. +.TP +.B \-m, \-\-mmap +Emulate memory mapping (i.e. for quake). +.TP +.B \-s, \-\-single\-threaded +Use the single\-threaded version. +.TP +.B \-v, \-\-verbose +Show parameters. +.TP +.B \-V, \-\-version +Show version. +.PP +This manual page was written by Fathi Boudra <[email protected]>, +for the Debian project (but may be used by others). + |