device/raspivid: implement IsRunning method for raspivid

This commit is contained in:
Scott 2020-01-30 11:22:11 +10:30
parent 4c65173604
commit 25d68cf124
1 changed files with 9 additions and 7 deletions

View File

@ -107,11 +107,12 @@ var AutoWhiteBalanceModes = [...]string{
// Raspivid is an implementation of AVDevice that provides control over the
// raspivid command to allow reading of data from a Raspberry Pi camera.
type Raspivid struct {
cfg config.Config
cmd *exec.Cmd
out io.ReadCloser
log config.Logger
done chan struct{}
cfg config.Config
cmd *exec.Cmd
out io.ReadCloser
log config.Logger
done chan struct{}
isRunning bool
}
// New returns a new Raspivid.
@ -287,6 +288,7 @@ func (r *Raspivid) Start() error {
if err != nil {
return fmt.Errorf("could not start raspivid command: %w", err)
}
r.isRunning = true
return nil
}
@ -310,11 +312,11 @@ func (r *Raspivid) Stop() error {
if err != nil {
return fmt.Errorf("could not kill raspivid process: %w", err)
}
r.isRunning = false
return r.out.Close()
}
// IsRunning is used to determine if the pi's camera is running.
func (r *Raspivid) IsRunning() bool {
panic("not implemented")
return false
return r.isRunning
}