ffmpeginteropx / FFmpegInteropX

FFmpeg decoding library for Windows 10 UWP and WinUI 3 Apps
Apache License 2.0
210 stars 53 forks source link

NuGet package updated for preview version #344

Closed Dona278 closed 1 year ago

Dona278 commented 1 year ago

First, this is an awesome library which is the more stable among others that I've tested, so great job guys. But I would ask: why the preview version is still 1.1.0-pre38 of 10/20/2022 while the master branch received commit (at this moment 3 weeks ago)? In short, it is possible to have an updated preview nuget package? There are some fixes merged that I need :)

Thanks

brabebhin commented 1 year ago

I will upload a new nuget soon.

Dona278 commented 1 year ago

Awesome! Thank you!

brabebhin commented 1 year ago

pre40 should be available soon.

Dona278 commented 1 year ago

I tried to update but with some errors...

1) I saw that from previous version for net6 the Microsoft.Graphics.Win2D was dropped in favor of Win2D.uwp which already was a dependency of the package, but for UAP framework, so I'm asking if it's correct.

2) Skipping the point 1, I had a build error: error NETSDK1130: Microsoft.Graphics.Canvas.winmd cannot be referenced. Referencing a Windows Metadata component directly when targeting .NET 5 or higher is not supported. For more information, see https://aka.ms/netsdk1130.

3) I tried to add the NuGet package Microsoft.Windows.CsWinRT as mentioned in the link within the previous error message and I can build without errors, but VS can't launch program which instant crash without exception.

Info: It is a WinUI 3 app. What can I do? Thanks

lukasf commented 1 year ago

Since WinUI is a native lib, you need to enable native code debugging, to see native exceptions which happen during startup.

You definitely need CsWinRT when using with a C#/WinUI3 app. And you should run the app as "Packaged" app. If you want to run unpackaged, you additionally need VCRTForwarders and a bunch of APIs cannot be used in unpackaged apps.

Does the same app work with the older prerelease version?

Dona278 commented 1 year ago

Before this version (pre40) all works without any sort of these problems. The app is run as unpackaged and already have the VCRTForwarder. The only issues that I've found are "access memory violation" and "hang on dispose with uri streaming" (both fixed). It's more strange (for me) that VS can't launch the app for debug and instead log a "process exit" directly in output.

brabebhin commented 1 year ago

There appears to be some problems with that packge yes. I can't succesfully build with it on neither the sample nor my own app.

In spite of now updating our nuspec in any way, it appears that the win2D version suffers a downgrade from 1.0.4 to 1.0.0.30 or something, which is rather strange

image

It seems the nuspec file had a regression, referncing the UWP win2D package instead of the winUI win2D package.

brabebhin commented 1 year ago

The pre41 version should fix the dependencies.

Dona278 commented 1 year ago

It works like a charm! Now I will test the waited fixes :D Thank you very much