This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Mission: Jack support in Kdenlive for Ubuntu Lucid 10.04

Tags: None
(comma "," separated)
falkTX
Registered Member
Posts
18
Karma
0
Hi there!

Kdenlive is just an awesome software, I just love it.
I've been working on building/packaging multimedia packages for the next Ubuntu version (will be release by the end March 2010).
(https://launchpad.net/~falk-t-j/+archive/lucid)

I packaged a lot of audio apps so far, so I'm now focusing at video production.
Since my favourite video editor is Kdenlive, I want to get it as stable/working as possible.

The problem is Kdenlive's audio, it just doesn't work right at the moment.
Ideally, Kdenlive should have full Jack support with Transport too.

I've checked this forum for posts about it and I know that Transport will not get here soon, but at least Jack audio output may work.
And I believe that using Jack will fix the popping sounds and maybe some other problems.


I'm not sure what Kdenlive uses for output audio, but I'm guessing it's all about mlt.
If this is true, Jack support may come if:
- mlt uses Xine for audio
- mlt uses ALSA for audio and pulseaudio doesn't interfer (pulse and jack don't combine very well)
- mlt has, maybe optional, built-in support for Jack


Having Kdenlive with Jack support is my top-priority now, but I'm not sure how to get there.
Any help is appreciatted.


Thanks in advance.



PS: This is my first post
geoffrey
Registered Member
Posts
100
Karma
0
This would be a nice feature.


j-b-m
Registered Member
Posts
804
Karma
1
Hi!

Yes, all audio / video processing is done at the MLT level. If you are interested in helping with the development, you should post your ideas / questions on the MLT mailing list (you need to register before posting):

https://lists.sourceforge.net/lists/listinfo/mlt-devel

From what I know, MLT uses SDL for audio and video output.
falkTX
Registered Member
Posts
18
Karma
0
Just subscribed to mlt mailing list and asked about Jack.

I know some C coding (but not C++, although it's similar), but I didn't saw any app using SDL that supports Jack (so it might not be possible)
Maybe bio2jack ?

Isn't MLT suppose to have Xine support? (there's some code about it in the source).
Using Xine would solve the problem and it's easier, but not sure how to enable it (or if it's even possible)
falkTX
Registered Member
Posts
18
Karma
0
Partially done already.

I was able to get PulseAudio and Jack playing together without problems (by using a custom pulseaudio config file, and a script I made to autostart pulse after jack (or kill it and restart if running) ).

This set-up allows to use Kdenlive when Jack is running, and there are no chopping sounds!


For comparison, I made this test:

Pulseaudio without Jack, run kdenlive -> sound is ****
Pulseaudio with Jack, run kdenlive -> sound is playing as it should be



So having pulseaudio running with Jack is actually a good thing!

If you want to test this out, check the PPA at the top, and install "pulse-jack" (you'll need pulse with jack support installed)
falkTX
Registered Member
Posts
18
Karma
0
I've studying some C++ and I now know enough to get Jack Transport functions to work and compile.

My idea is to add 2 new files to kdenlive source: "jacktransport.cpp" and "jacktransport.h".
I'll make some basic transport funcionality and them submit the code.

I'll be back soon!
falkTX
Registered Member
Posts
18
Karma
0
ha... seems a little too much for me.
I'll write a basic C++ app instead, so the devs can see what is needed to get Jack Transport working

Expect it to be ready in 2 weeks
falkTX
Registered Member
Posts
18
Karma
0
Here is some basic code.

Implemented:
- Connect to Jack
- Play/Pause Transport
- Go to a specific Jack frame
- Get the Current Jack frame
- Close/Kill Jack connection

But please note that most of the GUI stuff doesn't work.
I'm a python developer, not C++, so I don't usually bother about converting QString->int or int->str->QString.
You should look into the code itself, which is the important stuff.


PS: The attached file is really a tar.gz file, just rename itImage
falkTX
Registered Member
Posts
18
Karma
0
Added a bug report:
http://www.kdenlive.org/mantis/view.php?id=1397

j-b-m
Registered Member
Posts
804
Karma
1
Thanks for the code. I think jack transport should probably be integrated at the MLT level, with GUI options in Kdenlive to enable/disable it.

I attached your code to the bug report, and I think further discussions could be gathered in the bug report.

I don't think that feature can make it in the next Kdenlive release which is due in 10 days, but will look at it asap.

regards
falkTX
Registered Member
Posts
18
Karma
0
Thanks.

But I'm not so sure about Jack Transport in MLT.
Isn't MLT just the engine behind Kdenlive?

We should discuss this in the bug report.

See ya soon
psidrum
Registered Member
Posts
43
Karma
0
this is whats preventing me from using Kdenlive as my main vid editor,

the audio in kdenlive is too crackly,

if kdenlive gets Jackd support it would be great!



Trundicho
Registered Member
Posts
8
Karma
0
Hi,

I have configured my .asoundrc file so that every application that uses alsa routes its output into jack.

http://wiki.ubuntuusers.de/jack/Programme_ohne_Jack-Schnittstelle

this seems to work with almost every application except with kdenlive - I'm getting sound, but it is more a glitchy tecno song and slows down video playback to a real slomo show...

does anyone have other experiences?

greetings
ddennedy
Registered Member
Posts
1315
Karma
1
KXStudio distro uses the same technique with .asoundrc, and it works fine for me. Sorry I could not help any more.


Trundicho
Registered Member
Posts
8
Karma
0
Yay, I just had to lower the jack Frames/Period parameter and now it works just fine ;)

greetings


Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot], Yahoo [Bot]