i need to enable debugging to get to the bottom of a problem

Added by scott pavey almost 4 years ago


my setup is ubuntu server running tvheadend in a docker container using IPTV as a source, serving tv to kodi on libreelec on a rpi3 client.

For the most parts its great now ive realised how to manage the channels properly, but I have a problem with discontinuity errors which causes freezes, switching channel and then back to the original solves the problem until it happens again, i've tried kodi on a windows 10 laptop and an xbox one s with the same errors appearing.

The strange thing is if I use the tvheadend app on IOS and use the rpi3 as the target player its faultless, no errors in the log and no freezing at all.

I realise I need to provide logs for this but I cant figure out how to do this, i enter a path in the debugging window,but nothing gets written to the file.



Replies (3)

RE: i need to enable debugging to get to the bottom of a problem - Added by Joe User almost 4 years ago

in "Debug subsystems" you need to enter a comma separated list of which subsystems to debug:

# /home/builder/tvheadend_official/tvheadend/build.linux/tvheadend --subsystems

  START           START
  STOP            STOP
  CRASH           CRASH
  main            Main
  tprof           Time profiling
  qprof           Queue profiling
  CPU             CPU
  thread          Thread
  tvhpoll         Poll multiplexer
  time            Time
  spawn           Spawn
  fsmonitor       Filesystem monitor
  lock            Locking
  uuid            UUID
  idnode          Node subsystem
  url             URL
  tcp             TCP Protocol
  rtsp            RTSP Protocol
  upnp            UPnP Protocol
  settings        Settings
  config          Configuration
  access          Access (ACL)
  cron            Cron
  dbus            DBUS
  avahi           Avahi
  bonjour         Bonjour
  api             API
  http            HTTP Server
  httpc           HTTP Client
  htsp            HTSP Server
  htsp-sub        HTSP Subscription
  htsp-req        HTSP Request
  htsp-ans        HTSP Answer
  imagecache      Image Cache
  tbl             DVB SI Tables
  tbl-base        Base DVB SI Tables (PAT,CAT,PMT,SDT etc.)
  tbl-csa         DVB CSA (descrambling) Tables
  tbl-eit         DVB EPG Tables
  tbl-time        DVB Time Tables
  tbl-atsc        ATSC SI Tables
  tbl-pass        Passthru Muxer SI Tables
  tbl-satip       SAT>IP Server SI Tables
  fastscan        Fastscan DVB
  pcr             PCR Clocks
  parser          MPEG-TS Parser
  TS              Transport Stream
  globalheaders   Global Headers
  tsfix           Time Stamp Fix
  hevc            HEVC - H.265
  muxer           Muxer
  pass            Pass-thru muxer
  audioes         Audioes muxer
  mkv             Matroska muxer
  service         Service
  channel         Channel
  subscription    Subscription
  service-mapper  Service Mapper
  bouquet         Bouquet
  esfilter        Elementary Stream Filter
  profile         Streaming Profile
  descrambler     Descrambler
  descrambler-emm Descrambler EMM
  caclient        CA (descrambling) Client
  csa             CSA (descrambling)
  capmt           CAPMT CA Client
  cwc             CWC CA Client
  cccam           CWC CCCam Client
  dvbcam          DVB CAM Client
  dvr             Digital Video Recorder
  dvr-inotify     DVR Inotify
  epg             Electronic Program Guide
  epgdb           EPG Database
  epggrab         EPG Grabber
  charset         Charset
  dvb             DVB
  mpegts          MPEG-TS
  muxsched        Mux Scheduler
  libav           libav / ffmpeg
  transcode       Transcode
  iptv            IPTV
  iptv-pcr        IPTV PCR
  iptv-sub        IPTV Subcription
  linuxdvb        LinuxDVB Input
  diseqc          DiseqC
  en50221         CI Module
  en50494         Unicable (EN50494)
  satip           SAT>IP Client
  satips          SAT>IP Server
  tvhdhomerun     TVHDHomeRun Client
  psip            ATSC PSIP EPG
  opentv          OpenTV EPG
  pyepg           PyEPG Import
  xmltv           XMLTV EPG Import
  webui           Web User Interface
  timeshift       Timeshift
  scanfile        Scanfile
  tsfile          MPEG-TS File
  tsdebug         MPEG-TS Input Debug
  codec           Codec
  vaapi           VA-API
  ddci            DD-CI

Or you can use "all" for everything.

For more in depth debugging, you can enable "Debug trace (low-level):" and enter the subsystems as above.

You can also use negative values (ie, -epg) to remove things after an "all".


after applying it will return with a list of all subsystems except epg.

RE: i need to enable debugging to get to the bottom of a problem - Added by scott pavey almost 4 years ago

great thanks i have it logging now, not sure which subsystem other than mpegts and tsfix I need to log though?

RE: i need to enable debugging to get to the bottom of a problem - Added by Joe User almost 4 years ago

When I don't know what subsystems, I usually start with all and slowly remove some which I notice I don't need:

I don't use IPTV, but probably iptv and mpegts are needed if you want to start with less an build up instead...