You must start LAD daemon before using any apps that use it (e.g. Codec Engine
or native Link apps), so your "when I run the first app without first starting
LAD, it fails" experience is expected. Intermittent failures, however, are not.
The next step may be to enable trace - which is a little tricky with multiple
processes. Typically, LAD users will enable just the ARM-side trace from each
of the ARM-side apps, and utilize a "server trace app" that pulls all the DSP
trace off the DSP in a single place. If this approach isn't used, app A will
get some of app B's DSP-side trace mixed in, and vice versa.
There's an example app provided with CE - see examples/apps/server_trace - to
start a "trace-collecting" app that collects the DSP-side tracing (and as a
result disables DSP-side trace collection from the other apps). Then, rather
than using the CE_DEBUG env var to enable trace (which also [incorrectly in
this use case] enables DSP-side trace collection), you can use the CE_TRACE env
var to just enable the ARM-side trace - from each of your 2 processes.
Might look something like this:
1. Start LAD daemon (with 2 arguments, arg1 == log file name, arg2 ==
"verbose" for extra chatter).
2. Start server_trace app (to collect DSP-side trace)
3. Run app1 and app2 with CE_TRACE env var set to "*=01234567" to set all
trace masks ("*") to all 8 levels of trace enabled ("01234567") on the ARM side
and no trace on the DSP side.
That may help point out where things are going awry.
And finally, I just updated the LAD article with some known limitations from an
internal design doc - don't know if you're bumping into any, but thought it was
worth mentioning.
http://wiki.davincidsp.com/index.php?title=Link_Arbiter_Daemon
Feel free to update that wiki article with any other
tricks/techniques/limitations you dig up!
Chris
________________________________
From: Mat Laibowitz [mailto:[EMAIL PROTECTED]
Sent: Monday, October 27, 2008 9:01 AM
To: Ring, Chris
Cc: [email protected]
Subject: Re: still trying to access CE from two applications
So I have been trying to get the LAD to work.
Is there any more information on it besides the wiki page?
Basically, I have reconfigured my apps to use it and recompiled the LAD with my
library paths. Then when I run the first app without first starting LAD, it
fails. If I run it after starting LAD it runs.
So it looks like it is somewhat setup.
However, the first app does not run every time. It is intermittent. Sometimes I
start it and it can't open the codec engine and quits, other times it runs
without fail.
When I have it running, I can then start the second app and, similarly, it runs
some of the time, but mostly can't open the codec engine and quits.
Very strange behavior.
Maybe there are some configuration options that I am missing. Or something
about how to setup the server packages.
Thanks,
-mat
On Sun, Oct 26, 2008 at 5:26 PM, Mat Laibowitz <[EMAIL PROTECTED]<mailto:[EMAIL
PROTECTED]>> wrote:
OH! This looks like it is exactly what I am looking for. I will try it out.
Not sure how I missed this, just got going with the latest codec engine as
well, so it should work fine.
Thanks so much.
-mat
On Sun, Oct 26, 2008 at 4:31 PM, Ring, Chris <[EMAIL PROTECTED]<mailto:[EMAIL
PROTECTED]>> wrote:
Which version of CE are you using? Might look into this:
http://wiki.davincidsp.com/index.php?title=Link_Arbiter_Daemon
Chris
________________________________
From: [EMAIL PROTECTED]<mailto:[EMAIL PROTECTED]> [mailto:[EMAIL
PROTECTED]<mailto:[EMAIL PROTECTED]>] On Behalf Of Mat Laibowitz
Sent: Sunday, October 26, 2008 1:19 PM
To:
[email protected]<mailto:[email protected]>
Subject: still trying to access CE from two applications
Sorry to ask this question again, but I still don't have this working.
Is it even possible to have two applications on the same DM6446 device access
codec engine servers?
I have tried having two applications access different codecs in the same server
combo and only the first one to open it works.
I have also tried having two separate server combos, one for each application
with completely different codecs in each one, and it still did not work.
In both cases the second application to try to do a algorithm create fails and
cannot create the algorithm.
I feel like this is a pretty basic requirement and should work. I particularly
think having two servers should work. Perhaps I need to change the memory
settings in the server.cfg or tcf so they don't overlap and can work together.
Any help would be greatly appreciated.
Thanks,
-mat
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source