Could you post your code after updating it?

Le jeu. 9 juin 2022 à 15:14, Erik Schoster <e...@hecanjog.com> a écrit :

> Hi Martin,
>
> Thank you for the suggestion -- when I do that, I get a different error:
>
> At sparetire.liq, line 21, char 84-89:
> Error 5: this value has type
>   unit (inferred at sparetire.liq, line 19, char 8-37)
> but it should be a subtype of
>   source(_)
>
>
> Is it complaining about the signature of my callback? I'm not sure how to
> adapt it.
>
> Thanks very much for your help!
>
> Erik
>
> On Thu, Jun 9, 2022, at 2:09 PM, Martin Kirchgessner wrote:
>
> Hello Erik,
>
> Have you tried radio.on_track(post_metadata) ?
>
>
> Martin
>
> Erik Schoster a écrit le 09/06/2022 à 18:01 :
>
> Hi all,
>
> Happy liquidsoap user here, thank you for a wonderful system!
>
> I'm trying out upgrading from 1.x to 2.x and am running into a problem
> with a call to on_track in my old script.
>
> Under liquidsoap 2.0.5 running my script results in:
>
> At sparetire.liq, line 19, char 8-17:
> Error 4: Undefined variable on_track
>
>
> Removing the call to on_track allows the script to run. I'm using it to
> pass the metadata from the most recently played track to a python script
> which relays it elsewhere for display on a website.
>
> I looked through the documentation and upgrade notes and couldn't seem to
> find info about this, my apologies if it's already documented somewhere!
>
> My complete script looks like (with some things removed):
>
> #!/usr/bin/liquidsoap
>
> set('encoder.encoder.export', ['artist', 'title', 'album', 'composer',
> 'comment'])
> set('log.file.path', '')
> set('log.stdout', false)
> set('harbor.bind_addr', '127.0.0.1')
>
> url = '
> streamuser = ''
> streampass = ''
>
> sparetirerandom = nrj(playlist('playlist.m3u', mode='normal',
> reload_mode='watch'))
> radio = mksafe(sparetirerandom)
>
> def post_metadata(m) =
>     system("/usr/bin/python3 sparetire_info.py "^quote(m['artist'])^"
> "^quote(m['title'])^" "^quote(m['album'])^" "^quote(m['composer'])^"
> "^quote(m['comment']))
> end
>
> radio = on_track(post_metadata(), radio)
>
> output.icecast(%mp3(bitrate=256, samplerate=44100, internal_quality=0,
> id3v2=true), radio,
> host='localhost', port=8000, user=streamuser, password=streampass,
> description='SPARETIRE radio', url=url, genre='Freeform',
> mount='sparetire', name='SPARETIRE radio')
>
>
> Is there another way I can accomplish passing metadata to my python
> script? Thank you!
>
> Erik
>
>
> _______________________________________________
> Savonet-users mailing 
> listSavonet-users@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/savonet-users
>
>
>
> _______________________________________________
> Savonet-users mailing list
> Savonet-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/savonet-users
>
>
> _______________________________________________
> Savonet-users mailing list
> Savonet-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/savonet-users
>
_______________________________________________
Savonet-users mailing list
Savonet-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/savonet-users

Reply via email to