Frequently Asked Questions

When sending the output multicast from cherryepg to TSReader it doesn’t show anything! Why?

The TSReader needs to have an additional table in the stream. You need to add Service Description Table SDT to the output stream. No matter if there is a connection to the data in the EIT or not. Just add SDT. You can find a sample SDT below. Open the Carousel from the Menu and upload the .ets.gz chunk, save it to the carousel and start playing.

  • SDT.ets.gz (0 kB)
  • SDT chunk

    Start playing SDT in carousel

    Now you will see something like this

    TSReader window

    TSReader content overview

    Does cherryepg/ringenspiel only send multicast out on eth0?

    No. ringelspiel is only generating the output stream. The Linux OS decides where the stream will be sent or. correctly said routed. The behavior of this is defined in the routing table. You can check the current routing table with


    and you will receive something like this (this depends on your network configuration):

    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    default         UG    0      0        0 eth0   U     0      0        0 eth0

    by running

    route add -net netmask eth1

    all multicast traffic will be sent to interface eth1. This is shown in the updated routing table:

    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    default         UG    0      0        0 eth0   U     0      0        0 eth0       *            U     0      0        0 eth1

    Is it possible to increase TTL in packets of the output stream?

    Yes. There are many ways to handle the time to live (TTL) or hop limit value.

    The default TTL value is 16. But it can be modified by setting a commandline parameter to ringelspiel in the ringelspiel unit file located in /var/lib/cherryepg/.config/systemd/user/ringelspiel.service.

    Add -t 128 to the ExecStart line for setting the TTL to 128.

    The -m 200 sets the default minimum output bitrate to 200 kbps. Modify this value to fit your needs.

    Description=ringelSpiel - MPEG2 file carousel
    ExecStart=/var/lib/cherryepg/bin/ringelspiel -d -m 200 -t 128 -p /var/lib/cherryepg/carousel/

    reload units by running

    systemctl --user daemon-reload

    and restart the daemon

    systemctl --user restart ringelspiel.service

    How can I import schedule data from an Excel XLS file?

    Fill your event data in the Simple schedule spreadsheet formatted XLS file and specify the SimpleXLS as parser in your scheme file.

  • SimpleSchedule.xls (8 kB)
  • In my cable network I would like to inform subscribers of an oncoming thunderstorm. Can I use the present/following event information for this?

    Yes. There is a special option Announcement where text information of present and/or following events can be overwritten.

    Announcement configuration

    Setting announcement text

    Each EIT contains schedule data for its own services as well as data for services in other streams. For a larger network with 200 or more services, these EIT can become very large (5 Mbit/s or more). Is it possible to reduce the size of the generated EIT streams?

    The reason for such a large EIT is the full_mesh building feature. This means that each TS contains event information for all other TS. This can be partially disabled by entering service numbers in the exclusion field (these services are then not included in the creation process).

    The full-mesh building feature can be also disabled per EIT. Just add the NOMESH keyword to the option list in your Excel scheme file. Take a look at the sample scheme.

    It is also possible to have partially mesh building. In this case only present/following events are meshed and all schedule events from other TS are blocked. This can be set with the SEMIMESH keyword in the option list.

    Is it possible to generate multiple multicasts containing only a single service each but all having the same TSID?

    There is a workaround for this. Basically you have to define multiple different multicasts with different TSID but overwrite the TSID at the final stage of building the chunk.

  • SameTSID.xls (12 kB)
  • Can we limit the EIT bitrate to some value?

    The EIT bitrate is the result of the refresh interval used for generating the table. The refresh intervals used are according to standard and implementation guidelines. Currently they are hardcoded inside cherryEPG. It is not smart to modify them as TS analyzers will show errors in your stream. Therefore only do this, when you know what you are doing.

    Nevertheless, it is sometimes unavoidable to limit the bit rate. In such cases you can use the MaxBitrate feature.

    Just set the maximum allowed bitrate with MAXBITRATE=«value» in the option list in your Excel scheme file, where «value» is the maximum allowed bitrate in bits per second [bps].

    Take a look at

  • LimitBitrate.xls (11 kB)
  • Can cherryEPG generate some default SDT, PAT and PMT tables for every output stream?

    Sure. Just add the table abbrevations you need to be generated in option field of the EIT sheet e.g. SDT,PAT,PMT

  • AutoTable.xls (11 kB)
  • Is it possible to put some additional description to output EIT streams?

    This can be accomplished by adding a title in the option field of the EIT sheet e.g.

  • wTitle.xls (12 kB)