Interact with OBS Studio from Go!
To use this library in your project, add it as a module after you've initialized your own:
❯ go mod init github.com/beautifulperson/my-cool-obs-thing
❯ go get github.com/andreykaipov/goobs
The following example connects to the server and prints out some versions.
Check out the docs for more info, or just jump right into the other examples!
package main
import (
"fmt"
"github.com/andreykaipov/goobs"
)
func main() {
client, err := goobs.New("localhost:4455", goobs.WithPassword("goodpassword"))
if err != nil {
panic(err)
}
defer client.Disconnect()
version, err := client.General.GetVersion()
if err != nil {
panic(err)
}
fmt.Printf("OBS Studio version: %s\n", version.ObsVersion)
fmt.Printf("Server protocol version: %s\n", version.ObsWebSocketVersion)
fmt.Printf("Client protocol version: %s\n", goobs.ProtocolVersion)
fmt.Printf("Client library version: %s\n", goobs.LibraryVersion)
}
The corresponding output:
❯ go run _examples/basic/main.go
OBS Studio version: 30.1.0
Server protocol version: 5.4.2
Client protocol version: 5.4.2
Client library version: 1.2.2