Kodi Community Forum

Full Version: Kodi on Enigma2 does not play .ts files
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hello,

Kodi (18.7 Git:20200711-nogitfound). Platform: Linux ARM 32-bit
Zgemma H7S set top box
OpenVix 5.3 (enigma2 on embedded linux OS)

I am using Kodi on an enigma2 set top box. I use the box to record movies from the TV. It has it's own media player and they play fine through that.

When I run Kodi 18.7 (which is a plugin) on this box it will play .mp4 files ok but when it tries to play .ts files they stop after 2-3 seconds and the screen freezes.

I am trying to add a playercorefactory.xml file in my userdata folder to direct Kodi to use the set top box media player (as a Kodi external media player). So far I have tried this but it's not working...

<playercorefactory>
  <players>
    <player name="e2mediaplayer" type="ExternalPlayer" audio="true" video="true">
      <filename>/usr/lib/enigma2/python/Plugins/Extensions/MediaPortal/plugin.pyo</filename>
      <args>--fullscreen "{1}"</args>
      <hidexbmc>true</hidexbmc>
      <hideconsole>true</hideconsole>
    </player>
  </players>
  <rules action="prepend">
    <rule name="ts" filetypes="ts" player="e2mediaplayer"/>
  </rules>
</playercorefactory>

I guess it sort of works in that it doesn't stop Kodi from playing .mp4 files. Still if I try to play a .ts movie in Kodi it plays for about 2-3 seconds then the screen freezes and I get this log.

If I press C on the keyboard when a movie thumbnail is highlighted, the "Play Using.." option does NOT appear in the context menu.

I suppose my main problem is figuring out the path that needs to go inside <filename>....</filename> which is kind of an enigma2 question but hopefully someone here could help anyway?? There are also errors in the log file like..

Code:
NOTICE: Loading player core factory settings from special://xbmc/system/playercorefactory.xml.
WARNING: CPlayerCoreFactory::GetPlayer(E2Player): no such player: E2Player
NOTICE: Loaded playercorefactory configuration
NOTICE: Loading player core factory settings from special://profile/playercorefactory.xml.
WARNING: CPlayerCoreFactory::GetPlayer(e2mediaplayer): no such player: e2mediaplayer

What should I do about those errors?

Cheers,

Flex
I have a solution that seems to work alright. Here is some explanation. It might not all be completely correct or apply to other peoples situations but i figure spreading the knowledge is better than no one knowing what the options are.

Just to recap... I am talking here about using Kodi installed as a plugin on a set top box running enigma2. I was having trouble getting kodi to play .ts files that were tv recordings made from the set top box and are saved to a local usb drive. The .ts files would just freeze up and not play.

Enigma2 media players are all based on the Gstreamer framework. The FFMPEG framework can do a better job of playing some media types such as internet streams and (I found) .ts files. FFMPEG is not a regular part of Enigma2. You have to install it along with a different media player and then activate that new player using a third tool.

From a command line window, to the Linux OS of the set top box, install ffmpeg, exteplayer3 and serviceapp:
# opkg update
# opkg remove enigma2-plugin-systemplugins-serviceapp exteplayer3 ffmpeg
# opkg install ffmpeg exteplayer3 enigma2-plugin-systemplugins-serviceapp

Configure ServiceApp to make exteplayer3 the default media player in enigma2:
Enigma2 > Menu > Setup > System > ServiceApp
Enigma2 playback system: serviceapp
Player: exteplayer3
I left all the options underneath unchanged except "Auto turn on subtitles" (I set this to false)

Update the advancedsettings.xml so kodi knows what the enigma2 default media player is:
/usr/share/kodi/system/advancedsettings.xml
Change... <defaultplayer>E2Player</defaultplayer>
To
<defaultplayer>exteplayer3</defaultplayer>

Update the Kodi SYSTEM playercorefactory.xml file so Kodi knows what the enigma2 default media player is:
/usr/share/kodi/system/playercorefactory.xml
Change… <player name="E2Player" type="Enigma2Player" audio="true" video="true">
To
<player name="exteplayer3" type="Enigma2Player" audio="true" video="true">

Now reboot the enigma2 set top box.

Controlling playback of .ts files played through Kodi

When watching a movie from Kodi you use the same controls to pause/play/stop/skipforward the movie as though you were watching the movie from the enigma2 media player.
You don't get nice Kodi style on screen controls as you do in other dedicated Kodi devices or OSs such as OSMC or LibreELEC.
The fastforward >| and rewind <| buttons don't seem to work when playing a movie from Kodi but they DO work when playing the same movie from the enigma2 media player.
The lack of ffwrd and rewind is a known limitation of exteplayer3.

A workaround is to simply skip forward and back by a fixed number of seconds using the number buttons on the remote: 1/3=15 secs, 4/6=60 secs, 7/9=300 secs.
These durations can be changed in: Enigma2 > Menu > Setup > Recordings, playback & timeshift > Recording & Playback > Custom skip time for.....

You can also long press the left and right arrow buttons (either side of the OK button) and then additional presses skip forward or back by a time that is configurable in:
Enigma2 > Menu > Setup > Recordings, playback & timeshift > Recording & Playback > Seekbar sensibility
I found that 1 = 9 seconds and 10 is 65 seconds in Kodi,

After I did all of this, I am able to play movie recordings (.ts files) though the Kodi plugin. So far Kodi 18.7 in OpenVix 5.3 on the ZGemma H7S seems to work ok for this purpose.

My understanding is, that in this configuration, Kodi uses the enigma2 default media player to play video content. If so then I don't know why the default media player I had (E2Player I think?) was playing .ts files just fine from enigma2 but when I played the .ts files through Kodi they didn't play... hence switching to ffmpeg/exteplayer3 was necessary.

Hope this helps someone,

Flex