New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MonoGame.Framework.Content.Pipeline does not find ffmpeg/ffprobe in runtimes folder #7901
Comments
I ended being able to use MonoGame.Framework.Content.Pipeline package without computer setup with a bit of configuration on my projects:
For the moment, I'm good with my workaround since everything is done in my .csproj files. Thanks. |
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
@damian-666 Thanks for your feedbacks but it's indeed a bit off-topic. I opened that issue to talk about the MonoGame.Framework.Content.Pipeline package specifically. You should consider talking about your issues on MonoGame forum or opening other issues so it's not confusing. :) Here is a TLDR of my original messages on MonoGame.Framework.Content.Pipeline: Runtimes and content files of package MonoGame.Framework.Content.Pipeline are not found by default when referencing the package so parts of the pipeline are not working. It requires additional setup at the time and there are small info about it.
(see my previous messages for details) The two issues have both workaround so I can do with them but I hope it will possible to fix that in next versions. |
Please refer to #8124 while this issue is being worked on. |
Hi there!
I recently updated from MonoGame 3.7.1.189 to 3.81.303 and from .NET Framework to .NET 6 on my game project.
And it has gone very well, thank you for the good job ! :)
But I do have a small issue to report with MonoGame.Framework.Content.Pipeline. I'm using its package directly in my engine to cook my assets at runtime. (Note: because that package didn't exist in 3.7.1.189, I was using it at version 3.8.0.1375-develop until now. Not the best but it was working. ^^)
But by updating my projects to .NET 6 for MonoGame 3.81.303, my projects depending on MonoGame.Framework.Content.Pipeline now output the runtime assemblies inside the "runtimes/{platforms}/native" folder structure.
Problem is: ffmpeg and ffprobe are not next to the executable anymore and
ExternalTool.Run
is not able to find them, resulting in the following exception when cooking an audio file:The workaround is pretty simple: you can set your PATH with a folder containing ffmpeg & ffprobe and it will work. But it's kinda sad that it doesn't find them by default since there are provided by the package.
Note that it doesn't seems to be an issue for packed/published executables (like mgcb CLI) since the package runtimes will be output next to the executable in that case.
Any insight on the subject ?
Would it be possible to make
ExternalTool.Run
look for executables in the valid target platforms "runtimes" folders (if existing) ?(It is already looking for "linux" and "osx" folders to resolve ffmpeg & ffprobe.)
EDIT: I have found ways to make the package work (see following comment).
What version of MonoGame does the bug occur on:
What operating system are you using:
What MonoGame platform are you using:
The text was updated successfully, but these errors were encountered: