erwinwolff/aforge

Newest FFmpeg with new API; FFmpeg 32 bit and 64 bit

Opened this issue · 6 comments

Describe the fix or new feature which you would like to contribute to the
project

Changes:
- The file version of the DLL/EXE is my internal version number.
  The product version of the DLL/EXE is the original AForge.NET version number.
- Added changes from http://code.google.com/p/aforge/issues/detail?id=312
- Compiled with .NET4.0 Client Profile
- Added 32 and 64 bit FFmpeg 2013-09-25 git-65bf9a4 GPL build
- Added VfW like quality settings to FFmpeg part. The bitrate was not easy 
enough to use.

I included the whole package. It's based on r1724.
I attached the source folder w/o the Images sub folders.

Is there a way that I can send you my Externals\ffmpeg with the 32 and 64 bit 
version? It's 24 MB as zip file.

Original issue reported on code.google.com by oliplu...@gmail.com on 25 Sep 2013 at 6:09

Attachments:

>> Is there a way that I can send you my Externals\ffmpeg
Why would you want this? The idea was that external FFMPEG is easily available 
on the website mentioned in "Externals\ffmpeg\AForge ReadMe.txt"

Do you have a custom build which your changes rely on?

Original comment by andrew.k...@gmail.com on 25 Sep 2013 at 7:42

Andrew,


We have to put it in in the right structure. :)
Anything else than that we can get it from the internet.

I send you the basic structure with you ReadMes.

A custom build (LGPL only) is currently in work!


Best,
Oliver Merkle

Original comment by oliplu...@gmail.com on 26 Sep 2013 at 1:10

Oliver,

OK, let me rephrase this so we clear on this. If I go and take build from here
(http://ffmpeg.zeranoe.com/builds/), will your changes still work? Or the 
changes you did in AForge.Video.FFMPEG need some custom build (like the one you 
have, the LGPL one).

Original comment by andrew.k...@gmail.com on 26 Sep 2013 at 1:18

Andrew,

The builds from http://ffmpeg.zeranoe.com/builds/ will work. I attached the zip 
of the empty (ReadMes only) of Externals\ffmpeg here. I had to introduce the 
subfolders x64 and x86 for the two different versions. Within this subfolder 
it's exactly the latest build from zeranoe.

The Release folder has then the same sub folders, x86 and x64 to hold the two 
different versions of FFmpeg stuff.

The LGPL build I am working on will fit the same structure that people can 
easily exchange it with zeranoe' GPL version and they have a choice between 
LGPL and limited FFmpeg functionality or GPL and full FFmpeg functionality.

Best,
Oli

Original comment by oliplu...@gmail.com on 26 Sep 2013 at 2:07

Attachments:

Andrew,

The final version is ready. I made a new zip package. The changes in total are:
Changes:
- The file version of the DLL/EXE is my internal version number.
  The product version of the DLL/EXE is the original AForge.NET version number.
  I don't expect you to take this change over. I just need this second version to handle internal FFmpeg updates, etc..
- Added changes from http://code.google.com/p/aforge/issues/detail?id=312
- Compiled with .NET 4.0 Client Profile
  I don't expect you to take this change over. I just needed .NET 4.0 version. All my changes should still work with .NET 2.0.
- Added 32 and 64 bit FFmpeg 2013-09-25 git-65bf9a4 GPL and LGPL build
  This has an impact on the Video.FFMPEG project(s) (GPL and LGPL) now and the release directory (GPL, LGPL, x86 and x64 now).
- Added VfW like quality settings to FFmpeg part. The bitrate was not easy 
enough to use.

- It's based on r1724.
- I included the changed parts (Externals, Release and Sources) of the package. 
I left the build DLLs and XMLs out and I did not attach FFmpeg GPL build. I 
included the LGPL build because this one is not available anywhere in the 
internet so far. I build it myself.

Let me know if you need anything else and if you are going to incorporate these 
changes into the main source. If yes I am happy to update the FFmpeg GPL build 
and provide a FFmpeg LGPL build from time to time.


Thanks for this great framework!
Oliver

Original comment by oliplu...@gmail.com on 27 Sep 2013 at 2:07

Attachments:

Hi Oli, 

This is excellent work. We are currently using a modifed AviWriter.cs from 
AForge.net in our open-source screenshot/screencast application ShareX. 

http://getsharex.com

We write a collection of images to an avi container. Using x264VfW we create a 
H264 compliant stream however because it is in an avi container, we then have 
to mux it to mp4 container using ffmpeg. Therefore it is a two-step process. 

Your code will allow us to create a mp4 container directly! Unfortunately, I am 
having trouble 
https://s3-ap-southeast-2.amazonaws.com/mcored/ShareX/2014-05/Retargeting_2014-0
5-05_12-51-31.png with retargetting. I was wondering if you were able to 
provide the x64 AForge.Video.FFMPEG.dll so we could include it in our 
open-source project. 

Hi Andrew, 

Are you planning on providing x64 support in your project in the near future, 
please? 

Thanks and regards
Michael

Original comment by mcored on 5 May 2014 at 4:53