OpenNewsLabs / autoEdit_2

Fast text based video editing, node Electron Os X desktop app, with Backbone front end.
https://opennewslabs.github.io/autoEdit_2/
MIT License
421 stars 56 forks source link

Offline transcription on Linux and Windows #86

Open tenkabuto opened 5 years ago

tenkabuto commented 5 years ago

Feature request, following from #36

pietrop commented 5 years ago

Thanks @tenkabuto

Is this for pocketsphinx or Gentle STT option?

In terms of what it would take to implement, here's a breakdown

Pocketsphinx

It's a matter of compiling pocketsphinx for linux or just finding the binary if it exists already made.

And adding some logic in the module to use the one for the right OS.

/lib/interactive_transcription_generator/transcriber/pocketsphinx

Ideally in the packaging process it should only add to electron the one for the right OS, similarly to how it has been done for ffmpeg. (see this explanation ffmpeg-and-ffprobe-in-electron altho this could be a later optimization)

Gentle

For the Gentle STT setup as shown here you need to open up a separate app.

If that app was available for Linux the integration could work out of the box, provided it spins up on the same local server end point (altho if it doesn't that could be easy to adjust)

Linux version of Gentle might need to be raised on that project

Baidu

Baidu has a free online/offline STT. I played around making an SDK for the API in this module baidu-node-stt.

Erudition commented 5 years ago

pocketsphinx is already available with something like sudo apt install pocketsphinx. Gentle is also available with something like sudo apt install docker.io && sudo usermod -a -G docker $USER followed by docker run -P lowerquality/gentle

...So why should anything more be required to get these to work?

pietrop commented 5 years ago

Hi @Erudition ! If you are bundling and packaging the offline STT engines within the electron app, you ideally don't want the user (who might not be a developer) to have to install docker, or run sudo commands to get setup with STT.

It be best to find a way to have the STT engines bundle up within the app, without requiring extra setup, if that makes sense?

Erudition commented 5 years ago

Hi @pietrop! Of course! But you're way ahead of me. You want it working out-of-box, and of course that would be great. I, however, just want it working in the first place!

I said those commands should be all that's necessary. Alas, they are not. That's the problem I mean to point out. There is basically no documentation on setting these up under gnu/linux, and the app shows no indication that they are/not properly installed/configured, either. The jobs just sit there "processing" indefinitely either way.

So, when it sounded like you didn't know for sure if your proposed engines were even available, e.g.

If that app was available for Linux the integration could work out of the box or just finding the binary if it exists already made.

...I just thought I'd share that I did manage to find them available, and right within reach (and I tried to test them). Unfortunately I still haven't managed to get one to work.

pietrop commented 5 years ago

pocketsphinx should work under linux as is?

nomatica commented 5 years ago

I am interested in using this offline on Windows. Any guidance would be appreciated.

pietrop commented 5 years ago

Hi @nomatica, Have you tried it yet? I think the binary might not work, but 🤞

nomatica commented 5 years ago

I have not. To be honest I am not sure how.