In this tutorial I wall walk you trough setting a simple live streaming stream. Live streaming can be done from many sources, be it a web-camera, screen capture or any other form for capturing that is out there. You can with this for example use a external audio/video mixer and then encode it real-time before sending it out to the server(See tutorial 2.)
First thing you should check, is if you have the program “nsvcap.exe” in your NSVTools folder(Or where you installed the tools)
when you have found it, double click it to open it. When it opens you will get one out of two cases:
- You get a white window and a pop-up error message saying “Sorry, you have no video capture hardware”
- You get a blank/black window, or a preview window of your capturing device(Webcam in my case).
In case 1, it means that nsvcap.exe didn’t find any camera or screen capture’r installed, and that it has no video input source. You should still be able to do live audio capture, but it would be without video. If it can’t find audio hardware, you’ve got no audio input(No mic in) on your computer, or you haven’ installed the drivers correctly. If you get one of these messages, you should check to see if you can use video/audio input in any other capture software Sound Recorder(Audio), or included software for camera/screen capture(Video). See if all the drivers are up to date, and update them it they are not.
If this still doesn’t fix your problem, it means that your video/audio hardware/software is not compatible with the NSV live encoder and can not be used. You can still check the official NSV forums to see if anyone else has the same problem, and/or a fix for it.
in case 2, that is the case we should hope for, you will have both audio and video capture hardware/software installed on your computer, and you’re ready to continue.
If you’ve followed the tutorials 1 and 2 you’re pretty much ready to go. You should know how to set up encoding profiles from tutorial 1, and use it as a base for the live capture profile, and you can use the server set-up from tutorial 2 with little to no changes. When setting up the video encoding options, you might want to set it to use a bit lower quality and encode faster, since it might be hard on the computer to encode high quality at real-time. For live encoding settings for some codecs, I will soon upload some samples for you to look at.
After you have started NSVCap you will have to choose what input to use. You can have one video and one audio input at a time. NSVCap can not mix multiple audio inputs, so that will have to be done before sending it to NSVCap(Use some kind of software mixer).
The list where you can see available inputs, and choose them is under the “Devices” menu.
In my case I have the choise between an Acer webcam, and Realtek audio input(Mic in).
In some cases the audio input, or video input is not already checked of, or you might have multiple to choose from. If this happens for you, you’ll have to choose the one you want to use.
Next you can go in under the “Options” menu.
Here you will have the option to have preview on.
Turning on preview will make it so you can see the video input before and while encoding it.
Next you can Audio format(Grayed out in image)
It will be grayed out if you either don’t have an audio input, or don’t have one selected under Devices.
You should not find anything useful to change under “Audio format” anyway, so we head on.
We skip both Audio and Video capture filter, as they are for the more advanced encoder, and will in most cases be of no use unless you have a specific problem. Be warned, some if not all options may wary by what input devices you have chosen!
You might want to take a look at “Video capture pin” as it will let you define how the input on the video will be before encoding.
What is interesting for us under here, is the framerate, and output size. Setting both framerate and output size to match what we set in the NSV encoding options, will save the computer a lot of resources as it won’t need too resize and repeat/reduce frames as it encodes.
After you’re done setting up the options, we can head on to the “Capture” menu, where you can start the capture(Don’t do that yet) choose if we want to capture audio(If it’s not selected, and you want audio, select it now).
Here you can also set the frame rate. In the first tutorials you would set the frame rate when setting the encoding options, but they seemed to move it here instead on nsvcap.
If you select “Set time limit” you can set the number of seconds it will encode before stopping.
To use it you just have to check the “Use time limit” box, and write in the number of seconds you want it to run, before pressing ok. Setting a timer is not much of use for real time streaming, but you might find a use for it.
NSV Codec settings
This will be a really short chapter, as this is mostly the same as you learned in the first tutorial.
The only difference is that you might want to set the screen resolution and framerate a bit lower than if you were using nsvate. The smaller screen, and the less frames it has to encode per second, the more sure are you that it won’t start skipping frames. The best way to find out what settings to use, is to test the different settings you think might work, and see if you have a high frameloss. I will cover how to see frameloss soon.
You can find the codec settings under the “NSV->Config” menu. You will notice that you won’t be able to choose different profiles, as you in most cases will only need one profile when doing live encoding, the one that works best 😉
As you see it’s very similar to what we looked at in the first tutorial. You would most likely want to change some of this as you see fit.
In the next tutorial, I will go over installing optional and new codecs, and one of those is the VP62 codec. The VP62 codec has the option to do realtime encoding, and is perfect for this. What it does is to encode as much as it can, but will not drop frames, just give a bit poorer quality for frames that require much. It thus does automatiaclly what you would have to do manually on other codecs. We will also look at the X264 codec, and with that you can fully utilize all of the cores and cpu’s on your computer, with threaded encoding.
After you have everything set up, we will go over to the last thing to set up, output.
On top of the NSVCap window, to the left, you will find the “File” menu.
Under there you will find “Set capture destination” and “Title control”
“Set capture destination” will take you to a new window where you can set up where the live stream will be sent.
When setting capture destination you will be given three choices:
- File output
- Shoutcast host
- Ultravox host
File output is what it say, the stream will be written to a local file on your hard drive.
Shoutcast output is also as it say, the stream will be written, live to a shoutcast server.
To be honest, I have never used a Ultravox server, so I can only guess it’s something close to a Shoutcast server.
Setting up file output is a great way to test your live encoding settings, and is the simplest to set up.
You just choose where to save the file, that’s it.
You will also, hopefully, want to set up a Shoutcast stream once you’re done testing, and that is simple too, actually more simple than setting up a pre-encoded stream.
When setting up Shoutcast stream, you won’t need to use command line, or text files, you just fill out the form you’re given.
You give the ip to the Shoutcast host, in the first field, on the next field you set port(NOT with +1) and the third field you give the password given/set from the shoutcast host.
The big field will let you set up the station options, like station name, station genre, etc. For a commented verion, telling you what each filed is, take a look at tutorial 2.
When you’re done, all you have to do is go to “Capture->Start Capture” and it’s going.
Last, but not least, we’ll take a look at how you can figure if you’re dropping frames, and the stats of your encoding.
After you’ve started the stream, the status bar at the bottom of the window will update with information.
First you see the number of captured frames, with the number of dropped frames.
After that you see the number of minutes/seconds/miliseconds OF VIDEO/AUDIO that have been streamed. and the last field(vfps= ) is the number of frames per second.
The end of live
Well, this tutorial will cover no more than this. You should now be able to stream a simple live stream, and do simple changes to fit your needs. If you have more questions, or some problems, you can either go to the Official NSV forums where you can find a lot of helpful people(Remember to read the stickies and search before asking), you can also leave a comment on this post, or send me an E-mail too. I will also make a few more tutorial going in-depth on certain fields, like new codecs, later.
I hope to see a lot of new live stations popping up, and hope you have fun. Have a nice day.