🚧 More of fingerprinting

This commit is contained in:
Dan Jones 2023-09-24 22:34:30 -05:00
commit c87dc5e04f
3 changed files with 89 additions and 6 deletions

View file

@ -2,16 +2,49 @@ package app
import (
"fmt"
"strconv"
"codeberg.org/danjones000/strip-beats/input/list"
"codeberg.org/danjones000/strip-beats/media"
"codeberg.org/danjones000/strip-beats/media/brainz"
"codeberg.org/danjones000/strip-beats/utils"
)
type recOpt struct {
rec brainz.Recording
num int
}
func (o recOpt) Title() string {
return o.rec.Title
}
func (o recOpt) Text() string {
return fmt.Sprintf(
"By %s - First Released %s - %s %s",
o.rec.FirstArtist().Name,
o.rec.FirstReleaseDate,
o.rec.FirstGenre().Name,
utils.Tern(o.rec.Video, "(Video)", ""))
}
func (o recOpt) Rune() rune {
s := strconv.Itoa(o.num)
for _, c := range s {
return c
}
return 0
}
func (o recOpt) Selected() func() {
return nil
}
func print() {
if file == nil {
PickFileWithConf()
}
fp, err := media.Fingerprint("/home/drj/MyFiles/Videos/WebShows/YouTube/Dolly_Parton_-_Topic/Just_Because_I_m_a_Woman.Dolly_Parton_-_Topic.Fmv-XQerVkM.webm")
fp, err := media.Fingerprint(file.Format.Path)
if err != nil {
panic(err)
}
@ -19,17 +52,21 @@ func print() {
if err != nil {
panic(err)
}
var recs []brainz.Recording
var recs []list.Option
var rec brainz.Recording
i := 1
for _, res := range ids.Results {
for _, rec := range res.Recordings {
for _, rec = range res.Recordings {
err = brainz.FillRecording(&rec)
if err != nil {
panic(err)
}
recs = append(recs, rec)
recs = append(recs, recOpt{rec, i})
i = (i + 1) % 10
}
}
fmt.Printf("%+v\n", recs)
rec = list.List("Which recording is the correct one?", recs, nil).(recOpt).rec
fmt.Printf("%+v\n", rec.Title)
}