Recordings in Subfolders with Multi-seat (UNC Streaming mode) dont play on client (1 Viewer)

gavo

Portal Member
July 27, 2008
24
8
MediaPortal Version: 1.9.0

Description
I have just upgraded from MP 1.2.3 - I did this by rebuilding my PC's from XP to Win7 and doing a fresh install of MP 1.8, then an upgrade to 1.9 a couple of days later.

I have a multiseat setup with Server/Client on one PC and client only on another. The client only machine is configured for UNC streaming.

On the client LiveTV works correctly but scheduled RecordedTV fails with "cannot play stream".

The server/client can play the same RecordedTV.

I had this configuration working in MP 1.2.3.

If I move the .TS file of the recorded program to one directory higher, remove its entry from the database and re-add it for its new location (through the configuration tool), I can then play it on the client.

I suspect this might be related or be similar to MP1-4495, but this was marked as fixed in 1.8.

I attach the following files for your consideration:

TVServerRecordedLocation-doesntwork.png - Database entry for the program as entered by TVServer when it recorded it (based on a scheduled recording). The client cannot play the recordedTV at this stage. The server/client can play the recording.

MediaPortalLogs_05_10_14__20_29-doesntwork.zip - Debug logs from the client when trying to play the recordedTV program - notice that there is a directory missing in the translated path of the recording when the client tries to open the .TS file.

ManuallyMovedLocation-works.png - Database entry for the program after I have moved the recording one level up in the directory structure on the server, "Removed Invalid entries" from SetupTV.exe, then re-imported the recording from its new location.

MediaPortalLogs_05_10_14__20_34-works.zip - Debug logs from the client when trying to play the recordedTV program after moving it and reimporting it into the database - works/plays correctly.

Any tips/hints on how to work around this would be appreciated. Let me know if you need any further information, or I am a boob and have missed something obvious (sorry in advance if thats the case!).

Cheers,

Steps to Reproduce:
Install Multiseat.
Configure client to use UNC streaming.
Schedule recording
Wait for recording to complete
Attempt to play back recording on client
 

Attachments

  • TVServerRecordedLocation-doesntwork.png
    TVServerRecordedLocation-doesntwork.png
    2.7 KB
  • ManuallyMovedLocation-works.png
    ManuallyMovedLocation-works.png
    2.8 KB

Sebastiii

Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    Hi :)

    Not sure what change you talk about :) i remember that i have maybe rebase some branch from @regeszter (not sure if it's him that add this stuff) to have clean commit log so maybe i have take some commit name about it lol.

    So yes something need to be change for UNC for sure :)

    Ok :) Just find that it's popy patch :
    MP1-4495 : Fix Recordings in Subfolders won't play when UNC paths are used on Multi-Seat setups (popy patch)

    So yes, if we apply the same code for BaseTSReaderPlayer, it will surely works :)

    upload_2014-10-5_12-29-16.png
     

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    I can supply a core.dll with the change added for testing :)
     

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    In fact, nope i can't supply a patch/bin based on TVUtil change, need more investigation and my time is limited for now, i will try to look a little but not sure it will come to a solution lol.

    First i can't reproduce because it's not setup with sub folder etc.
     

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    @popy maybe can help on this :)

    On my side i can play a recording from :
    \\homeserver\Record\TVE3\11 - NT1 (TNT)\Confessions intimes\Confessions intimes - 2014-05-24.ts

    All other recording are in : \\homeserver\Record\TVE3

    So not sure what to do and what is not working lol
     

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    For me it looks OK.

    If we manually move the .ts, we need to perform a cleanup and readd to get the correct path, otherwise, it will failed because the path will not be corrected in db :)
     

    gavo

    Portal Member
    July 27, 2008
    24
    8
    Thanks all. I'll setup another remote client and do some more testing to see if I can narrow down the exact circumstances that this is occurring in for me. In the meantime I have switched my main remote client to RSTP :)
     

    gavo

    Portal Member
    July 27, 2008
    24
    8
    Well, I've done some more troubleshooting and it definitely looks like with my setup there is a parsing error somewhere when it converts the local path of the recording (stored in the database) to the UNC path for streaming from the remote client. I havent been able to determine why however.

    Consider this.

    The full local path to my recordings on the server is: E:\Media\RecordedTV
    E:\Media\RecordedTV is shared as \\homeserver\RecTV

    Under E:\Media\RecordedTV, TVServer is generally (most of the time) creating a Folder for the channel, then a folder under that for the series, then under that is placing the recorded TV file. i.e. E:\Media\RecordedTV\PRIME\Doctor Who\Doctor Who - 2014-10-5.ts

    When I try to play this recorded TV on the remote client I observe that:

    1. The path in the database for this recorded program is: E:\Media\RecordedTV\PRIME\Doctor Who\Doctor Who - 2014-10-05.ts
    2. The MediaPortal.Log on the remote client shows that the client is attempting to access: [DEBUG] - MediaInfoWrapper.MediaInfoWrapper: Opening file : \\homeserver\RecTV\Doctor Who\Doctor Who - 2014-10-05.ts

    Notice the Channel directory (PRIME) is missing from the path. PRIME is the First directory under the share, in the directory hierachy in which the recorded program exists.

    If I then move the recording up one level (into the PRIME directory) and clean up the database so the paths now look like this:

    Local File Location - E:\Media\RecordedTV\PRIME\Doctor Who - 2014-10-05.ts
    Database Path: E:\Media\RecordedTV\PRIME\Doctor Who - 2014-10-05.ts

    And then try to play the recorded program from the remote client - it works and the MediaPortal.Log on the remote client shows that the correct path is being accessed: [DEBUG] - MediaInfoWrapper.MediaInfoWrapper: Opening file : \\homeserver\RecTV\PRIME\Doctor Who - 2014-10-05.ts

    So now it does know about the PRIME directory whereas before it dropped it off.

    Interestingly, if I create another subdirectory so that the path to the recorded program looks like this: E:\Media\RecordedTV\PRIME\Doctor Who\Gavo\Doctor Who - 2014-10-5.ts (added a subdirectory called Gavo), clean up the DB and try to play the recording from the remote client - the mediaportal log looks like this: [DEBUG] - MediaInfoWrapper.MediaInfoWrapper: Opening file : \\homeserver\RecTV\Gavo\Doctor Who - 2014-10-05.ts

    Notice all directories have been dropped out of the path except for the one that the recording actually exists in.

    Any thoughts would be appreciated :)

    Cheers,
     

    Users who are viewing this thread

    Top Bottom