Thread Rating:
  • 1 Vote(s) - 3 Average
  • 1
  • 2
  • 3
  • 4
  • 5
AAF on mixbus?
#31
I got it. libsndfile is actually quite common and can be installed very easily on any linux distro from the official repository, no need to build it. That's all you need to build the library and the two programs AAFInfo and AAFExtract.

However, since the only way of creating an Ardour session relies on Ardour itself, the program AAF2Ardour ardour_aafimport needs Ardour6 libraries and headers. So there might be a need to build Ardour6, but AAF2Ardour ardour_aafimport was only a proof of concept, nothing very serious.

A developer who understands Ardour / Mixbus architectures could write a new program that "simply" creates a new empty session and import AAF data into it. I just committed a very basic example source file to show library usage : github.com/agfline/LibAAF/blob/master/example/global_aaf_parsing.c
Reply
#32
I'm confused now... so what is the file called _ardour_aafimport? It's in a bin folder so I assumed it was the file for doing the conversions.
Knowledge is knowing a tomato is a fruit...
Wisdom is knowing you don't put tomatoes in a fruit salad !!
Reply
#33
You're right ! I'm sorry, not so simple to get back on this project after those years...
So yes : _ardour_aafimport is the program that creates ardour sessions and import AAF files. This same program was once called AAF2Ardour in a previous version of the project...

Sorry for the confusion Wink
Reply
#34
So for Jostein's benefit... should he be needing to build anything himself (e.g. libsndfile) or is the script from ardour/bin/ardour_aafimport sufficient to do an import?
Knowledge is knowing a tomato is a fruit...
Wisdom is knowing you don't put tomatoes in a fruit salad !!
Reply
#35
There was nothing on TV here yesterday apart from hours and hours of the King's coronation (!)  So I decided to give this a try by running WSL (it allows Linux apps to be run from within Windows).

To get me started I issued the command ./bin/ardour_aafimport --help which I found in one of the Readme files - but all it did was to show me this message:-

Quote:error while loading shared libraries: libgtkmm-2.4.so.1: cannot open shared object file: No such file or directory

So it looks like there's more stuff missing than just libsndfile  Sad
Knowledge is knowing a tomato is a fruit...
Wisdom is knowing you don't put tomatoes in a fruit salad !!
Reply
#36
For this to have any chance of working I guess I'd need to find Ardour version 6 somewhere (out of date now) and then hope there'll be nothing else missing!
Knowledge is knowing a tomato is a fruit...
Wisdom is knowing you don't put tomatoes in a fruit salad !!
Reply
#37
(05-06-2023, 08:46 AM)johne53 Wrote: For this to have any chance of working I guess I'd need to find Ardour version 6 somewhere (out of date now) and then hope there'll be nothing else missing!

...though even then, how would I know if I'd need 32-bit Ardour or 64-bit?  @agfline - for this to be testable you'd need work on a simpler installation process...  at the moment it feels like some self-assembly kit but with half the parts missing  Confused
Knowledge is knowing a tomato is a fruit...
Wisdom is knowing you don't put tomatoes in a fruit salad !!
Reply
#38
Hi @agfline - recently I messaged you to say I'd tried Linux running an earlier version of Mixbus. I then tried to copy your app into the folder containing Mixbus's libs (/opt/Mixbus32C-8.1.137/lib). In theory this should've given access to all those shared object files which your app reports as missing.

At first, dragging your app wouldn't work but I eventually managed to copy it by opening a terminal window and using sudo cp - but when I try to run the app, Linux reports:- error while loading the shared library libardour.so.3.  I've checked that libardour.so.3 is present in the same folder as your app and I've even tried adding /opt/Mixbus32C-8.1.137/lib to my Linux path - but nothing gets rid of the above message.

I'm not being funny but this would be very much easier if you'd supply a fully working converter app. Testing's just not possible if you only supply your modules and expect us to find all the missing stuff somehow  Sad
Knowledge is knowing a tomato is a fruit...
Wisdom is knowing you don't put tomatoes in a fruit salad !!
Reply
#39
Hi @johne53,

Quote:error while loading shared libraries: libgtkmm-2.4.so.1: cannot open shared object file: No such file or directory

libgtkmm-2.4.so is one of the many Ardour dependencies, not one of libaaf.


Quote:error while loading the shared library libardour.so.3

This is a linker issue. This is why Ardour session utils are being run through a script, telling the linker where to find the actual libs (see README and run script)


Quote:I'm not being funny but this would be very much easier if you'd supply a fully working converter app. Testing's just not possible if you only supply your modules and expect us to find all the missing stuff somehow  [Image: sad.gif]

I never claimed to be distributing any standalone working program. I just made a library and I have made a proof of concept out of it. That's all. It now needs to be properly implemented into Ardour.

The problem is due to the complexity of Ardour, and how we rely on it to actually build sessions. I totally understand the difficulty for someone not familiar with linux / programming. But I repeat, the program I made is just a proof of concept, that must stick to the Ardour's way of doing things. If Ardour was providing just a single standalone lib, I could give you a standalone working program. But things are a bit more complicated. Hopefully it will get easier once libaaf will be officially implemented (I noticed that Robin Gareus had a look at it, so maybe we'll be able to work on a solid cross platform implementation soon)

However, I've been moving forward since we last talked. First, I have dissociated libaaf and the tool to import AAF into Ardour. Putting them together was the cause of many troubles, complexity and confusion.

So libaaf github repository is now totally independent from Ardour and I created an Ardour7 fork with the addition of a new CLI utility called new_aaf_session (inside the session_utils folder).

Here is the fork : https://github.com/agfline/ardour_aaf_support
Here is the pull request to official Ardour repo : https://github.com/Ardour/ardour/pull/805

I also removed any dependency to libsndfile.


With all those changes, it's now possible to download, compile and install libaaf without any difficulties (at least on debian for now).
Then you can download and compile my Ardour7 fork on debian (following the regular way of compiling Ardour), and you will get a working command line utility to create sessions out of AAF files.


Regards,

Adrien
Reply
#40
Many thanks Adrien. It's looking like Jostein is in fact running Kubuntu so I don't know if a build will work for him now - but hopefully (if he can find some spare time...) he'll be able to give it another try for us. Fingers crossed  Wink
Knowledge is knowing a tomato is a fruit...
Wisdom is knowing you don't put tomatoes in a fruit salad !!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)