Hi,
Looking around the LV2 Trac at http://lv2plug.in/trac/, I don't see any simple
introduction on how to create a minimal plugin. Is there any plan for this?
I think that a gain plugin tutorial could be a way to show how to say Hello
World in LV2. Something very short, which include proper links to reference
documentation. Not a long story as "LV2 programming for the complete idiot"
which IIUC also happens to be obsolete.
In addition to helping the newbie find his way, one advantage of a short and
simple tutorial is that it should be easy to maintain when LV2 evolves.
And as an alternative or companion to the tutorial, the source code for a
minimal (official) example would be great. I mean, the kind of example that you
find in JACK source code. Does a such thing already exist?
--
Olivier
Dan Muresan wrote:
> Hi Erik -- please CC me so I can reply (I don't receive messages from
> LAU directly). I'm quoting manually here:
>
> > > I'm trying to cancel an ongoing sf_* I/O operation (from another
> > Maybe its a bad idea. :-)
>
> I don't think so... Issuing large requests, then cancelling as needed
> gives a process the lowest possible latency for unpredictable seeks
> (caused e.g. by user commands), while keeping CPU usage low (by
> avoiding syscall and context switching overhead)
Let me put it this way:
a) When I designed libsndfile over 10 years ago, I never dreamed
anybody would try this.
b) In the 10 years libsndfile has been around and the probably
hundreds of applications it has been used in, noone has suggested
that it would be a good idea if libsndfile could do this.
To me that suggests that either you have a completely unique
problem to solve or that they are other solutions to your
problem that other people use to get around the same problem.
My guess is that your problem is not completely unique.
> > Reading one frame at a time sounds like a bad idea too.
>
> 1 frame at a time was an extreme example. The point was that
> libsndfile doesn't employ a user-space cache, but direct system calls.
> Reading 10, 100 or 480 frames at a time will still incur syscall
> overhead (== CPU usage), and progressively larger cancel latencies.
>
> > > libsndfile. It would be nice if libsndfile could allow short reads and
> > > writes via some sf_command parameter.
> > It does. You can read any number of frames from 1 through to as many
> > frames as the file contains.
>
> I meant "short reads" in kernel-speak sense: read(2) can return a
> number of bytes less than the number requested when interrupted by a
> signal (if SA_RESTART is disabled). My proposal was to add a
> sf_command() parameter that disables the looping behavior of sf_read()
> on EINTR, and makes it return exactly as many frames as the first
> read() call manages to get.
I accept good quality, clean patches with tests for the functionality
you are adding. Wherever possible, they should be cross platform.
> On second thought, though, this proposal could not possibly work
> without a userspace (libsndfile) cache, because read() might return
> incomplete frames, which would need to be processed in a later call.
Modifying libsndfile to do fread/fwrite style buffering would be
relatively easy. Again, patches accepted.
> > I just checked, and the address you used to post this email to the LAU
> > list are not subscribed to the libsndfile-users list. Thats why the list
> > is rejecting your email.
>
> That's exactly the problem: I subscribed about two weeks ago, received
> a confirmation,
Was that a confirmation or a request for confirmation? Joining a
mailing list usually involves:
a) Send a request to join.
b) Receiving a "confirm that you want to join" message.
c) Sending "confirm that you want to join".
d) Receiving a "yes, you are mow a member" message.
> and sent a message at that time (which received no
> bounces, but no replies either). Now, the mailserver somehow forgot
> about me and is rejecting my messages. Or something...
All other complaints of this sort that I have received have been
from people who couldn't figure out the subscribe procedure or
joined from one email address and sent mail to the list from
another.
Cheers,
Erik
--
----------------------------------------------------------------------
Erik de Castro Lopo
http://www.mega-nerd.com/
Hi
I have recently added jack session support to rakarrack ... I was check with jack1 ...and session is restored perfectly even if I use a lot of rakarrack instances with others apps .... but ... I have problems with jack2 ... if I use more than one instance of rakarrack ... sometimes works ... but most times some instances of rakarrack are unable to open jack client ... believe me I changed everything to try to fix but I really don't know why that happens .... you know me I'm not a programmer .. :-(
If someone can tell me something about how to fix that I will really appreciate :-)
I use debian with the lastest svn jackmp installed in /usr/local .. also I have the jack1 debian package installed in /usr .. I dont know if that can be a problem ... anyway the jack2 server runs perfect ... in fact normally I use jack2 because runs better on my computer ... and of course I can open manually all the rakarrack instances I want ....
Sorry I'm lost .. :-)
Josep
--
Josep Andreu <holborn(a)telefonica.net>
Hi, jack-file 1.0 is available on github:
http://danmbox.github.com/jack-file/
It contains file2jack, a Jack transport-centric audio player that maps
files onto the (optionally periodic) transport timeline. It can map
one or several files to arbitrary positions on the transport timeline,
and if requested it can make the timeline "appear" to loop (without
actually moving the transport -- so no playback gaps! file2jack
simply sends out a periodic waveform).
There is also jacktransportloop, a simple utility to force the
transport to shuttle back and forth between two endpoints (this one
will, of course, create gaps, but is useful to control other
applications).
Thanks to all those who have been helped via LAD regarding libsndfile and jack.
-- Dan
> Amicalement et peut être à bientot sur un autre projet qui impose moins de
> contrainte.
Regardless of where you choose to announce and grow your project, you
will eventually have to publish in some English-speaking signals &
systems-related journal, if you have an original scheme.
For the sake of your own time, and ESPECIALLY that of your would-be
contributors, you should attempt to do this sooner rather than later.
You may well end up finding that your scheme doesn't bring any
measurable benefit to the table, or worse (in the way that most
home-grown crypto schemes fare).
-- Dan
Forgot to add the list in Cc.
--- On Thu, 7/7/11, James Warden <warjamy(a)yahoo.com> wrote:
> From: James Warden <warjamy(a)yahoo.com>
> Subject: Re: [LAD] audio format abadie.jo
> To: "pierre jocelyn andre" <temps.jo(a)gmail.com>
> Date: Thursday, July 7, 2011, 8:24 AM
> Let's stop any confusion here:
>
> Pierre, if the official language of LAD is English, as a
> member of the list you have to accept it. As you point out,
> if you do not respect this rule, you are free to leave the
> mailing list. I am sure you can find forums in French
> dealing with linux audio (try www.linuxmao.org although it
> is not really developer oriented).
>
> You have to understand that regardless of the language
> used, the content must be understood by all the members
> interested in the discussion. I am not sure most people
> understand French, but I am quite sure most understand
> English. It is certainly a bias but if you want to reach LAD
> developers, you will have more chance by using English.
>
> J.
>
> PS: Even the C language contains English idioms ... ;)
>
Bonjour,
j'ai créé un nouveau format audio destiné à linux. Je suis à la recherche
d'aide pour finir le langage C, pour tester, et pour créer une nouvelle
générationde carte audio. J'arrive à créer des fichier audio avec des voix
humaines de plusieurs Ko avec seulement 10 octets.
La page d'avancement de mon projet audio se trouve ici :
Http://www.letime.net/legere/index.html
Hi I've made a patch for jack-rack so it can be built with -DGSEAL in
the CFLAGS:
GSEAL explained here: http://live.gnome.org/GnomeGoals/UseGseal
i made the changes to a clone of the jack-rack git source.... which
fails to build....
ok, there's one area in main.c i had to cheat to get it to build, and
that's the gnome_program_init line, specifically the LIBGNOMEUI_MODULE
#define... Which is #defined in <libgnomeui/libgnomeui.h>.... Which
includes/uses deprecated GTK symbols, namely GtkCallbackMarshal, which
is due to the CFLAGS (GTK_DISABLE_DEPRECATED etc) used, is an unknown
type. I don't know how to fix that error as I don't know gnome. If you
look at the patch you'll notice I've removed the libgnomeui includes
from other c files as they weren't used. The error here is in
libgnomeui using gtk deprecated types.
but --disable-gnome fixes that kind of problem (git).
if the list refuses the attachment:
http://jwm-art.net/code/jack-rack-gtk_deprecated_fix.patch
cheers,
james.
Given all the needed Linux dependencies, and the difficulties of
getting decent audio performance on Android, what about not using
Android and using good ol' Linux instead?
Specifically, MeeGo on the Nokia N9 (
https://flors.wordpress.com/2011/06/20/nokia-n9-state-of-the-art-of-mobile-…
). I'm sure that it will be easier to create handheld multimedia
applications on an in-production and widely-distributed, supported
product that supports the full stack of libs and development tools
already in use by the LAD community....
..................
Fortunately, a bunch of interesting multimedia projects will be
getting a Nokia N950 to develop applications for the upcoming Nokia N9
( see also http://shootspeak.com/2011/06/24/nokia-n9-extra-facts-tidbits-updates/
).
The following are excerpted from
http://wiki.meego.com/Community_Office/Community_device_program/Nokia#Accep…
as of July 2 2011:
-- Porting Maesynth and Maelophone from N900 Python to QML and C++.
Stress testing the new Qt Game Enabler to see if we finally have low
latency audio support in Qt. Will also look to see if we can get midi
sample support via Wild Midi or equivalent.
-- Porting FunkeySynth, a MeeGo Tablet synthesizer to Harmattan
http://sandst1.wordpress.com/
-- Develop an audio recording application with geo-location support,
plus other applications to improve personal productivity utilising the
Harmattan notification/event view.
-- Develop FM RDS applications with focus in the new standards from
RadioDNS like the RadioVIS (partly based in the already existent the
N900-fmvis http://code.google.com/p/n900-fmvis/). I'm a member of a
university radio station (Radio Muda FM, 88.5MHz) and my plan is to
develop "real life" radio station applications.
I'll also rewrite an application I did for audio streaming, darknow (a
gui for darkice, http://darksnow.radiolivre.org) which is an icecast2
client, and also write an audio/video icecast2 client (based in a
software I did called theorur, http://theorur.sarava.org), all using
QT.
-- Porting XBMC + MeeGo TV stuff + doing audio continuums using pulseaudio.
-- Creating a Libre.fm radio client and porting Jokosher to small
screen devices.
-- Meex, a portable DJing application http://jenkins.vitaminj.co.uk/job/meex/
-- Porting Amarok to tablets and handsets running MeeGo/Harmattan.
-- Developing an audio player to access to more than 47 000 webradios
referenced on AOL shoutcast (by name, genre, current track)
-- Panucci - Resuming audiobook and podcast player
-- http://mediadownloader.cz.cc/?page_id=2
-- LinuxMCE is a next generation smart home platform encompassing
media, home automation, telecom, and security features.
http://www.linuxmce.org/
-- Porting Flumotion an open source streaming solution to Harmattan
taking advantage of the hardware encoding and the camera
-- magnus-plus photo: an application that combines a camera-based
magnifier with more advanced image processing techniques
-- Photographer's application suite (SnapGo, currently) to include
feature like a light meter and GPS track recording.
-- And last, but not least, I'm Looking forward to getting mine soon.
:-) [For: http://wiki.meego.com/tubelet-and-cutetube-port and
http://code.google.com/p/ytd-meego/wiki/CitizenJournalismWithYoutubeDirectF…
]
Niels
http://nielsmayer.com
PS: As long as floating-point limited CPU's (ARM) are the norm among
mobile processors, there may be a final calling for really complicated
audio synthesis to be done entirely with integer arithmetic. Which may
necessitate a different and more monolithic architecture -- one where
everything is done/controled in&by the application itself, as opposed
to using jack. Given the limited screen real estate available, how
much can you expect to successfully control and mix simultaneously
anyways?
PPS: The successful apps figure out dedicated gestural/haptic/vocal
interfaces to control all the knobs-and-dials underneath, e.g..
http://smule.com/ 's http://ocarina.smule.com/ (see
http://www.youtube.com/watch?v=uHtCAAj8jFI ).
PPPS: speaking of having a complete "Linux" stack , what about WebOS
and the HP Touchpad? http://www.wired.com/reviews/2011/06/hp-touchpad/