c# – How to include ffmpeg in an Aspire project?

So, I’m currently looking at using Aspire for a project of mine which basically consists of three parts: A web-based upload form for videos (service #1), a converter service which runs ffmpeg on said videos (service #2) which then hands the result over to a file manager (service #3). Using any outside services like Azure is right out, by the way.

Since I also want the user to see the progress of any encoding done by #2, I also thought about adding a SignalR hub (probably service #4) because I’m already familiar with that in contrast to Kafka or RabbitMQ (where I’m not even sure that those are intended for talking to web clients)

This means that #2 will have a SignalR client which talks to #4’s SignalR server.

But since any ffmpeg implementations for C# are just wrappers around a native executable, this means I have to include it in my project somehow.

Now, if I had a Dockerfile, I’d simply add an “apt install ffmpeg” at the proper location and be done with it.
But if I put service #2 inside such a Docker project, I’m not to sure how to ensure that it can establish a connection to #4 reliably.
And if I don’t put it in a Docker project, how do I tell Aspire to include the ffmpeg executable somewhere? And then tell the C# wrapper about that?

Read more here: Source link