Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Go library for Garmin Virb Cameras

This implements the network API exposed by Garmin's Virb cameras with WiFi. It has been tested with the Virb Ultra 30 and Virb 360, but should work with the Virb X, XE, and several of Garmin's Dashcam models as well.

It also includes a virb command-line tool that is mostly useful for testing the library, although it can be used to start and stop recording on command.

This has only been tested with Go 1.12, but it probably compatible with most recent Go versions.


This library generally follows Garmin's API as closely as possible. Capitalization was changed to fit Go's requirements. Each API call has its own function in the virb module. Each API function takes at least one parameter, hostname, which is a string that contains the hostname or IP address of the camera. If the API call in Garmin's doc takes any additional parameters, then they've been added in order to the function.

Here's an example.

package main

import (

func main() {
     camera := ""
     streamType := "rtp"
     maxResolution := 1080
     active := "1"
     resp, err := virb.LivePreview(camera, streamType, maxResolution, active)
     if err != nil { panic(err) }

     if resp.Result == 1 {
         fmt.Printf("The live stream URL is %s\n", resp.Url)

See for another example or two. The entire virb/cmd directory in Github is basically just a giant example as well.


With Go 1.12 (or possibly 1.11 with the new module system turned on), simply importing is all that is needed; go will automatically download and install this library and all of its dependencies.

To install the command-line tool, make sure that you have Go 1.12 installed and run

   $ go get

That will fetch all of the code and dependencies needed, compile them, and install the resulting program into Go's binary directory; probably $HOME/go/bin on most Unix systems. It should work fine on Windows, but hasn't been extensively tested.


This is not an officially supported Google product.


Go API for talking to Garmin Virb cameras over WiFi




No releases published


No packages published