av + ari - Two very similar packages that it may be good to integrate

I learned about ari a few months ago, and it looks like an excellent tool to create educational videos from markdown slides and R code/plots. Currently, it only supports the use of text-to-speech synthesizers from Google, Amazon and Microsoft, which not only adds the extra headache of setting up an account and API credentials, but undermines R’s open source nature. As such, I’ve been thinking about integrating open-source synthesizers like Flite and eSpeak into the system. I was in the process of exploring how to do that when I discovered the av package on rOpenSci. Looking at ari under the covers, it renders its video through system-level calls to ffmpeg, and now I’m wondering whether it might be beneficial to bring the av functions into ari as well. (They may improve efficiency.) I’d have to check with the author (John Muscelli) about that, but if he’s cool with it, it would be great to integrate!

I’ve been an R user for years, but I’ve never been involved in developing/adding to a package before. I’ve been looking for a group project to start up or get involved with, so I hope I can collaborate with @jeroenooms and others who contribute to the av package!

1 Like

Hi @ThePezman,

I think it would be possible to make use of the video renderer from av from the ari package. I think the best place to get started is fork https://github.com/jhudsl/ari and try to add an additional rendering back-end based on e.g. av::av_encode_video() and see if you can make this work. If you find that some required functionality is missing from the av package, we can try to add this.

I’m not so sure about flite and espeak; these projects seem a bit dated and the output quality is very poor. But an offline alternative might be to make use of native speech functionality that seems present in almost all operating systems, e.g windows Speak or the ‘say’ command in MacOS.

1 Like

Okay, I’ll try my best with this. But I’ve never used R for anything other than analysis and never really used GitHub at all. Hopefully I can check in with the community for any help or support I might need.

I want to eliminate any dependencies on closed-source, commercial software or systems. Linux is my main OS - I got out the Mac ecosystem years ago and only use Windows for gaming.

Maybe open source speech synthesizers don’t have the best voice quality, but they are understandable, and they will always work.

Here are a couple of resources to help with R + GitHub:

Good luck!