52 lines
1.8 KiB
Go
52 lines
1.8 KiB
Go
//go:build !gstreamer
|
|
|
|
package player
|
|
|
|
import (
|
|
"errors"
|
|
"image"
|
|
"time"
|
|
)
|
|
|
|
// Reuse types from vtplayer.go to avoid redeclaration conflicts.
|
|
type busEvent struct {
|
|
Type int
|
|
Info string
|
|
State PlayerState
|
|
}
|
|
|
|
// GStreamerPlayer is a stub used when the gstreamer build tag is not enabled.
|
|
type GStreamerPlayer struct{}
|
|
|
|
// NewGStreamerPlayer returns an error because GStreamer is not available in this build.
|
|
func NewGStreamerPlayer(config Config) (*GStreamerPlayer, error) {
|
|
return nil, errors.New("gstreamer not available; build with -tags gstreamer")
|
|
}
|
|
|
|
func (p *GStreamerPlayer) Load(path string, offset time.Duration) error {
|
|
return errors.New("gstreamer not available")
|
|
}
|
|
func (p *GStreamerPlayer) Play() error { return errors.New("gstreamer not available") }
|
|
func (p *GStreamerPlayer) Pause() error { return errors.New("gstreamer not available") }
|
|
func (p *GStreamerPlayer) SeekToTime(offset time.Duration) error {
|
|
return errors.New("gstreamer not available")
|
|
}
|
|
func (p *GStreamerPlayer) SeekToFrame(frame int64) error {
|
|
return errors.New("gstreamer not available")
|
|
}
|
|
func (p *GStreamerPlayer) GetCurrentTime() time.Duration { return 0 }
|
|
func (p *GStreamerPlayer) GetFrameImage() (*image.RGBA, error) {
|
|
return nil, errors.New("gstreamer not available")
|
|
}
|
|
func (p *GStreamerPlayer) SetVolume(level float64) error {
|
|
return errors.New("gstreamer not available")
|
|
}
|
|
func (p *GStreamerPlayer) SetWindow(x, y, w, h int) {}
|
|
func (p *GStreamerPlayer) SetFullScreen(fullscreen bool) error {
|
|
return errors.New("gstreamer not available")
|
|
}
|
|
func (p *GStreamerPlayer) Stop() error { return nil }
|
|
func (p *GStreamerPlayer) Close() {}
|
|
func (p *GStreamerPlayer) Events() <-chan busEvent { return nil }
|
|
func (p *GStreamerPlayer) State() PlayerState { return StateStopped }
|