Open hansmbakker opened 7 years ago
Yes, the way to detect the tools has changed with VS2017. We are looking at updating the scripts to support VS2017.
Here's the updated Buildffmpeg.bat I used for vs 2017 BuildFFmpeg.zip
Hi, this isn't for VS2017
The code works fine for VS 2017, we just haven't had a chance to fully update the build scripts to support VS 2017. I've got most the necessary changes but need to validate with different install combinations.
I try both, but I got error "VS140COMNTOOLS environment variable is not found. Check your Visual Studio 2015 installation" how to fix this?
This is because the scripts haven't been updated for VS2017.
I've been investigating a new package manager that Microsoft is developing and it does make things a lot easier to get started and works great for both VS2015 and VS2017. That's partly why it's taken me longer to get the scripts updated to VS2017.
The project is vcpkg and it already supports a bunch of different projects with both VS2015 and VS2017. They have already added support for FFmpeg and I've issued a pull request to add the UWP version of FFmpeg.
To try it out is quite simple:
git clone https://github.com/khouzam/vcpkg -b ffmpeg-uwp
cd vcpkg
bootstrap-vcpkg.bat
vcpkg install ffmpeg:x86-uwp ffmpeg:x64-uwp ffmpeg:arm-uwp
Let this run for a while and you will endup with FFmpeg built and available for use (noticed that msys, and all the tools are automatically installed and configured for you.Now comes the even more interesting part, the integration with VS.
vcpkg integrate install
This configures VS to automatically reference the packages that you have built and have installed. So any project can now reference the FFmpeg headers without having to modify the include path and manually adding references to the dlls. Building a store app will automatically include the required files in the package.You can see how this has simplified the projects with the vcpkg branch that I just updated.
I would love to hear people's thoughts on this approach, personally I found this to be much easier to setup.
I just wanted to ask why cant we have a nugget package for this repo? So that it gets simpler to integrate it in any uwp project on any machine instead of building it and then integrating it on a machine whenever we want to use it?
the reason I asked thisis because on some machines it builds successfully but on some machines it gives many errors, so if there was a straight forward package that would simplify things
How do you reference these integrated packages in VS 2017 for C#?
@touseefbsb I think there are legal reasons why no compiled builds of ffmpeg are distributed. Some of the codecs might be covered by patents. The authors of ffmpeg "only show you how this could be decoded" but they do not offer any running decoders/encoders. If you compile yourself, then you are the one who acutally built the decoder assembly...
It seems that BuildFFmpeg.bat wants to use VS2015. Could you please update it to support VS2017?