Using ffmpeg codec inside Xamarin? - c#

I've been struggling with this topic for the past few weeks and I am yet to find a way to use ffmpeg inside my Xamarin project. There are couple of C# wrappers that work great but they don't work for API 15 and below versions of Android.
I'm trying to use ffmpeg in my project but I really don't know how to. I have tried to bind a Java project I found but .jar binding didn't work and apparently the only way is to use JNI for the binding which isn't very easy to do, at least for me.
I'm hoping someone can provide me some sources I can read on and understand how it works and what ways I can use ffmpeg in my project.
I will really appreciate any kind of help I can get.

Related

Is there a good way of extracting data from GUI on Windows OS using python libraries?

I'm currently working on a project which requires me to extract data from GUI on Windows OS - say I need to extract content such as the URL in my browser or the name of the attachment on Gmail.
I have already tried LDTP/Cobra, however it's pretty slow - each request can take up to 5 seconds and I need this library to be reasonably fast. Besides that, the LDTP/Cobra is pretty outdated and the latest MSI file doesn't work with python 3.* unless you modify the library itself.
I've been also researching the pywin API, however, it seems that you can't really extract anything with FindWindowEx and WM_GETTEXT method anymore, but I might be wrong.
My question is - is there any other library that would allow me to extract basically anything from a given Window? Maybe I'm missing an important part of the mentioned libraries? Ideally, I'm looking for a python library, but if there is no other way I could try and write some C# code.

FFmpeg library in WPF

I am building a softwere that can decode and encode using Wpf and c#, and I want to do that using, FFmpeg libary. I saw the ffmpeg autogen warpper but I couldn't find any documantion for its function.
Can someone please find me one? Or better, give me better warrper.
I already tried FFMpegCore, its working but very slow. For Exaple it takes 20 seconds to decode a specific frame.(And i have monstruos computer)
If will be happy if ou could give me better warpper, or a guide for ffmpeg.autogen.
Thanks in advance.
FFmpeg framework is powerful, from the other hand is so large which makes it complex. If you want to mess with it, you will have to read a lot before start coding. I would recommend starting with the original documentation and examples that can be found here :-
FFmpeg Libraries Documentation
FFmpeg C Examples
And then move to some open source examples -based on what you want- coded in C# with FFmpeg.Autogen bindings.
You can check my recent FFmpeg.cs implementation that is for decoding (audio/video/subtitle frames).
FFmpeg.Autogen C# Example
I've been building my own media player to cater for my needs and I'm using
Flyleaf:https://github.com/SuRGeoNix/Flyleaf which is based on FFMPEG. There are samples in the code to get you started.
I've also seen this: FFME: https://github.com/unosquare/ffmediaelement

Using Mapnik in .net environment

Has anybody used Mapnik for rendering Maps from .net c# environment? I would like to use it to render maps in a desktop application developed under .net4. I found it the best open source map renderer tool, much more better, than the well known sharpmap, dotspatial (...). The 'only' problem is that it was written in C++ and Python and does not have a trivial way to use it from C#.
Do you know any .net Mapnik wrappers? Do you know any sample code?
I've just published my attempts in C# bindings.
They are available at: http://sourceforge.net/projects/mapniknet/
Some good new about Mapnik-.Net integration:
"Another thing that will help Windows developers is a way to use Mapnik from .Net languages. Although a full .Net wrapper is too much work besides all the other issues, hopefully I can make a meaningful start and open the door for .Net developers to leverage Mapnik in their applications."
Source: Mapnik homepage http://mapnik.org/news/2011/jun/09/gsoc_2011_windows_build_system_introduction/
NET-Mapnik
You might want to give this a try. Its pretty recent and has a simple example with options to create vector tiles.
https://github.com/kernelsanders/NET-Mapnik
So, finally I hacked it. Not a nice solution, but it works at least. In nutshell it operates in the following way:
developed a python script, which takes parameters as command line arguments. (using python api of mapnik)
call this python script by shell fom c# code (Process)
after map image has been generated, I show it in SharpMap as a background layer
In case of any map refresh (zoom, pan) I regenerate 'mapnik map layer'. I have also some kind of cache, in which I can store generated maps, so I can make tricks by using earlier generated map images or pre-generate them (e.g. generate maps for the next zoom level when user uses zoom tool). I also use some asynchron calls to do this, so I can create 1-3 map images paralelly.
The weak part of this solution is the communication between python and c# modules. I could not find better than command line arguments + shell.
My solution works, mapnik is fast, can genarate my maps less than a sec.
If you have any advice on .net - python communication (NO ironpython, it is not suitable for manik api), pls write it here. Thx.
Do you know about TAO Project?
It is a .Net project that takes unmanaged opengle library to .Net Managed Form by calling DllIMport() in C#.
You must do it for Mapnik, simaliar to TAOFramework.net

Edit M4V Video Metadata

So far my google-fu has failed me, so I'm hoping someone here can help:
How can I programmatically modify video metadata (specifically in my case, m4v video files)?
I'm most familiar with Ruby and C#, but I can be fairly language agnostic on this -- that is, if there's a specific language that is good at modifying file metadata, I have no problems spending the required time to learn it well enough to accomplish what I'm trying to do.
This question is pretty similar to:
View/edit ID3 data for MP3 files
I have searched for the library so you dont have to:
http://download.banshee.fm/taglib-sharp/
Even tho it has linux on its name it is for mono, so it should compile fine in Visual Studio :)
Hope it helps.
Consider asking http://www.ffmpeg.org/contact.html in #ffmpeg
I don't think they use ID3 tags.

namespace extension.. galaxy file system toolkit...gmail shell drive like utility

i was looking for some namespace extention to extend using c# (.net) but didn't find much help online except Galaxy Filesystem tooklkit. which are vc++ based but comes with c# and java wrapper classes... which helps me alot to start and i did.
i have extended that enough now and made installer to install. it get installed successfully but don't know why, when i open it, system get stuck... :( i thought my modified version might have some problem so i tried to run Galaxy filesystem toolkit's author original version and it responded in same way as mine do :D :(
now feeling bit helpless as even author is not responding my queries regarding my queries for some reason...
any help would be really appreciated....
FYI: i need to have Gmail drive like stuff...
Do not implement shell extensions with C# or anything that uses a framework.
If you do, you will break a lot of applications!
See here for why you must not do that.

Categories

Resources