Airtime 2.5.1 and TuneIn
  • Hi all!
    Yes, it was a year ago.
    Now, is there a solution?
  • 24 Comments sorted by
  • Hello! Original post is a year old, but the script evidently still works with 2.5.1. Read the entire thread, give it a shot, and please report back! :x
  • Hello!
    I did everything as stated in the post, but when accessing the following link 
    http://air.radiotime.com/Playing.ashx?partnerId=my_ID&partnerKey=my_key&id=my_station_ID
    recieved it
    <opml version="1">
    <head>
    <status>400</status>
    <fault>Missing song artist/title</fault>
    <fault_code>request.metadataMissing</fault_code>
    </head>
    <body></body>
    </opml>
  • Hmm, maybe the API changed recently? To help simplify things, post and follow the original thread!
  • Almost forgot! You are replacing my_ID and my_key with your station's assigned values from TuneIn, yeah?
  • Hi Yaroslav;
    A status of 400 means that one or both of the key information is missing.
    It also means that your script is working

    If you are using the Ls_script modification


    If you look at my post  you will see that I also include a script that will change your metatags if its not properly formed. ( some times the metatags just have -- so I made that fix)

    The two script I include are the easiest and act on the output so no matter whether there is overall changes.

    If you are using the PHP script
     
    also included then you have to ask the relevant author for  it

    Although the post is a year old  if you make the Ls modification by me (VOISSES) its relevant .You can use this modification on any Liquidsoap Script be it Airtime or as a stand Alone.

    Good Luck

    VOISSES
    Post edited by Voisses Tech at 2014-10-13 16:43:49
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • Roger Wilco,  оf course I changed the variables my_id, my_key, my_station_id.

    Voisses Tech, сould you see the script in an attachment?


  • Use this file instead instructions are in the file
    This file have minimum log information in your log file

    This script assume all your metatags are properly ingest.If not you need to put an update file above this script as below

    you only have to change the 4 lines with the provider information

    if you want more log information use the other one below.

    You definitely need to change the line where you input the script to the output line (its about line 283 and before the output to the streams
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • and if you like reading logs use this
    same as above
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • If your metatags are not properly formed and you have information like - for artist or title then you need an update metatag file
    a sample is included here in this post

    https://forum.sourcefabric.org/discussion/16857/unknown-how-to-deal-with-metadata-that-shows-unknown

    Put it above the the tuneinapi.liq file by just

    • %include "update.liq"  at the top of your script      (recommended best with softlinks)
    • copy the file information at the top of the  script    (recommended but messy)
    • copy the information in your  ls-script                   (not recommended)

    Good Luck
    VOISSES

    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • Voisses Tech, thank you very much! Solved and works!
  • Use this file instead instructions are in the file
    This file have minimum log information in your log file

    This script assume all your metatags are properly ingest.If not you need to put an update file above this script as below

    you only have to change the 4 lines with the provider information

    if you want more log information use the other one below.

    You definitely need to change the line where you input the script to the output line (its about line 283 and before the output to the streams



    i'm using your script and insert it into ls_script, and of course change my_partner id, station id and partnerkey

    but tunein still can get my songs metada,

    this is what i get when access http://air.radiotime.com/Playing.ashx?partnerId=my_ID&partnerKey=my_key&id=my_station_ID

    This XML file does not appear to have any style information associated with it. The document tree is shown below.
          <opml version="1"><head><status>400</status><fault>Missing song artist/title</fault><fault_code>request.metadataIncomplete</fault_code></head><body>
        </body></opml>

    can anybody help me?

    thanks
  • Ok so I found the the metadata was not sent properly from the airtime library. Ls_lib.

    I fixed mine humping years ago ,so i never remember to tell everyone to do the fix

    it only only send what was previously known as song meaning that both the title and song was send as one information.Tune in required it to be split into artist and title. so here is the fix
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • This is where your problem is

    Line 34 -41 of the  ls_lib.liq

    else
          if !stream_metadata_type == 1 then
            [("title", "#{!show_name} - #{m['artist']} - #{m['title']}"), ("mapped", "true")]
          elsif !stream_metadata_type == 2 then
            [("title", "#{!station_name} - #{!show_name}"), ("mapped", "true")]
          else
            [("title", "#{m['artist']} - #{m['title']}"), ("mapped", "true")]

          end

    notice there is no separation of title and artist


    Now i will give you the full thing
    change the lines to look like this

    # I want the album and the Year
     [("title", " #{m['title']}"),("artist", "#{m['artist']}"),("album", "#{m['album']}"),("year", "#{m['year']}"),("comment", "#{m['comment']}"),("show_name", "#{!show_name}"),("station_name", "#{!station_name}"), ("mapped", "true")]     


    I highlight for you to better read.

    Remember they comes in block pairs

    strings and variable

    Title would
    ("title", " #{m['title']}")

    artist would be

    ("artist", "#{m['artist']}")

    and so on


    Stream 1 is your show and Master

    Stream 2 is schedule

    Stream 0 is your Auto dj (not mention above_

    Use any variable you and string you want


    the fix is here on my github



    Post edited by Voisses Tech at 2015-04-28 22:34:28
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • Now Here is Mine

    @Rodger_Wilco

    Here is the Santa Clause Fix

    I received the million dollar check you sent


    next time no monopoly dollars

    This will fix 99% of all Metadata problem and its provide more information than you need.
    The only problem you will have is metadata is send too early and I know what cause that.

    and you will find the changes here on my github

    Post edited by Voisses Tech at 2015-04-28 22:36:16
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • i already change the ls_lib.liq

    line 34

    else
          if !stream_metadata_type == 1 then
            [("title", " #{m['title']}"),("artist", "#{m['artist']}"),("album", "#{m['album']}"),("year", "#{m['year']}"),("comment", "#{m['comment']}"),("show_name", "#{!show_name}"),("station_name", "#{!station_name}"), ("mapped", "true")]
          elsif !stream_metadata_type == 2 then
            [("title", " #{m['title']}"),("artist", "#{m['artist']}"),("album", "#{m['album']}"),("year", "#{m['year']}"),("comment", "#{m['comment']}"),("show_name", "#{!show_name}"),("station_name", "#{!station_name}"), ("mapped", "true")]
          else
            [("title", " #{m['title']}"),("artist", "#{m['artist']}"),("album", "#{m['album']}"),("year", "#{m['year']}"),("comment", "#{m['comment']}"),("show_name", "#{!show_name}"),("station_name", "#{!station_name}"), ("mapped", "true")]

          end


    then i restart the liquidsoap, get this error

    Restarting Liquidsoap Playout Engine: ('Error loading config file: %s', error(11                           1, 'Connection refused'))
    Line 464, char 1: Parse error!

  • right now my station goes offline :(

    i tried sudo airtime-check-system

    AIRTIME_STATUS_URL             = http://xxx.xx.xxx.xx:80/api/status/format/json/api_key/%%api_key%%
    AIRTIME_SERVER_RESPONDING      = OK
    KERNEL_VERSION                 = 2.6.32-042stab105.14
    MACHINE_ARCHITECTURE           = x86_64
    TOTAL_MEMORY_MBYTES            = 1048576
    TOTAL_SWAP_MBYTES              = 1048576
    AIRTIME_VERSION                = 2.5.1
    OS                             = Ubuntu 12.04.5 LTS x86_64
    CPU                            = Intel(R) Xeon(R) CPU E5-2620 v2 @ 2.10GHz
    WEB_SERVER                     = Apache/2.2.22 (Ubuntu)
    PLAYOUT_ENGINE_PROCESS_ID      = 16441
    PLAYOUT_ENGINE_RUNNING_SECONDS = 931990
    PLAYOUT_ENGINE_MEM_PERC        = 1.6%
    PLAYOUT_ENGINE_CPU_PERC        = 0.0%
    LIQUIDSOAP_PROCESS_ID          = FAILED
    LIQUIDSOAP_RUNNING_SECONDS     = 0
    LIQUIDSOAP_MEM_PERC            = 0%
    LIQUIDSOAP_CPU_PERC            = 0%
    -- Displaying log file /var/log/airtime/pypo-liquidsoap/ls_script.log
    -- 2015/04/28 13:03:27 [threads:3] Thread "wallclock_main" terminated (1 remaining).
    -- 2015/04/28 13:03:29 [threads:3] Thread "http polling" terminated (0 remaining).
    -- 2015/04/28 13:03:29 [main:3] Cleaning downloaded files...
    -- 2015/04/28 13:03:29 [main:3] Freeing memory...
    -- 2015/04/28 13:03:29 >>> LOG END
    --
    --
    MEDIA_MONITOR_PROCESS_ID       = 16319
    MEDIA_MONITOR_RUNNING_SECONDS  = 931991
    MEDIA_MONITOR_MEM_PERC         = 0.5%
    MEDIA_MONITOR_CPU_PERC         = 0.0%
    -- There appears to be a problem with your Airtime installation.
    -- Please visit http://wiki.sourcefabric.org/x/HABQ



  • figure it out, thanks for the help guys..
  • Please everyone before you restart your machine check if the code is correct

    sudo /usr/lib/airtime/pypo/bin/airtime-liquidsoap  /usr/lib/airtime/pypo/bin/liquidsoap_scripts/ls_script.liq

    and fix the error.


    No one should complain that their system went down
    Read the precautions here

    https://forum.sourcefabric.org/discussion/15701/fallover-101-how-to-make-all-scripts-worked-easy-steps-to-build-your-scripts-fixed-silence


    To The DEV Group
    Please fix this now on all versions its
    a problem

    I wrote it this way
    but a simple change
    would be just put the line fixed as the metadata  or to restrict it

    use a
    If stream1
            blah blah
    else if stream 2
                more blah
    end if

    This is High priority

    Post edited by Voisses Tech at 2015-04-28 10:16:04
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • Damn, I guess my metadata was correct the entire time huh?  =))
  • Damn, I guess my metadata was correct the entire time huh?  =))



    The only way unless you had change yours as above or if  you parse from icecast and use a php script to separator "-"

    As I said
    This was a common misnomer and practice that metadata should be treated as song

    Song  should meaning that artist and title are sent as one tag and then use python or php to separate them.

    I found that out the hard way and learn it was common practice even in VLC

    I identify the bug as to why metadata is send more than once
    what I did to combat that was to place
    sleep 60s in my script but  I am testing the fix
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • And it sucks because sometimes there's a spaced hyphen in artist, track, and/or album names. Which is why it should be reporting each piece separately over to Icecast in the first place. Icecast has the support! Huge pet peeve of mine...
  • Airtime Pro now supports this, works a dream! 
  • Glad to see that.in the meantime we await a push to the community. and others
    Although the community is a "critical arm" its also a vital piece of having changes.

    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • Is that .pro tunein hack open source yet?