code: func (e *Encoder) Write() error {
  	if e == nil {
  		return errors.New("Can't write a nil encoder")
  	}
  	e.writeHeaders()
  	for _, t := range e.Tracks {
  		if err := e.encodeTrack(t); err != nil {
  			return err
  		}
  	}
  	// go back and update body size in header
  	return nil
  }
docs: // Write writes the binary representation to the writer