 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Overview ¶
chromaprint provides bindings to the Chromaprint library, which is a library for extracting audio fingerprints.
Index ¶
- Variables
- func New(rate, channels int, duration time.Duration) *fingerprint
- func PrintVersion(w io.Writer)
- type Client
- type Config
- type Meta
- type Response
- type ResponseArtist
- type ResponseError
- type ResponseGroup
- type ResponseMatch
- type ResponseMedium
- type ResponseRecording
- type ResponseRelease
- type ResponseTrack
Constants ¶
This section is empty.
Variables ¶
      View Source
      
  
    var (
	DefaultConfig = Config{
		Key:     defaultClientId,
		Timeout: defaultTimeout,
		Rate:    defaultQps,
		Base:    baseUrl,
	}
)
    
      View Source
      
  
var (
	ErrQueryRateExceeded = errors.New("query rate exceeded")
)
    Functions ¶
func New ¶ added in v1.6.1
Create a new fingerprint context, with the expected sample rate, number of channels and the maximum duration of the data to put into the fingerprint. Returns nil if the context could not be created.
func PrintVersion ¶ added in v1.6.1
Types ¶
type Meta ¶
type Meta uint
const ( META_RECORDING Meta = (1 << iota) META_RECORDINGID META_RELEASE META_RELEASEID META_RELEASEGROUP META_RELEASEGROUPID META_TRACK META_COMPRESS META_USERMETA META_SOURCE META_MIN = META_RECORDING META_MAX = META_SOURCE META_NONE Meta = 0 META_ALL = META_RECORDING | META_RECORDINGID | META_RELEASE | META_RELEASEID | META_RELEASEGROUP | META_RELEASEGROUPID | META_TRACK | META_COMPRESS | META_USERMETA | META_SOURCE )
func (Meta) FlagString ¶
type Response ¶
type Response struct {
	Status  string           `json:"status"`
	Error   ResponseError    `json:"error"`
	Results []*ResponseMatch `json:"results"`
}
    type ResponseArtist ¶
type ResponseError ¶
type ResponseGroup ¶
type ResponseGroup struct {
	Id       string            `json:"id"`
	Type     string            `json:"type,omitempty"`
	Title    string            `json:"title,omitempty"`
	Releases []ResponseRelease `json:"releases,omitempty"`
}
    type ResponseMatch ¶
type ResponseMatch struct {
	Id         string              `json:"id"`
	Score      float64             `json:"score"`
	Recordings []ResponseRecording `json:"recordings,omitempty"`
}
    func (*ResponseMatch) String ¶
func (r *ResponseMatch) String() string
type ResponseMedium ¶
type ResponseMedium struct {
	Format     string          `json:"format"`
	Position   uint            `json:"position"`
	TrackCount uint            `json:"track_count"`
	Tracks     []ResponseTrack `json:"tracks,omitempty"`
}
    type ResponseRecording ¶
type ResponseRecording struct {
	Id            string           `json:"id"`
	Title         string           `json:"title,omitempty"`
	Duration      float64          `json:"duration,omitempty"`
	Artists       []ResponseArtist `json:"artists,omitempty"`
	ReleaseGroups []ResponseGroup  `json:"releasegroups,omitempty"`
}
    type ResponseRelease ¶
type ResponseRelease struct {
	Id      string           `json:"id"`
	Mediums []ResponseMedium `json:"mediums,omitempty"`
}
    type ResponseTrack ¶
type ResponseTrack struct {
	Id       string           `json:"id"`
	Artists  []ResponseArtist `json:"artists,omitempty"`
	Position uint             `json:"position"`
	Title    string           `json:"title,omitempty"`
}
     Click to show internal directories. 
   Click to hide internal directories.