Skip to content

Instantly share code, notes, and snippets.

@leandromoreira
Created August 2, 2019 21:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save leandromoreira/78c20ba52faa48c3c2574d40b7f728d1 to your computer and use it in GitHub Desktop.
Save leandromoreira/78c20ba52faa48c3c2574d40b7f728d1 to your computer and use it in GitHub Desktop.
type Codec interface {
Encode(data []int) ([]int, error)
Decode(data []int) ([]int, error)
}
type H264 struct {
}
func (H264) Encode(data []int) ([]int, error) {
// ... lots of code
return data, nil
}
var supportedCodecs := []Codec{H264{}, AV1{}}
func Encode(codec string, data int[]) {
// here we can chose e use
// supportedCodecs[0].Encode(data)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment