Srinivasan S wrote:
> I didn't understand what is 'two channel devices' does
The two channels are "left" and "right".
> Regarding bindings as you explained"bindings.x y" or "bindings { x y }" maps channel x of this device to
> channel y of the slave device.
>
> I didn't understand channel x of this device means is it the real sound card??? which is the current device ie., channel x of this device means???
>
> I didn't understand channel y of the slave device means??.. ie., which is slave device here????
"This device" is the virtual device that is defined.
The slave device is the device whose name is specified with "slave.pcm".
Regards,
Clemens
Srinivasan S wrote:
> CPU consumption is 18%, with above asound.conf & the app
> alsa_loopback_min_mono.c for establishing my GSM two way call (ie.,
> VINR to VOUTR & VINL to VOUTL) , this is very huge & I want to reduce
> this CPU consumption drastically, Is there any other ways in alsa where
> I can do this two way GSM call (ie., VINR to VOUTR & VINL to VOUTL)
> without using alsa_loopback_min_mono.c application
dmix needs more CPU than dshare because it needs to mix multiple streams
together; if possible, use dshare instead of dmix.
dshare needs more CPU than direct access to the device because the data
needs to be copied and reformatted. dshare is needed only when the
application(s) cannot handle the format of the actual device; if
possible, change your application to handle the two-channel devices.
> And am hearing echo, when I do GSM calls when using the above attachd
> asound.conf & the app alsa_loopback_min_mono.c, could you please help
> me out is there any options to do echo cancellation in alsa?
ALSA has not built-in echo cancellation. You have to implement this
yourself, or use some third-party library.
If dmix/dshare alone eats 18 % CPU, it is unlikely that this is feasible
without hardware support.
> Am trying to completely understand the above attched asound.conf, but
> am not still very clear w.r.t the understanding of bindings
"bindings.x y" or "bindings { x y }" maps channel x of this device to
channel y of the slave device.
Regards,
Clemens
Hi Damien,
On Apr 02 2015 09:28, Damien Zammit wrote:
> On 02/04/15 09:41, Takashi Sakamoto wrote:
>> Several issues are still remained:
>> * When allocates 2 or more channel numbers for the device, after 15 to
>> 20 seconds from playbacking, any PCM samples causes noisy sound. Then,
>> all of LED on the front panel light. The streaming still continues
>> correctly.
> I have not seen this behaviour with your latest driver, Takashi.
> I think you would see this if the midi quadlet is confused with the pcm
> quadlets and you feed audio data into the midi port. (I have seen this
> before)
The channel is *not* PCM or MIDI, it's IEEE 1394 isochronous resource
channels. I shouhd have mention about it, sorry.
In short, when two or more devices are connected on the same IEEE 1394
bus, the driver may cause the issue (or not).
>> * The actual effects of external clock source is not clear. When set
>> the clock source is somewhat external, even if stopping the clock
>> source, the device continues to sound PCM samples against my expectation.
>
> I have successfully tested the device with ADAT and SPDIF sync. When I
> connect external clock source to the SPDIF-in port and send
> 0xffffe0000118 1 the SPDIF led light turns on and the streaming now
> syncs to the new clock. A flashing Sync led means that the sample rates
> are mismatched and the sync is not working correctly. But sync works
> well when sample rates are matched.
OK. My Digi 002 Rack has no LEDs to show current clock source, so I have
no way to check the actual sync in my eyes.
I request you to test stopping the supply of clock source during
streaming. I expect the streaming is stopped suddenly, then PCM
playback/capturing also stop.
> I tried 0x011c but I am not convinced that this is related to ADAT at
> all. I think it is a switch to select the mode of SPDIF between
> consumer and pro SPDIF modes? I am guessing here but SPDIF sync no
> longer works when I toggle the mode to 1, and it has no effect when I
> attach ADAT cable and sync to ADAT, then toggling the mode does nothing.
In my Digi 002 Rack, it's a selector between S/PDIF or ADAT for optical
input/output interfaces. If not in your Digi 003+, this seems to be
model-dependent issue and I'll drop it from the driver (digi00x-proc.c).
Regards
Takashi Sakamoto
On 02/04/15 11:28, Damien Zammit wrote:
> On 02/04/15 09:41, Takashi Sakamoto wrote:
>> Several issues are still remained:
>> * When allocates 2 or more channel numbers for the device, after 15 to
>> 20 seconds from playbacking, any PCM samples causes noisy sound. Then,
>> all of LED on the front panel light. The streaming still continues
>> correctly.
> I have not seen this behaviour with your latest driver, Takashi.
> I think you would see this if the midi quadlet is confused with the pcm
> quadlets and you feed audio data into the midi port. (I have seen this
> before)
>
>> * The actual effects of external clock source is not clear. When set
>> the clock source is somewhat external, even if stopping the clock
>> source, the device continues to sound PCM samples against my expectation.
> I have successfully tested the device with ADAT and SPDIF sync. When I
> connect external clock source to the SPDIF-in port and send
> 0xffffe0000118 1 the SPDIF led light turns on and the streaming now
> syncs to the new clock. A flashing Sync led means that the sample rates
> are mismatched and the sync is not working correctly. But sync works
> well when sample rates are matched.
>
> I tried 0x011c but I am not convinced that this is related to ADAT at
> all. I think it is a switch to select the mode of SPDIF between
> consumer and pro SPDIF modes? I am guessing here but SPDIF sync no
> longer works when I toggle the mode to 1, and it has no effect when I
> attach ADAT cable and sync to ADAT, then toggling the mode does nothing.
>
> Damien
>
Hi,
I wrote some code (in C++) using JACK1 API. It was quite easy to do that
with a plenty of example files.
Recently, I tried to utilize C++ libraries provided in JACK2 because I
don't like mixing OO code with C api. There are a lot of C++ classes in
JACK2 but I'm not able to link/include them.
For example: instead of #include <jack/jack.h> I'm trying to #include
"jack2/JackServer.h".
There are no example files.
What am I doing wrong? Or is it a bad way of using JACK2?
Thanks,
Vaclav
And finally, for the wrap of the pre-LAC2015@JGU-Mainz [1] release
party, no other than the 'crown jewel' of the whole Qstuff* bunch ;)
Qtractor 0.6.6 (lazy tachyon beta) is out!
Release highlights:
* LV2 and VST plugins GUI position persistence (NEW)
* MIDI clip editor record/overdub note rendering (FIX)
* VST plugin recursive discovery/search path (NEW)
* VST-shell sub-plugins support (FIX)
* also some old and new lurking bugs squashed.
Qtractor [2] is an audio/MIDI multi-track sequencer application written
in C++ with the Qt4 framework. Target platform is Linux, where the Jack
Audio Connection Kit (JACK [3]) for audio and the Advanced Linux Sound
Architecture (ALSA [4]) for MIDI are the main infrastructures to evolve
as a fairly-featured Linux desktop audio workstation GUI, specially
dedicated to the personal home-studio.
Website:
http://qtractor.sourceforge.net
Project page:
http://sourceforge.net/projects/qtractor
Downloads:
http://sourceforge.net/projects/qtractor/files
- source tarball:
http://download.sourceforge.net/qtractor/qtractor-0.6.6.tar.gz
- source package (openSUSE 13.2):
http://download.sourceforge.net/qtractor/qtractor-0.6.6-16.rncbc.suse132.sr…
- binary packages (openSUSE 13.2):
http://download.sourceforge.net/qtractor/qtractor-0.6.6-16.rncbc.suse132.i5…http://download.sourceforge.net/qtractor/qtractor-0.6.6-16.rncbc.suse132.x8…
- quick start guide & user manual (see also: the wiki):
http://download.sourceforge.net/qtractor/qtractor-0.5.x-user-manual.pdf
- wiki (help really wanted!):
http://sourceforge.net/p/qtractor/wiki/
Weblog (upstream support):
http://www.rncbc.org
License:
Qtractor is free, open-source software, distributed under the terms
of the GNU General Public License (GPL [5]) version 2 or later.
Change-log:
- MIDI clip record/reopen to/from SMF format 0 has been fixed.
- LV2 and VST plugins GUI editor widget position is preserved across
hide/show cycles.
- Added application description as freedesktop.org's AppData [6].
- Added a "Don't ask this again" prompt option to zip/archive extrated
directory removal/replace warning messages.
- MIDI clip editor (aka. piano-roll) gets lingering notes properly shown
while on record/overdubbing.
- Current highlighted client/port connections are now drawn with thicker
connector lines.
- Fixing segfaults due to QClipboard::mimeData() returning an invalid
null pointer while on Qt5 and Weston.
- Return of an old hack/fix for some native VST plugins with GUI editor,
on whether to skip the explicit shared library unloading on close and
thus avoid some mysterious crashes on session and/or application exit.
- Force reset of plugin selection list when any of the plugin search
paths change (in View/Options.../Plugins/Paths).
- Recursive VST plugin search is now in effect for inventory and
discovery on path sub-directories (VST only).
- Non-dummy scannig for regular VST, non-shell plugins, were doomed to
infinite-loop freezes on discovery, now fixed.
References:
[1] LAC2015@JGU-Mainz - Linux Audio Conference 2015
The Open Source Music and Sound Conference
April 9-12 @ Johannes Gutenberg University (JGU) Mainz, Germany
http://lac.linuxaudio.org/2015/
[2] Qtractor - An audio/MIDI multi-track sequencer
http://qtractor.sourceforge.net
[3] JACK Audio Connection Kit
http://jackaudio.org
[4] ALSA, Advanced Linux Sound Architecture
http://www.alsa-project.org/
[5] GPL - GNU General Public License
http://www.gnu.org/copyleft/gpl.html
[6] AppData Specification
http://people.freedesktop.org/~hughsient/appdata/
See also:
http://www.rncbc.org/drupal/node/879
Enjoy && keep the fun.
--
rncbc aka. Rui Nuno Capela