[SCM] Debian packaging for jack-audio-connection-kit branch, master, updated. debian/1.9.5.dfsg-3-8-g416c970

adiknoth-guest at users.alioth.debian.org adiknoth-guest at users.alioth.debian.org
Sun May 2 22:18:04 UTC 2010


The following commit has been merged in the master branch:
commit f107c04ae420534f2e92421ac946cf903caa365f
Author: Adrian Knoth <adi at drcomp.erfurt.thur.de>
Date:   Sun May 2 22:04:25 2010 +0200

    Remove outdated documentation (Closes: bug#577444)

diff --git a/debian/FAQ b/debian/FAQ
deleted file mode 100644
index 6ceb652..0000000
--- a/debian/FAQ
+++ /dev/null
@@ -1,380 +0,0 @@
- jack   faq    download     documentation    developers     applications    lists        
-       
-       JACK faq
-
-         • How did JACK come to be?
-         • How does JACK compare to...?
-         • How can I make my app use JACK?
-         • What do I need to do to link to JACK?
-         • How do install JACK?
-         • Why are my clients unable to connect to the JACK server?
-         • How can I get the best performance out of JACK?
-             □ How should I tune my hardware?
-             □ How should I configure my Operating System?
-                 ☆ How do I configure Linux 2.6?
-                 ☆ How do I configure Linux 2.4?
-                 ☆ How do I configure Mac OS X?
-                 ☆ What about other Operating Systems?
-             □ What other software tuning should I consider?
-         • JACK, jackd, libjack, jackit, wha?
-
-       How did JACK come to be?
-
-       People on the linux-audio-dev list saw the need for a server API that would
-       allow high-bandwidth, low-latency communication between a number of audio
-       applications. The proposal that was put forth was called "LAAGA", the Linux
-       Audio Applications Glue API. JACK may be seen as an implementation of the
-       goals of LAAGA. Another planned implementation of these goals is LADMEA,
-       written by the author of the successful LADSPA plugin interface. LADMEA and
-       JACK are somewhat orthogonal, and it is not impossible to imagine them
-       interacting in a cooperative fashion.
-
-       How does JACK compare to...?
-
-       Please mail the jackit-devel mailing list if you have any concerns about the
-       answers to these questions. Also, no disrespect to any effort is intended,
-       only a recognition of different goals and design principles.
-
-       How does JACK compare to ...
-
-         • Other Linux-centered systems
-
-             □ ALSA: both a HAL and a user-space library for audio under Linux.
-               ALSA is used to provide the default audio i/o driver for JACK. ALSA
-               is a very powerful audio API, but it does not provide a
-               callback-based API or offer any solutions for inter-application
-               communication, though it has been discussed and is theoretically
-               possible.
-
-             □ aRts, a streaming media architecture: aRts was not designed from the
-               ground up with low-latency in mind. Not a fault, but a design
-               decision. A jack output element could be written for aRts, though,
-               as far as I can tell.
-
-             □ GStreamer, another streaming media architecture: GStreamer is
-               designed for in-process construction of media pipelines, and is not
-               used to link applications. JACK elements for GStreamer are under
-               construction.
-
-             □ LADSPA: LADSPA is an internal plugin API for DSP routines, not a way
-               of linking external applications together.
-
-             □ LADMEA, another LAAGA proposal: JACK is actually implemented. Also,
-               see the thread on linux-audio-dev.
-
-         • Cross-platform systems
-
-             □ PortAudio: a "cross platform, open-source, audio I/O library"
-               offering both callback- and blocking I/O-based APIs. PortAudio
-               backends exist for various Windows, Mac, and Unix HALs. It is mainly
-               focused on hardware I/O rather than a general concept of ports and
-               connections, although a JACK backend to PortAudio is under
-               construction that would allow PortAudio apps to connect to JACK
-               ports. While the JACK API is portable, its current implementation is
-               limited to POSIX-compliant systems; applications needing greater
-               portability might consider PortAudio. In any case, the
-               callback-style API used by both projects makes it easy to port
-               between the two (no pun intended).
-         • MacOS- and/or Windows-centered systems
-
-             □ CoreAudio, the Mac OS X audio API: Very similar to JACK in concept,
-               being centered on a synchronous-execution-via-callback API, but does
-               not include inter-application audio routing. CoreAudio also includes
-               a hardware-level abstraction layer, whereas JACK uses higher-level
-               drivers for that purpose. The first JACK driver was based on ALSA,
-               but others are available for the OSS and PortAudio interfaces.
-
-             □ ASIO: a HAL for both Windows and MacOS that replaces the native
-               device driver model with something much cleaner. It supports
-               hardware-level latencies, but it does not connect applications to
-               each other. Also, it is subject to license restrictions, and does
-               not exist for Linux (though it would not be impossible to implement
-               it on top of ALSA).
-
-             □ ReWire, an inter-app communications API for Windows and MacOS from
-               PropellerHeads and Steinberg, ReWire is similar in that it provides
-               inter-application audio routing, but does not allow for fully
-               independent processes, and has silly restrictions ("up to 64
-               channels", etc). JACK also comes without without silly license
-               restrictions.
-
-             □ VST, DirectX, MAS, RTAS: these are all Windows/MacOS audio plugin
-               APIs. None of them permit inter-application data sharing. Some
-               plugin hosts can make this possible by using some other system such
-               as ReWire. These APIs also require that the callback you write to
-               process/generate data be executed in the context of the plugin host;
-               JACK allows your callback to be executed within the context of your
-               own application (if you wish to).
-
-       How can I make my app use JACK?
-
-       Your app must be callback-based. This means that you should not block on
-       writes or reads from a PCM device; rather, you should have your app be
-       "driven" by a function that gets called at regular intervals. This is a
-       design decision. Then, take a look at the simple client code, and do your
-       interesting stuff inside the process() function.
-
-       Note that code written for any callback API can generally be ported to any
-       other callback API fairly easily. Code that is written around a "blocking I/
-       O" model generally needs to completely redesigned to be used in any kind of
-       callback API.
-
-       What do I need to do to link to JACK?
-
-       JACK uses pkg-config. Find a package for your favorite distribution and OS,
-       or build it from source. To build your JACK program, try
-
-       $ gcc -o myprog `pkg-config --cflags --libs jack` myprog.c
-
-       This process can be integrated into your autoconf/automake build system with
-       pkg.m4, included in the pkg-config package. Just add the line
-
-       PKG_CHECK_MODULES(JACK, jack, HAVE_JACK=true, HAVE_JACK=false)
-
-       to your configure.ac. In addition to HAVE_JACK, the variables JACK_LIBS and
-       JACK_CFLAGS will be created. To substitute on them you will have to AC_SUBST
-       both of them separately.
-
-       How do I install JACK?
-
-       Prerequisites
-
-         • 2.4, 2.5 or 2.6 series kernel with tmpfs turned on (CONFIG_TMPFS)
-         • Shared memory file system mounted on /dev/shm. add the following to /etc
-           /fstab to get it mounted at boot:
-
-                   shmfs       /dev/shm     shm    defaults        0       0
-
-           (Note: you may have to make the /dev/shm directory)
-
-       Once you have the correct shmfs support, you should be able to build jack
-       with the following sequence of commands:
-
-       sh ./autogen.sh
-       ./configure
-       make
-       make install
-
-       Good luck!
-
-       Why are my clients unable to connect to the JACK server?
-
-       The most common reason is that the server was started using a different user
-       ID.
-
-       How can I get the best performance out of JACK?
-
-       "Good performance" for JACK means operating at the lowest latency possible
-       with no dropouts at any load. There are a number of factors which affect
-       performance:
-
-         • How should I tune my hardware?
-
-           Sound card
-
-           Some sound cards are designed better than others. Many "consumer" sound
-           cards use separate internal pointers for capture and playback, which can
-           result in unreliable operation at low latencies. For example, my ens1370
-           does not operate very well in full-duplex mode. You can work around this
-           by telling the ALSA driver to operate only in capture or playback mode.
-
-           People have reported problems with ymfpci cards as well.
-
-           General system configuration
-
-           People from linux-audio-dev are quite familiar with what is necessary to
-           build a low-latency system. There is no need to rehash all of that here,
-           see the low-latency resource page for more information on getting your
-           system in tune.
-
-         • How should I configure my Operating System?                               
-
-           Real-time scheduling
-
-           JACK requires real-time scheduling privileges for reliable, dropout-free
-           operation. The server requests these privileges when running with the -R
-           option. The standard Linux 2.4 kernel does not adequately support this,
-           but can be modified to work very well. Unmodified 2.6 kernels work much
-           better, but still require special configuration. The requirements for
-           Mac OS X and other Operating Systems differ.
-
-           The simplest, and least-secure way to provide real-time privileges is
-           running jackd as root. This has the disadvantage of also requiring all
-           of JACK clients to run as root. Real-time scheduling is inherently
-           dangerous; a badly or maliciously coded application can hang the system.
-           Worse, running as root gives an intruder too many opportunities to
-           damage or co-opt the entire system by attacking the JACK server or its
-           clients. Systems connected to the Internet would be well-advised to
-           avoid this approach. There are safer ways to gain the needed privileges,
-           the exact method depends on which Operating System you run.
-
-           How do I configure Linux 2.6?
-
-           For Linux 2.6, the Realtime Linux Security Module provides a relatively
-           easy way for non-root users to gain real-time privileges. Some
-           audio-oriented distributions include this module as a separate binary
-           package or with the kernel image. Otherwise, you will need to download
-           the realtime-lsm source and build it yourself.
-
-           This loadable kernel extension selectively grants real-time privileges
-           to user programs. If loaded with modprobe realtime gid=29, it will
-           permit real-time operation for all members of group 29 (the Debian
-           "audio" group). It provides several additional options, described in the
-           user documentation.
-
-           There is an allcaps=1 option, which duplicates the effect of running
-           Linux 2.4 with the capabilities patch. To use that you must compile JACK
-           with --enable-capabilites as you would for the 2.4 kernel. You will need
-           this if you prefer to run jackstart -R rather than jackd -R. If you only
-           use Linux 2.6, you need not bother with it.
-
-           Currently (as of 2.6.7) JACK has a serious problem creating SCHED_FIFO
-           threads for real-time processing. It is unclear whether this is a bug in
-           JACK, in the new Native PThreads Library (NPTL), or in the 2.6 kernel.
-           At the moment no one has a solution, but there is a workaround: define
-           LD_ASSUME_KERNEL=2.4.19 in the environment of the jackd process and of
-           every JACK client. The easiest way to do this is setting it in ~
-           /.profile , or wherever you customarily define global environment
-           variables. Glibc developer Ulrich Drepper explains the operation of
-           LD_ASSUME_KERNEL in more detail.
-
-           How do I configure Linux 2.4?
-
-           The vanilla Linux 2.4 kernel does not adequately support real-time
-           scheduling. For reliable low-latency operation you need the low-latency
-           patches from Andrew Morton. With these patches, 2.4 performs quite well.
-
-           In addition, non-root users need a way to gain real-time scheduling
-           privileges. The preferred solution on 2.4 is using a setuid root
-           application to run the jackd binary as a non-root user, transfering the
-           privileges needed for real-time scheduling. This requires that the
-           kernel allow one process to grant its privileges to another using the
-           CAP_SETPCAP capability. In the givertcap page, Tommi Ilmonen discusses
-           this technique in more depth. Although this capability is built into the
-           kernel, it is disabled by default because of a serious security
-           exposure: if an attacker somehow manages to subvert some system daemon
-           running with root privileges, it can then use CAP_SETPCAP to deny needed
-           privileges to other root processes. Enabling this capability would not
-           be appropriate for an Internet server system, but for an audio
-           workstation the risk is generally acceptable.
-
-               Linux 2.4 kernels require a small kernel patch to enable
-               CAP_SETPCAP. Go to include/linux/capability.h in your kernel
-               sources, and change the line
-
-                 #define CAP_INIT_EFF_SET    to_cap_t(~0&~CAP_TO_MASK(CAP_SETPCAP))
-
-               to
-
-                 #define CAP_INIT_EFF_SET    to_cap_t( ~0 )
-
-               and the line
-
-                 #define CAP_INIT_INH_SET    to_cap_t(0)
-
-               to
-
-                 #define CAP_INIT_INH_SET    to_cap_t( ~0 )
-
-               Then, recompile and install your 2.4 kernel.
-
-           Once you have a kernel with capabilities enabled, build JACK with the
-           --enable-capabilities option of ./configure. This installs a jackstart
-           binary you can invoke as a normal user to start the jackd server with
-           real-time privileges. The server will also give these privileges to the
-           JACK thread in all its clients.
-
-           To compile jack with capabilities enabled you will need libcap. Most
-           distributions include this package, which is also available in source
-           form. You also need the md5sum program and the openssl libraries to
-           calculate and and verify the integrity of the jackd binary.
-
-           How do I configure Mac OS X?
-
-           On Mac OS X, all users have real-time privileges. No special tuning is
-           required for real-time scheduling. But, OS X lacks POSIX support for
-           locking pages into real memory. JACK will run without locking memory,
-           but users should avoid running too many other applications when
-           performing critical real-time tasks. If there is too much memory
-           contention, the operating system might page out data needed for the
-           time-critical process cycle, causing dropouts.
-
-           Mac OS X users should take a look at Jack Tools, a set of tools for
-           integrating JACK into the Apple CoreAudio environment.
-
-           What about other Operating Systems?
-
-           BSD does not provide any way to grant real-time privileges to non-root
-           users. So, jackd -R only works for the superuser.
-
-           Some older BSD variants lack POSIX support for locking pages into real
-           memory. JACK will run without locking memory, but users should avoid
-           running too many other applications when performing critical real-time
-           tasks. If there is too much memory contention, the operating system
-           might page out data needed for the time-critical process cycle, causing
-           dropouts.
-
-           What other software tuning should I consider?
-
-           ALSA driver settings can affect performance to a large degree. Try
-           adjusting the number of periods (anything other than 2 or 3 will
-           probably not help you with JACK). For some cards, using just --playback
-           or just --capture may help. Avoid using a plug-layer PCM device (like
-           default). See the terse ALSA driver help (jackd -d alsa -h) or the jackd
-           man page for a list of options.
-
-           It has been found that mounting /tmp/jack as tmpfs (in RAM) solves
-           problems that many people have experienced with xruns while using JACK.
-           The solutions below help when your /tmp directory is mounted on a
-           journalled filesystem.
-
-           Just put this in your /etc/fstab
-
-           none /tmp/jack tmpfs defaults 0 0
-
-           There is also a compile option to enable JACK to place its FIFOs on a
-           ram-based filesystem follows:
-
-           ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-          
-           # mkdir /mnt/ramfs
-
-           [edit /etc/fstab and add the following line]
-
-           none /mnt/ramfs tmpfs defaults 0 0
-
-           Then use --with-default-tmpdir=/mnt/ramfs to the JACK configure line
-           when you build it. No clients need to be recompiled.
-
-           ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-       
-       JACK, jackd, libjack, jackit, wha?
-
-       There is a profusion of names surrounding the JACK project, and hopefully
-       this will help clear things up.
-
-       JACK
-
-       JACK is the name of the whole system. It may be written as Jack if you
-       prefer. It is an acronym for "Jack Audio Connection Kit". Do you know JACK?
-
-       jackd, libjack
-
-       As a system, JACK has a number of parts. The server process is called jackd,
-       and the library that applications link to is called libjack. From a
-       theoretical perspective, this distinction is not important, but it is
-       helpful to note the difference when describing JACK internals, due to the
-       fact that these components execute in different processes and address
-       spaces.
-
-       jackit, jack-audio-connection-kit
-
-       As luck would have it, by the time we got around to registering a
-       sourceforge site for JACK, there was already another program out there by
-       the same name. "jackit" is a play on the original JACK acronym. Not only
-       does that other project have the sourceforge name, it has mandrake and
-       debian packages too, so we needed a new name for releases. At the moment, we
-       are releasing tarballs as jack-audio-connection-kit.
-
-SourceForge.net Project Page
-Document History
diff --git a/debian/jackd.README.Debian b/debian/jackd.README.Debian
deleted file mode 100644
index b956b58..0000000
--- a/debian/jackd.README.Debian
+++ /dev/null
@@ -1,64 +0,0 @@
-Jack Audio Connection Kit (server and example clients)
-------------------------------------------------------
-
-Abstract: 
-   JACK will probably run just fine on your system with "jackd -d alsa"
-   or "jackd -d oss".
-
-   If you set JACK_START_SERVER in your environment, jackd will be
-   automatically started by applications that need it if it is not yet
-   running. In this mod commandline parameters are read from ~/.jackdrc
-   overriding those in /etc/jackdrc.
-   
-   If you want better (or even only decent performance (fewer/no xruns, lower 
-   latency...), you will probably have to do a bit of work. This includes:
-          1. get recent alsa-drivers running well
-          2. set up an .asoundrc if you have a professional and
-	     powerful soundcard whose settings/channels/mixers you'd
-	     like to have finer control over.
-          3. use a 2.6 kernel with the realtime-preempt patch applied
-          5. run in realtime mode
-
-
-* General usage hints:
-  - You should have the alsa-drivers running.
-  - You should have an .asoundrc file in your home directory. It groups your
-    sound devices together for jackd to use it. A minimalistic example can
-    be found in /usr/share/doc/jackd/examples/asound.rc. Read the comments 
-    in this file for more information.
-
-* Low Latency:
-  - To ensure that jackd can regularly fill its buffers and do its work 
-    it's necessary to modify parts of the kernel, that could block jackd from
-    running at the required frequency. The patch is called "realtime-preempt"
-    and is available at:
-
-    http://www.kernel.org/pub/linux/kernel/projects/rt/
-
-    See also the file /usr/share/doc/jackd/FAQ.gz for more info.
-
-* Realtime mode:
-  - Realtime mode is enabled with the commandline option "--realtime".
-    This will lock down parts of the memory jackd uses in your RAM and enable
-    jackd to run as often as it wants (almost).
-  - Only processes that run as "root" or inherit the RT-rights from jackd
-    (that's capabilities support, see below) can obtain realtime rights. 
-    If you run jackd as root (without capabilities support, that is) you 
-    have to run all jack applications as root.
-  - If you don't want to run jackd as root you can grant it RT-rights via
-    the limits PAM module (you will need to install the libpam-modules
-    package), just add these lines to
-
-    @audio - rtprio 99
-    @audio - nice -10
-
-    your /etc/security/limits.conf
-
-* More Information: 
-  - man jackd
-  - /usr/share/doc/jackd/FAQ.gz
-  - /usr/share/doc/jackd/user-howto.gz
-  - /usr/share/doc/jackd/README
-  - http://jackaudio.org/
-
- -- Free Ekanayaka <freee at debian.org>, Mon, 28 May 2007 14:06:25 +0200
diff --git a/debian/jackd.docs b/debian/jackd.docs
index ea42a42..8ce5b40 100644
--- a/debian/jackd.docs
+++ b/debian/jackd.docs
@@ -1,3 +1,2 @@
 build-tree/jack-audio-connection-kit-*/TODO
 build-tree/jack-audio-connection-kit-*/AUTHORS
-debian/FAQ

-- 
Debian packaging for jack-audio-connection-kit



More information about the pkg-multimedia-commits mailing list