Using the viewer#

The nerfstudio web-based viewer makes it easy to view training in real-time, and to create content videos from your trained models 🌟!

Connecting to the viewer#

The nerfstudio viewer is launched automatically with each ns-train training run! It can also be run separately with ns-viewer. To access a viewer, we need to enter the server’s address and port in a web browser.

Accessing on a local machine#

You should be able to click the link obtained while running a script to open the viewer in your browser. This should typically look something like http://localhost:7007.

Accessing over an SSH connection#

If you are training on a remote machine, the viewer will still let you view your trainings. You will need to forward traffic from your viewing host to the listening port on the host running ns-train (7007 by default). You can achieve this by securely tunneling traffic on the specified port through an ssh session. In a terminal window on the viewing host, issue the following command:

ssh -L 7007: <username>@<training-host-ip>


You can now simply open the link (same one shown in image above) in your browser on your local machine and it should connect!. So long as you don’t close this terminal window with this specific active ssh connection, the port will remain open for all your other ssh sessions.

For example, if you do this in a new terminal window, any existing ssh sessions (terminal windows, VSCode remote connection, etc) will still be able to access the port, but if you close this terminal window, the port will be closed.


If the port is being used, you will need to switch the port using the –viewer.websocket-port flag tied to the model subcommand.

Legacy viewer tutorial video#

In the tutorial video below, we walk you through how you can turn a simple capture into a 3D video 📸 🎬

This video is for the legacy viewer, which was the default in nerfstudio<1.0. It has some visual differences from the current viewer. However, the core functionality is the same. The legacy viewer can still be enabled with the --vis viewer_legacy option, for example, ns-train nerfacto --vis viewer_legacy.

For specific sections, click the links below to navigate to the associated portion of the video.

Getting started#

Viewer basics#

Creating camera trajectories#

Rendering a video#