programming a video player with C# (mono) for linux [closed] - c#

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 3 years ago.
Improve this question
I'm pretty noob when it comes to C# but it's probably my best shot at achieving this. So i'm learning as I go, and while this may seem ambitious it's for a good reason. I want to write a Picture-in-Picture style video player that quite simply creates a block of X width by Y height, and a video file can be loaded and started and played. Like a fullscreen video but with no interface (and not fullscreen,) but as a window on top of everything else.
I'm just not sure where to start. This is for a linux system, so i don't want to (and probably can't) use directx. must i tap into opengl to stream video to screen ... and what about codecs? does the system (ubuntu) handle decoding etc, or must that be built into the app?
I'd appreciate any guidelines and tips, as well as any articles or anything that could help.

If only there was some sort of open-source Linux media player that already existed in C# that you could read how they did it... :)

The video application shall have control on:
Video demuxing and decoding
Video presentation
For the first, I would use ffmpeg (my favourite), but other possibilities are also SDL and xine. For the second, I suggest OpenGL (my favourite... :P), but probably SDL is more appropriate, since you could already use for video decoding.
Surely there are tons of libraries to develop video application. You have to choose.
Note that mentioned libraries may be written in c/c++, and indeed for using them you have C# bindings for calling library routines. You should prefer libraries already exposing C# bindings. The TAO Framework (on sf.net) has already ffmpeg bindings, but probably it won't be updated anymore, and SDL probably have them.

Related

How would graphics be displayed when creating a game without an engine or library? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
Let's say that someone decides to create a game without a game engine or library of any sort.
C# (or any popular language) is used
They have 2D sprites and 3D models with animations
They aren't sure of what IDE to use
Based on this information how would they get images displayed onto the screen?
I imagine that a console window would be out of the picture. (Pun intended)
Yes, a console window would be out of the question :)
You need to access the built-in Graphics API. On Windows computers, this is DirectX. On other operating systems, it is typically OpenGL.
Both APIs are very cumbersome, and are completely different. Without a library you typically have to be in C/C++ to use them.
As far as IDEs it depends on what you are developing for. Visual Studio is fine for windows, others you need to find something that compiles for it (probably using gcc). Anything will work, its just standard native code.
Good luck!

How can I make my own graphic interface? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I'v just learned a few languages (for 2 years now), and now I want to make programs with graphic interfaces. Thing is, I just don't know which languages to use.
What languages/programs (and what methods of these programs) are used to make programs with graphic interface? (I know that C# and JAVA are graphic, but I don't know what methods...)
What languages/programs (and what methods of these programs) are used to make applications to IPhone, Android ,and whatever ?
languages/programs (and what methods of these programs) are used to make/edit videos?
Thanks a lot!
Almost all programming languages have libraries that help you create a GUI (Graphical User Interface). Most programming languages, including C++, C#, and Java are general-purpose programming languages - you can use them to program whatever you want.
For Java for example, see this tutorial: Creating a GUI With JFC/Swing.
If you want to write an Android app, you'll program in Java.
For iOS and Mac OS X, you'll most likely write your app in Objective-C.
Pretty much all higher level languages use graphic interface. you just have to do your research to find out how to use GUI in each language. Applications used on the iPhone are written in Objective-C and Android uses java for their apps.
Your question is quite vague. But I'll give you some advice. Before asking this kind of question on stackoverflow, you really should make a search on your own with google.
About graphic interface using JAVA, you can use swing which is the most famous way to do it (especially if you're a beginner and want to familiarize with graphic interface development concepts). But there are a lot of other libraries to do GUI, for exemple if you want to do with 3D you have openGL lib or jMonkey (uses openGl).
About Android, it has its own SDK in java.
About iOS (iPhone), it is made with ObjectiveC.
And about C#, I don't know a lot about it but if you do a quite search on google you can find things like this.

Screen-scraping a directx program with c# [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I'm looking to create a bot like program and I'm looking to use a screen-scraper to retrieve data such as health which is numerical.
I have no idea how to accomplish this as most screen-scrapers are programmed in c++ as directx is most popular within that.
Is it possible to create a well working c# screen scraper for a directx program?
Thanks.
Outside of kernel mode, anything that can be done in C++ can be done in C#.
With that disclaimer out of the way please know that client-side bots don't work by actually screen-scraping and performing OCR. Instead they hook into DirectX's functions and record copies of the string text sent to DrawText, for example, or the vertices in the current world view graph and then work from there.
I've never really gotten into this area of programming so I can't give you any more specific advice, but I can tell you that you're in for an uphill struggle.
The alternative is just to use common Trainer/debugger techniques and map the memory of your target process. I assume you're targeting a game of some description, however said games often feature very heavy cheat-detection and prevention techniques and trying things out on a public server can get you banned for life (e.g. Steam's VAC).

Cross Platform Alternatives to WPF [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 1 year ago.
Improve this question
all, I'm thinking of porting my application from VB.net to the C# based MONO project, so it can run on both Windows and Mac. However, I am in need of a Mac-friendly alternative to WPF. It has to have very similar functionality. QML (by QT) is not a viable option, as it costs far too much money for us.
There is also https://github.com/AvaloniaUI/Avalonia a multi-platform .NET UI framework inspired by WPF
Miguel de Icaza recommends MonoMac as a substitute to WPF for Mac as stated here. As he explains there is no plan to implement WPF in mono.
MonoMac is a work-in-progress. Some parts of the Cocoa APIs are not wrapped yet. You should start with the samples to get an idea of what is possible.
You will have to build two different UI on top of a common engine, but that's generally a good separation of concerns.
There is also a possible common code base for UI with GTK#.
Depending on your application's functionality, you could potentially port your application to Silverlight/Moonlight. Silverlight is supported on the MAC, but you'll need Moonlight for Linux. Of course, if you're doing a lot of work with the client machine's file system or what not, this is not an option.
tho I have accepted an answer a while back, I want to post what I am doing currently if anyone views this question.
I am currently using Python with PyGTK for the GUI, and GStreamer for the video. This is producing results almost identical to WPF (except some hardcoded animations). Furthermore, it runs on Windows, Mac, and Linux.
EDIT: GStreamer did not pan out for my purposes. While it works well for the most part, I could not layer transparent .png images over the video. I have switched finally to Adobe Flash (Adobe AIR).
EDIT 2: For anyone who comes across this later, when the future of SWF fell into question, my company started building our own animation system in C++, using some components of Gtk+/gtkmm and Cairo. Ultimately, that falls under the advice of the other answer...separate GUI from platform.
https://www.noesisengine.com/
Is another alternative to xaml/wpf that is also for video game engines. It currently has a Indie/Free tier up to 100k in revenue, and is cross platform.

Best framework for little 3D application [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
I want to write simple application with some 3D objects for Windows OS.
The application is very simple, like a gallery where we can move and see some pictures. When users go to the some picture and click on it a window will open and show picture with some information.
Which is the best framework for this task WPF, XNA, or something else? Application will be written in C#.
I can not say which is best, but I have done a while ago some things with the WPF 3D API and I liked it.
It was IMO very simple to use and the rendering seemed to be relatively fast. A really nice thing I found, was that it has an object-model that contains high-level-events such as mouse-down and click. Therefore you don't have to do much math. However, maybe provide also other APIs such high-level services, I don't know.
I would not try to create an action-game with it, but for a small app as you have described, I think it is worth a try.
Unity has been used for similar stuff. It can work on browsers (via a plug-in) or as a program, has a lot of documentation and most of the work involved in creating a 3D environment and interface is already done. Code can be written in Mono (open source C# implementation), JavaScript or a Boo, a modified Python scripting language.
It works in Windows, MacOS, iPhone, iPad and Android. And it is free in the standard version, or really cheap.
XNA is a little lower level, so it will require more work to get things started. It supports Windows, WP7 and Xbox 360.
See this discussion : WPF VS XNA

Categories

Resources