FFmpeg integration with upload form

Silverstripe Version:
SS 4.10
Hi, I would like to integrate FFmpeg in a way that when a user uploads a file via a form, I can encode the file to be “web compatible”, like low bitrate, h264 and get a thumbnail generated. I would need an option to send the original file to a Dropbox too but that’s not important at this point. I’ve seen an addon called smindel/silverstripe-video but it’s not ported to SS4 and I doubt it will be done.

Is there any documentation relative to the integration of FFmpeg or an add on available compatible with SS4? Just trying to start on a good base and have zero experience with FFmpeg in Silverstripe.

Details of your query go here

  • FFmpeg 4 is already installed on a VPS Ubuntu 20.14, apache2 server with SS 4.10
  • I have some experience coding in Silverstripe 3

// Include any relevant code. If you have a lot of code, link to a gist instead.

  • Just starting, have no idea where to start outside of maybe digging into Smindel code and tweak it
  • Any help is welcome

You can search for Silverstripe modules on packagist.org or on addons.silverstripe.org.
I couldn’t find any modules on the addons site, and packagist only shows one old and seemingly abandoned package which would definitely not be compatible with Silverstripe 4.x.

Uploading videos in the CMS is not a common practice - normally you’ll want to use a CDN or a service that specialises with video such as vimeo or youtube - especially if you’re going to be streaming those videos to users in an embedded video player.

That said, I looked up the smindel package you mentioned. If you’re dead set on using videos uploaded to the CMS it looks like a decent (if outdated) starting point.

1 Like

Thanks for your answer and research.

I think in my case, I’d rather try to get the video upload working as the videos have to stay on the server for only 7 days. Though if there’s another solution with Youtube or Vimeo, I’m not against it. I think my best bet is to work on the Smindel package and update it myself.

1 Like