Announcement

Collapse
No announcement yet.

Introduction to NSV (READ ME FIRST)

Collapse
This topic is closed.
X
This is a sticky topic.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Introduction to NSV (READ ME FIRST)

    Introduction to NSV

    NSV can be played using Winamp 2.90+, Winamp 5.0+, and using the appropriate plug-ins with Internet Explorer and Netscape (Mozilla)

    For the higest quality results use VP6 for video and AAC for audio when streaming. VP6 video is supported in Winamp 5.0. If you have an older version you can download it below.

    General
    - NSV Homepage
    - Unoffical NSV Information Website
    - SHOUTcast Audio And Video Streaming Guide

    Tools
    - ActiveX Playback controls
    - Latest NSVSCSRC
    - nsvscsrc clone for Linux

    Viewing on other OS's
    - VLC Media Player
    - Xine
    - Xbox Media Center
    - Mplayer
    - Totem

    Howtos:
    -- NSV Streaming Information
    -- Using AAC Audio with NSV
    -- Streaming Video with NSV SHOUTcast
    -- Encoding NSV Video Files (NSVenc CLI)
    -- Encoding NSV Video Files (NSV Batch Encoder GUI)
    -- Streaming Pre-encoded Videos (nsvscsrc CLI)
    -- Streaming Live Video (nsvenc CLI)
    -- Streaming Live Video (nsvcap GUI)
    -- Playback
    -- Streaming Live Video with NSVenc
    -- NSVenc Stuff (From Developers)
    -- Additional Notes
    -- NSVenc Command Line Switches and Options
    -- Video Guidelines


    Videos:
    - Videos
    - More NSV Samples
    - Nullsoft Television


    Technical Documentation:
    - Nullsoft Video Format Specification
    - Nullsoft Video Bitstream Library Source

    [Last updated : 6.11.10 - sankt]
    -Jay | Radio Toolbox.com

  • #2
    Streaming Video with NSV SHOUTcast
    by Sawg
    Last Edited: 08-01-2003

    WARNING: The NSV Format and associated NSV Tools is beta software. Therefore streaming video is not currently recommended for the novice computer user or novice SHOUTcast DJ. This tutorial assumes knowledge of how to use command line tools in the Windows environment. The tutorials also assume basic knowledge of setting up the SHOUTcast DNAS. Refer to the streaming audio tutorials for information on the SHOUTcast DNAS, these tutorials use the default configuration, though. Both the command line tools and GUI tools are explained (excluding FLASK currently). NSV SHOUTcast is not currently meant for general end-user use, so if you are not willing to put some effort into this stop reading now. If you want to stream video and are willing for a challenge then keep reading.


    Required Software:
    - NSVTools - April 19, 2003
    - SHOUTcast DNAS 1.9.2



    Encoding NSV Video Files (NSVenc CLI)
    This is for encoding .nsv video files. Pre-encoded files then can be served on a web-server or streamed using nsvscsrc (detailed later).


    1. Setup
    Open the command prompt an change the directory to the NSVtool folder (Default: C:\Program Files\NSVenc).

    First the encoder must be configured. At the command prompt type "nsvenc /config" (no quotes). This brings up the "NSVenc configuration." These options are the more advanced control options, which aren't covered, but feel free to play around with them. To set up the encoders click the "NSV Encoder Options" button to bring up the "NSV Encoder Options" box. Select the audio and video you want. If audio is included use "MP3 (Lame) encoder" and pick the desired encoding options (not discussed). For video choose "VP3 3.1 (proper)." Select a bit-rate to aim for (it won't be constant and may not even be near it). Hit "OK" then "OK" again to exit.

    NOTE: The VP3 video format is variable-bitrate in nature, so the bit-rate won't be constant. Plus if you have a frame rate and resolution that is high and a bitrate that is lower then the actual bitrate may be much, much larger then the entered bitrate. If you need to lower the frame rate or the resolution try the option in the previous configuration window. (These settings will increase CPU usage).


    2. Encoding.
    Any DirectShow decodable file (AVI, MPEG, etc..) can be encoded into into NSV assuming the system has the proper DirectShow filters (if it can play in WiMP, you should be able to encode it). Also, QuickTime is supported if you have QuickTime installed.

    Encoding is then straightforward:
    nsvenc input.ext output.nsv

    If you have any encoding problems you can force some video properties using the "source settings" and "directshow settings" switches from the command line. Just type nsvenc with no parameters for a full switch listing.



    Encoding NSV Video Files (NSV Batch Encoder GUI)
    WARNING: The NSV Batch Encoder seems to be a little buggy and likes to crash sometimes. If you have problems with it use the command line encoder.

    Start the NSV Batch Encoder (hereby referred to as NSVate) from the Start Menu.


    1. Creating Profiles
    First a profile to encode the video to needs to be set-up. Open the Profile Manager Tools > Profile Manager (Ctrl-M). Select the "(default)" profile or to make a new profile click the "Add New" button. Once a profile is selected hit the edit button to set the encoder settings. This brings up the "NSVate Profile Configuration." These options are the more advanced control options, which aren't covered, but feel free to play around with them. To set up the encoders click the "NSV Encoder Options" button to bring up the "NSV Encoder Options" box. Select the audio and video you want. If audio is included use "MP3 (Lame) encoder" and pick the desired encoding options (not discussed). For video choose "VP3 3.1 (proper)." Select a bit-rate to aim for (it won't be constant and may not even be near it). Hit "OK" then "Exit" from the Profile Manager to exit.

    NOTE: The VP3 video format is variable-bitrate in nature, so the bit-rate won't be constant. Plus if you have a frame rate and resolution that is high and a bitrate that is lower then the actual bitrate may be much, much larger then the entered bitrate. If you need to lower the frame rate or the resolution try the option in the previous configuration window. (These settings will increase CPU usage).


    2. Encoding
    First select the files to encode. Go to File > Add source file(s) (Shortcut: Ctrl-O) and select the files to add. Also select a profile. Repeat if necessary.

    Once all the files are added to the batch choose Selection > Encode selected to encode the files to .nsv format.



    Streaming Pre-encoded Videos (nsvscsrc CLI)

    1. headers.txt
    For streaming to the SHOUTcast servers the headers to use needs to be manually specified within a text file. Create a new text file and save it into the NSVenc folder. Any name should work, like headers.txt. The standard file includes:

    code:

    changeme
    content-type:video/nsv
    icy-metadata:0
    icy-name:My NSV Stream
    icy-genre:Video
    icy-pub:0
    icy-br:128
    icy-url:http://www.shoutcast.com
    icy-irc:#chan
    icy-icq:1234567
    icy-aim:SomeUser
    icy-reset:1

    The first line (changeme) is the password to connect to the server. If it was changed in the server configuration make sure headers.txt reflects that change. Leave lines two and three alone. The forth line down is all information about the stream. The same that would be entered in the SHOUTcast DSP. The "icy-pub" header signifies if it is a public stream, listed on SHOUTcast.com (1 for public, 0 for not public). The next header "icy-br" signifies the stream's bit-rate, guess. icy-url, icy-irc, icy-aim and icy-aim are the basic steam VJ's information. icy-metadata tells the sever to keep getting title information. Do not change icy-reset.

    Save the file.


    2. The Set-Up
    Videos to stream need to be pre-encoded using nsvenc (NSV Command Line Encoder) or nsvate (NSV Batch Encoder) as described above. All videos must be encoded using the same encoder setup for the program to work correctly. Once done make sure the videos are in the same folder (preferably one with an easy to type path).


    3. Using nsvscsrc
    Open the command prompt an change the directory to the NSVtool folder (Default: C:\Program Files\NSVenc).

    The basic parameters for nsvscsrc are:
    nsvscsrc hostort:headers.txt directory [interm.nsv]

    - host is the host (IP / DNS) that the SHOUTcast server is running on.
    - port is the port to send the data to. Note this is PortBase+1. The PortBase set in the SHOUTcast server configuration (8000 by default, so 8001 to send to. Using the SHOUTcast DSP it would add the one for you).
    - headers.txt specifies what text file headers are in. This should be the earlier created document in the same folder.
    - directory is the directory that the files are stored in. Single files are not accepted.
    - interm.nsv is I don't know.

    An example setup is:
    nsvscsrc 127.0.0.1:8001:headers.txt test
    Where the DNAS is on the local machine with the default PortBase and the files are in the /test/ sub-directory of the NSVenc folder.

    and

    nsvscsrc localhost:8001:headers.txt C:\NSVFun
    Where the DNAS is on the local machine with the default PortBase and the files are in C:\NSVFun.


    NOTE: nsvscsrc currently is random and there is no way to switch it off. A work around to get the files to play sequentially is to zip the .nsv files with no compression and rename the .zip file to .nsv. Make sure that is the only file in the folder then.



    Streaming Live Video (nsvenc CLI)
    Requires a hardware capture device to be attached to the computer.

    Setup
    Open the command prompt an change the directory to the NSVtool folder (Default: C:\Program Files\NSVenc).

    First the encoder must be configured. At the command prompt type "nsvenc /config" (no quotes). This brings up the "NSVenc configuration." These options are the more advanced control options, which aren't covered, but feel free to playa round with them. To set up the encoders click the "NSV Encoder Options" button to bring up the "NSV Encoder Options" box. Select the audio and video you want. If audio is included use "MP3 (Lame) encoder" and pick the desired encoding options (not discussed). For video choose "VP3 3.1 (proper)." Select a bit-rate to aim for (it won't be constant and may not even be near it). Hit "OK" then "OK" again to exit.

    NOTE: The VP3 video format is variable-bitrate in nature, so the bit-rate won't be constant. Plus if you have a frame rate and resolution that is high and a bitrate that is low then the actual bitrate may be much, much larger then the entered bitrate. If you need to lower the frame rate or the resolution try the option in the previous configuration window. (These settings will increase CPU usage).

    Plug-in the video capture device you wish to use. (Web cam, video cam, video capture card, etc...). Audio, if used, can be set up using Windows Recording Control.

    Start up the server; make sure it is waiting for a connection.


    2. headers.txt
    For streaming to the SHOUTcast servers the headers to use needs to be manually specified within a text file. Create a new text file and save it into the NSVenc folder. Any name should work, like headers.txt. The standard file includes:

    code:

    changeme
    content-type:video/nsv
    icy-metadata:0
    icy-name:My NSV Stream
    icy-genre:Video
    icy-pub:0
    icy-br:128
    icy-url:http://www.shoutcast.com
    icy-irc:#chan
    icy-icq:1234567
    icy-aim:SomeUser
    icy-reset:1

    The first line (changeme) is the password to connect to the server. If it was changed in the server configuration make sure headers.txt reflects that change. Leave lines two and three alone. The forth line down is all information about the stream, the same that would be entered in the SHOUTcast DSP. The "icy-pub" header signifies if it is a public stream, listed on SHOUTcast.com (1 for public, 0 for not public). The next header "icy-br" signifies the stream's bit-rate, guess. icy-url, icy-irc, icy-aim and icy-aim are the basic steam VJ's information. icy-metadata tells the sever to keep getting title information. Do not change icy-reset.

    Save the file.


    3. Encoder Startup
    Once everything is configured and plugged in it is time to start the encoder. Use the following line (or a variation based on your needs.):
    nsvenc /cfgcap cap:0,N sc:127.0.0.1:8001:headers.txt

    - /cfgcap brings up the capture configuration
    - cap:0,N says to capture from the first video capture source and capture no audio. Use cap:0,0 for first device video and audio. Use cap: to list all available capture devices, and use the number of the device in subsequent runs to automate. Use audio device 'I' for MiniDV source audio (interleaved)
    - sc: says to send the data to a SHOUTcast server
    - 127.0.0.1 is the IP address of the server. The IP of 127.0.0.1 is for the server being on the same system as NSVenc.
    - 8001 is the port to send the data to. Note this is PortBase+1. The PortBase set in the SHOUTcast server configuration (8000 by default, so 8001 to send to. Using the SHOUTcast DSP it would add the one for you).
    - headers.txt specifies what text file headers are in. This should be the earlier created document in the same folder.

    Up next should be the "Capture Configuration" box (also know as "Poopie Properties"). Select a capture frame rate and resolution. Start kind of low. The encoding takes a lot of CPU power.


    4. Connection
    The encoder should start encoding the video and sending it to the server. If it connects the encoding output will look something like what follows:

    code:

    from: cap:0,N
    [email protected]
    to : sc:127.0.0.1:8001:headers.txt
    video=VP31

    (hit ESC to abort)
    0:59:10 @ 19.8fps 95kbps (d=0,vinq=0,ainq=0)

    Also the SHOUTcast server should show a connection. The normal connection information should appear in the log. An example is an output like:

    code:

    <12/13/02@16:40:29> [source] connected from 127.0.0.1
    <12/13/02@16:40:30> [source] icy-name:My NSV Stream ; icy-genre:Video
    <12/13/02@16:40:30> [source] icy-pub:0 ; icy-br:128 ; icy-url: http://www.com
    <12/13/02@16:40:30> [source] icy-irc:#chan ; icy-icq:123456 ; icy-aim:SomeUser

    If there are any errors, re-read the above steps and try again. If there are no errors the stream can now be viewed.



    Streaming Live Video (nsvcap GUI)
    There is an easier GUI method for streaming live video also, and is recommended. Start NSVcap from the Start Menu.

    1. Setup
    First the server needs to be set up to connect to the SHOUTcast server. First Select File > Set Capture Device. Under the Output drop-down select Shoutcast host. The Shoutcast server filed has the address of the SHOUTcast DNAS. Port is the port for the server. Notice it is equal to the PortBase setup in the DNAS, not PortBase+1 like the Command Line tools. Password is the password for the server.

    The headers box is just like heders.txt for the command line tools. Enter information like what follows:

    code:

    changeme
    content-type:video/nsv
    icy-metadata:0
    icy-name:My NSV Stream
    icy-genre:Video
    icy-pub:0
    icy-br:128
    icy-url:http://www.shoutcast.com
    icy-irc:#chan
    icy-icq:1234567
    icy-aim:SomeUser
    icy-reset:1

    The first line (changeme) is the password to connect to the server. If it was changed in the server configuration make sure headers.txt reflects that change. Leave lines two and three alone. The forth line down is all information about the stream, the same that would be entered in the SHOUTcast DSP. The "icy-pub" header signifies if it is a public stream, listed on SHOUTcast.com (1 for public, 0 for not public). The next header "icy-br" signifies the stream's bit-rate, guess. icy-url, icy-irc, icy-aim and icy-aim are the basic steam VJ's information. icy-metadata tells the sever to keep getting title information. Do not change icy-reset.

    Click "OK" to save the information.


    2. Capture Devices
    Next from the Devices menu select a video and audio input device.


    3. Encoder Configuration
    Next, select he NSV menu and the Config... option to configure the encoder. This brings up the "NSVenc configuration." These options are the more advanced control options which aren't covered, but feel free to playa round with them. To set up the encoders click the "NSV Encoder Options" button to bring up the "NSV Encoder Options" box. Select the audio and video you want. If audio is included use "MP3 (Lame) encoder" and pick the desired encoding options (not discussed). For video choose "VP3 3.1 (proper)." Select a bit-rate to aim for (it won't be constant and may not even be near it). Hit "OK" then "OK" again to exit.

    NOTE: The VP3 video format is variable-bitrate in nature, so the bit-rate won't be constant. Plus if you have a frame rate and resolution that is high and a bitrate that is low then the actual bitrate may be much, much larger then the entered bitrate. If you need to lower the frame rate or the resolution try the option in the previous configuration window. (These settings will increase CPU usage).


    4. Capturing
    Once all the settings are good from the Capture menu select Start Capture. Now it should start capturing. Also the SHOUTcast server should show a connection. The normal connection information should appear in the log. An example is an output like:

    code:

    <12/13/02@16:40:29> [source] connected from 127.0.0.1
    <12/13/02@16:40:30> [source] icy-name:My NSV Stream ; icy-genre:Video
    <12/13/02@16:40:30> [source] icy-pub:0 ; icy-br:128 ; icy-url: http://www.com
    <12/13/02@16:40:30> [source] icy-irc:#chan ; icy-icq:123456 ; icy-aim:SomeUser

    If there are any errors, re-read the above steps and try again. If there are no errors the stream can now be viewed.



    Playback
    Now that you have the streaming part done you can now playback you can view your own stream.

    Streaming NSV files can be played in Winamp3 Winamp 2.90+, nsvplay (included with NSV Tools, not discussed), NSVPlayX (ActiveX for Internet Explorer, not discussed) and NSVPlayMoz (Mozilla/Netscape plug-in, not discussed).

    The URL for the stream is different then the standard MP3 stream URL. Without any modification Winamp will not be able to determine that it is a NSV file it is receiving and not a MP3 stream. The stream URL for a NSV stream is as follows:
    http://your_ip:8000/;file.nsv

    Where "your_ip" is the IP of the system running the SHOUTcast server. The port is 8000 by default (not 8001) or something else if you changed it in the SHOUTcast configuration (PortBase). There is no typo, use ";file.nsv" and not "listen.pls" after the address and port.

    Open that URL in Winamp (Ctrl-L). If everything is working it will connect, buffer, and then the video window will pop up and play.

    If you have your stream set to public and it is working eventually it will show up under "Internet TV" in Winamp 2.9X.


    [update by jkey 14 sept 2008]
    Nsv tools download links will now work again.
    -Jay | Radio Toolbox.com

    Comment

    Working...
    X
    😀
    🥰
    🤢
    😎
    😡
    👍
    👎