Scheduled playout does not playout
  • Hi,

    we've been having some trouble recently playing out some files with airtime 1.8.2. The pypo log shows the following error:

    @400000004e8c539d2c2f0324 2011-10-05 13:54:43,740 ERROR - [api_client.py : get_media() : line 245] - [Errno socket error] [Errno 110] Connection timed out
    @400000004e8c539d2c2f16ac 2011-10-05 13:54:43,740 WARNING - [pypofetch.py : handle_media_file() : line 249] - something went wrong. file /var/tmp/airtime/pypo/cache/scheduler/2011-10-05-14-00-00/29359faf6b09e11c3c44717e87e15176.mp3 not available. will not add it to playlist


    The file definitely exists and is in the folder:
    /media/usb/airtime/stor/293/29359faf6b09e11c3c44717e87e15176.mp3


    I've attached the current logs of pypo and pypo-liquidsoap

    James
  • 15 Comments sorted by
  • Hi James,
    we have Airtime 1.9.4 out which is more stable and has great new features.

    Is it possible for you to upgrade?
  • Hi Ofir,

    Unfortunately not at this stage. I tried to upgrade to 1.9 a few weeks ago on our production machine, and there were all kinds of problems. Liquidsoap seems to require more RAM/CPU in 1.9 and our current PC can't really handle it. We're running Ubuntu server 11.04 on a Dell Inspiron 2.66GHz PC with 500mb RAM.

    Could this issue with 1.8.2 be memory related?

    James
  • Hi James,

    Please give me the output of
    ls -l /media/usb/airtime/stor/293/


    It's possible the file exists, but has size of zero bytes.
    Airtime Pro Hosting: http://airtime.pro
  • Hi Martin,

    ~$ ls -l /media/usb/airtime/stor/293/
    total 6748
    -rw-rw-r-- 1 www-data www-data 6909952 2011-09-15 16:47 29359faf6b09e11c3c44717e87e15176.mp3


    thanks

    James
  • Vote Up0Vote Down Paul BaranowskiPaul Baranowski
    Posts: 389Member, Administrator, Sourcefabric Team
    I would suggest upgrading the RAM by 512MB and then upgrading Airtime. The
    amount of RAM you currently have is under our recommended amount of 1GB.

  • Hi Paul,

    The sourcefabric website here says 500mb is required for a server edition OS, which is what we have (see post above). Are you saying that the server edition now requires 1GB RAM too?

    thanks

    James
  • Hi James, I just realized we are looking in the wrong directory.

    Please do
    ls -l /var/tmp/airtime/pypo/cache/scheduler/2011-10-05-14-00-00/


    Airtime Pro Hosting: http://airtime.pro
  • Hi Martin,

    ~$ ls -l /var/tmp/airtime/pypo/cache/scheduler/2011-10-05-14-00-00/
    ls: cannot access /var/tmp/airtime/pypo/cache/scheduler/2011-10-05-14-00-00/: No such file or directory


    So are the playlisted files copied to this directory before streaming them? I had assumed they would be played from the storage folder..

    thanks

    James
  • Yup they are copied, this is architecture decision since pypo/liquidsoap and your webserver don't necessarily have to be on the same machine (for better load balancing etc in the future).

    Did you ever have your external harddrive disconnected when you were scheduling shows? What may have happened is that Airtime tried to pre-cache the file, but it wasn't accessible.
    Airtime Pro Hosting: http://airtime.pro
  • Ok this makes sense then. We had some network issues around this time and I've edited airtime.conf to say:

    base_url = nts-studio.dyndns.org


    instead of:

    base_url = localhost


    So pypo is looking to copy a file over the WAN and not simply from an external hard drive. I changed this because we need to download files remotely from the storage folder via web ui, but in this instance it would be better to have pypo pull the files directly from localhost rather than over the internet to save on already limited bandwidth. Is it possible to achieve both these things?

    many thanks

    James
  • Hi James,

    In your /etc/hosts file put the following line

    127.0.0.1 nts-studio.dyndns.org


    This will resolve any requests pypo makes via your external address to localhost.
    Airtime Pro Hosting: http://airtime.pro
  • Sorry you should already have a line starting with 127.0.0.1. You should just append "nts-studio.dyndns.org" to that line.
    Airtime Pro Hosting: http://airtime.pro
  • Thanks! will try it out

    James
  • If you have chosen a random, but valid, IP address and port, socket.connect() will attempt to make a connection to that endpoint. By default, if no explicit timeout is set for the socket, it will block while doing so and eventually timeout, raising exception socket.error: [Errno 110] Connection timed out. The default timeout on my machine is 120 seconds. 


  • An automated approach to scheduling could help address both these issues. Broadcast scheduling could be completely reinvented Upsers, by defining rules for scheduling, and deploying deep-learning based systems.
    Post edited by Harricks at 2020-05-15 09:46:36