Saving and Image from RTSP Stream (VB6) - vb6

I am going to start off this question with; Yes. I have to use Visual Basic 6.0 to program this. It's out of my control which programming language is being used, and the one I have been told to use is VB6.
I am trying to create a program that can fetch the data from a RTSP Stream and save a single shot of the video feed to a bmp file. I have been looking on Google, and on Overflow, but I haven't been able to find a solution on how to go about accomplishing this.
One of the things I am worried about is compatibility issues. For example, one of my searches early on led me to EmguCV, but I can't get that working for VB6, and honestly I never really expected to get it working.
So are there any good libraries, or built in features for VB6 that can help me accomplish what I am trying to do? I am kind of just hitting my head against a brick wall here.

Try using Windows Media Control for the heavy lifting (streaming, video decoding, etc).
Just have to figure out how to pause first frame of the stream and capture it.

Related

Making a screen recording of my programming work

I saw a cool video of someone coding a NES emulator. If you watch it, you see that there are no pauses, no hesitations, .. He gives a bit of information on how this is done on his site. The idea is based on tool-assisted videogame speedruns.
Does anyone know tools that can be used to create a similar effect in a modern IDE, like visual studio? Normal video capture programs like CamStudio don't cut it.
You'll want to capture in high definition so the text is readable.
There's nothing worse than a programming tutorial on YouTube where
you can't read what the guy is typing.
You'll also want to be able to cut out parts of the recording where there is nothing going on. Hesitations and pauses for thoughts for example.
It might be a good idea to switch to a low screen resolution (1024x768 perhaps) and run the IDE in a fullscreen mode so that there is no unneccessary clutter in the video and the code is easy to see.
Take a look at that list SQLGuru created for a video capture program which makes the cut.
I have managed to locate a list of 17 potential apps that could do the trick for you.
check them out here: http://www.freetech4teachers.com/2012/09/17-free-tools-for-creating-screen.html

AVI Decompressor suddenly stopped decoding video with DirectShow Graphedit

I have an issue with one of the applications utilizing an AVI Decompressor Filter. The error returns that there is no suitable decompresser that could be found... however it has worked everyday for the past several months. I thought about re-registering quartz.dll however no luck.
I then cracked open Graphedit and found that I could load the filter into the graph but not connect anymore.
Has anybody come across this scenario before? Any help would be greatly appreciated.
Cheers.
EDIT
If the issue is in the registry, than would a simple system restore do the trick to put the registry back to the way it was. It is too late now to figure out the bug as it happened at a clients end and we had decided to recover windows to get them back up and going. But redundancy checks can be put into place such as automated restore points build into the application to rectify the issue if it ever occurs again. Does anybody think this would work?
AVI Decompressor Filter is an adapter filter which makes VFW/VCM codecs available to DirectShow. The fact that you can add the filter manually to the graph does not mean it will be useful. This filter typically does not work this way, and in most cases it is added by fitler graph as a part of Intelligent Connect.
In your case important is the media type you had converted by AVI Decompressor Filter to something better suited for further processing or presentation. The media type there might be not the one you expected, or the underlying VCM codec is gone and VI Decompressor cannot pick it up any longer.
In Windows 7, AVI Decompressor uses internally msyuv.dll, which is "Microsoft UYVY Video Decompressor". Something is perhaps wrong with it in your system. You might want to check its registration as VFW codec:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32]
VIDC.UYVY="msyuv.dll"
With 64-bit OS, you might need to look at another key affecting 32-bit apps in 64-bit OS:
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Drivers32]
VIDC.UYVY="msyuv.dll"

Strobe Media Playback vs Flowplayer

This question has already been asked in Experience using Strobe Media Playback (OSMF)? but that was way back in 2010.
Can anyone help me understand the current situation? I want to integrate a video player but am confused if i have to use OSMF or Flowplayer. Can anyone give me suggestions or pros/cons?
From my experience the best part of Flowplayer is you can easily branded into different style which essentially you can customize the player at almost everywhere. It supports both css pre-defined style or dynamic update with JavaScript which will be extremely handy if you need to some advanced task. On this aspect, however, OSMF doesn't give you too many flexibility.

Access to System Audio on Mac

For a some-what small (at least hopefully) project, I am hoping to gain access to the current audio being played through the "main line" (i.e. what is heard through the speakers.) Specifically, I'd like to create a visual equalizer of the audio currently being played. I do not wish to capture or "tamper" with the audio in any way, just run a little analysis on it. That being said, I'd imagine access to such information is not handed out nicely in a high-level API.
I noticed a similar question which is concerned with looking at system sound. The accepted answer points to looking into Soundflower's source code. I am not completely adverse to doing this but I'd like to ensure there isn't a simpler way before I got into it (especially because I have no real audio programming experience, especially at the system level.)
Any input is very much appreciated,
--Sam
There is no simple way to do this on OS X. You really have to do this from a kext, unfortunately.

How to implement a voice changer?

I want to write a app which change the microphone input voice and make it like robot or some funny man's voice.It must support send changed voice to all application like IM Software or Game Client. Which technology should I pick up? Windows WaveForm Api? DirectX?
audio driver?
Thank you very much!
There's an MSDN Coding4Fun article that explains how to create a voice changer that operates over Skype, in C# (.NET). The full source code is also hosted as a project on CodePlex. In addition, it should be fairly easy do something else with the audio (as opposed to streaming it via Skype), since the project is based around the NAudio framework, which contains a good level of abstraction. Anyway, it is a reasonably complete (and stable) example - definitely worth checking out in my opinion.
If you want/need to use C++ or some other language for development, then this project should at least give you some ideas about how to go about it. Still, if you can use .NET, then you're in luck I think.
Robot voice is often done with a ring modulator effect, mixing the voice with a sine wave - this is easier. Or use a vocoder effect, modulating the voice onto some other waveform, like rectangle - might be a bit more tricky. Go read up how the effects work, get a program with which you can check out how they sound (Audacity works for the ring modulator, finding and using a vocoder may be a bit harder). Then read how it's done or get a library which will do the processing for you.
You are looking to support VSTi or DXi plugins.
There are tons that also act as vocoders, even for free.
You just need to write the host application.
Take a look here :)
Now that's a neat idea, especially for a mobile app.
I'd probably start off-line by using a .wav file as input to get the effects working the way I wanted. You can use any high level language for this, but you probably want something that will map reasonably well into C/C++.
In terms of a production version, I'd go native and do this in C or C++. You want something fast for real time audio processing & I like to avoid dependencies on things like .net for distribution. (Not that I have anything against .net, it's great for servers and distribution within a company but I'm not so keen on having it as a dependency for shrink wrap software.)
Windows DirectShow would be a tempting option - you could do some interesting effects with multi-media as well if you had the voice morpher implemented as a direct show filter.
What you're looking for is a vocoder. I don't know if any of the technologies listed above has a vocoder effect, but the best chance would be with DirectX.
Try this sample app .I think its useful to you.Link

Resources