Well i have a htc diamond 2 which run on wm6.5, I would like to access the built in camera to capture image.
I am not building wm app, i want to build a c#(or any other .NET) winform app that run on windows 7 platform.
Is that possible?
I found some articles about directshow.net,wia,windowsmobile camera capture dialog etc.But i really have no idea on how to start it.
So my question is:
How do i establish a connection to my phone(i have to initiate a connection between my pc and phone's camera first right?),do i need to download any windows mobile sdk?
To control the camera, do i need any driver installed?
Do i use htc camera api/sdk(which i can't find) or windows mobile api/sdk to control the camera?
For HTC devices DirectShow cannot be used. The problem is that HTC provides only basic DirectShow API, and you will be able only use very small resolution from camera 320x240. HTC doen't provide any SDK. But I found very useful components for Windows Mobile Direct Show on this page. They are paid but quite good. I think it is worth to check. I'm using Player Control for DirectShow video playing. And there HCTCamera component (Some raw version I think still free) which I didn't check but you can:
HTCCamera Control
Related
I'm developing an AR app using unity but I don't have an android mobile so I decided to work on an emulator and I read all documentation about it but it didn't work. the app is installed but when I open it I see a black screen with a cube for testing if it works right, the virtual scene doesn't open do you have any solutions?. I tried all the solutions but none of them work for me.
note: I installed an AR app from google play but it crashed.
specifications:
mobile: pixel 3a
Android version:11 (30 API).
Android Studio version:(4.1.1).
Ar foundation:4.1.9.
ARCore XR Pkugin:4.1.9.
google play services for ar: installed.
player settings:
plug-in providers
I don't think unity supports emulator based testing i tried to do the testing on xcode using emulators but the entire option didn't open up one of my seniors suggested to me that there will be a difference since some use ARM architecture and mobile emulators might not use them, so emulator checking is out of the question, easiest way to check though since unity can adapt to cross platform and iphone 6s is cheapest and the last device to support ARKit you can take that alternative by building it with Xcode.
There are logical reasons too because when you launch an AR App the mobile camera comes into play but emulator has a hard time trying to connect camera even if you do manage it you will still be disappointed with the experience
I would like to create a "virtual camera" that can be used with 3rd party apps such as Zoom or Skype, browser etc. In the same way these can work with a virtual camera app such as Snap.
I want to take the feed from the built in webcam on the laptop, make some changes to it e.g. brightness, then be able to select in Zoom, Skype, browser, my edited feed.
So far I have written something as a Universal Windows Platform app that takes the webcam feed, applies my processing to it, and shows it in a window. For that I have used the Windows Media API.
https://learn.microsoft.com/en-us/uwp/api/windows.media.effects?view=winrt-19041
Can anyone point me in the right direction of how to take this modified feed and make available to Zoom, Skype, browsers? I've seen a lot of stuff related to DirectShow but nothing that fully makes sense or that has been written in the last 6 or 7 years. What would be the best way to do this in 2020, with C#?
Many thanks
I would like to know how to detect if current windows is playing any kind of media (video, music, etc) similar to what energy settings do to decide if the computer can enter sleep/hibernate mode?
I'm trying to detect how long the computer is idle. I'm currently using the GetLastInputInfo from user32.dll but it just take in consideration the user input, but not if there is any media playing which should not consider the computer idle.
I tried to find C# APIs or native invocations but can't find the information. I'm using latest version of .NET Framework.
Generally speaking, programs don't declare that they are playing media - instead they call SetThreadExecutionState to tell Windows that the computer should not sleep.
That said - Windows 10 recently added support for programs to declare to the OS that they are currently playing media so that they're integrated with Windows' media controls (like how on iOS any program playing video or audio can be controlled from the Control Center).
Here's what appears on my screen when I nudge my volume control:
...however Chrome is being buggy here because I'm not actually playing any media in Chrome but it's telling Windows that it is.
I don't know what Windows API is used to set this - or which API is used to check it - but it isn't very widely used - even Windows' built-in Windows Media Player 12 doesn't use it.
I am trying to develop a Windows Form Application (not WPF) where I would require to preview numbers of cameras available on a tablet or PC, take pictures and then save the pictures in the device.
I am very new to this kind of application development and recently came accross Media Capture but I can not find a good lead to start with.
Can anyone let me know how to approach or how can I build the application with the aforementioned features or provide a good lead??
P.S. Found a good example on https://code.msdn.microsoft.com/windowsapps/media-capture-sample-adf87622/ but it uses XML not the Win Form Application type.....
What kind of cameras do you have? If the cameras support onvif, then there is a good onvif camera software you could try. You can handle many cameras with it, you can take snapshots so I guess it could work for you.
I'm looking for a way to stream video from an AXIS M10 IP camera, and display the feed using windows forms (or better, wpf). However, it need to be running on 64-bit platform.
This means that I can't use the AXIS Media Control ActiveX component.
Also, I found that these methods work but only in 32bit environment:
1.Using MediaElement Class for WPF
2.Using embedded media player
3.VlcLib (for dotnet)
So far it looks like my only option is to directly implement RTSP protocol and decode the given RTP/AVP stream using Media Foundation (for .net) and display it somehow. (I was able to get the camera to stream to a UDP port using RTSP calls).
I'm fairly new to RTSP/streaming, so I'm concerned that I might be missing the big picture - Will I be able to use media foundation to render/display videos on winform/wpf, or do I have to look at that functionality elsewhere?(from my research it looked like it could decode H.264 streams, but I did not see any video-playing capabilities). I also came across DirectShow - should I use DirectShow over Media Foundation?
Or better yet, is there a library that is able to handle RTSP streaming that runs in 64bit?
VisioForge Video Capture SDK .Net for example (but commercial), WPF controls included.
Decoding using FFMPEG, with DirectShow engine. Really, I don't see any Media Foundation advantages here.
Also any other way using FFMPEG.
Or, you can write RTSP source filter (based on DirectShow Push Source sample) with H264 output pin for video and G726/G711/AAC for audio. Also you can made virtual video capture source filter and use it in MF or DirectShow. You can use live555 library for RTSP implementation.
So, no simple ways here, if you are starting from zero.
If you just need the Video, I would prefer to just display the MJPEG stream of the camera. This is really easy done without the complexity of DirectShow or MediaFoundation. I display 12 cameras at the same time in my application with this little library in WPF: MJPEG Decoder. You can also use it in WinForms. It decodes the MJPEG Stream and gives you the images to display.
The 64 bits Axis Media Control SDK is available now, but requires an account on Axis web site to be downloaded.
After Sign in, you need to join Axis Developper program (free) and download the AMC SDK.
You will install a executable file (.exe), this install all the libs and samples in your Drive
C:\Program Files\Axis Communication\SDK
I found a way to use VLC in 64bits without ActiveX DLL :
The VLCSharp Library is composed of multiple NuGets to use VLC Player on severals platforms (WPF, Winforms, Xamarion, TvOS).
It is working fine on Onvif Cameras