Hey folks, there is a new Podcast category for forums https://forums.plex.tv/categories/podcasts
If you have not already, we suggest setting your Plex username to something else rather than email which is displayed on your posts in forum. You can change the username at https://app.plex.tv/desktop#!/account
Welcome to our forums! Please take a few moments to read through our Community Guidelines (also conveniently linked in the header at the top of each page). There, you'll find guidelines on conduct, tips on getting the help you may be searching for, and more!

How to reset status "Unable to transcode" for synced items

I'm using the Plex App for Windows 8.1 and synced a collection from a shared library. I succeeded to sync 278 of 321 items, but failed for 43 items stating "Unable to transcode". The items definitely can be transcoded, I tried this by syncing a single item of them successfully.

 

Now how can I force retrying to transcode the failed items? Restarting sync, etc does not help, it even does not try to start the transcoding. What does trigger a new transcoding trial?

 

Frank-Michael

Comments

  • mfeingolmfeingol Posts: 5,091Members, Plex Employee, Plex Pass, Plex Ninja Plex Employee

    I believe the supported mechanism at the moment is to delete the sync item and have it retry.

    If that doesn't work for you, there is a more complex way to do it using the cUrl tool.

  • Frank-MichaelFrank-Michael Posts: 76Members, Plex Pass Plex Pass

    Thank you for your answer. Unfortunately deleting the sync item is not an option for me - to resync 321 movies will take araound 2 days without a guarantee to succeed, The second option sounds promising - I'm quite familar with using the REST API (I wrote a small REST client API in Java for me). Could you tell me more?

  • mfeingolmfeingol Posts: 5,091Members, Plex Employee, Plex Pass, Plex Ninja Plex Employee
    edited October 2014

    Okay, you asked for it.

    The following HTTP command will trigger a re-transcode against the PMS in question:

    PUT /sync/{device-uuid}/{server-identifier}/files/{sync-id}/transcode

    So where do you get those values?

    1) Go to https://plex.tv/devices.xml, find your device and get the "clientIdentifier" attribute.  That's your {device-uuid}.

    2) Go to https://plex.tv/devices/{device-uuid}/sync_items.xml and get the "id" attribute from your SyncItem.  That's your {sync-item-id}

    3) Go to http://YOURSERVER:32400/sync/items/{sync-item-id}, find the failed Video and get the "syncId" attribute off the Part.  That's your {sync-id}

    4) Go to http://YOURSERVER:32400/ and get the "machineIdentifer" attribute.  That's your {server-identifer}.

    Put it all together as above, and make sure you remember to PUT, not GET.  Look in the PMS logs to see what happened, since we have no UI for this.

  • Frank-MichaelFrank-Michael Posts: 76Members, Plex Pass Plex Pass

    OK, sounds good, The final PUT (I guess) refers to  http://YOURSERVER:32400/ ?

    But meanwhile I found another way to work around the problem: I removed the problematic entries from the synced Collection,edited the sync item on the client (without changing anything there) and forced a resync. Then I readded the items on the server and forced a resync on the client again. It seems to work :-)

    What would happen if I change the quality when editing the sync item, would all synced entries be removed first or would they be replaced one after another?

    Thanks a lot,

    Frank-Michael.

  • mfeingolmfeingol Posts: 5,091Members, Plex Employee, Plex Pass, Plex Ninja Plex Employee
    edited October 2014

    Sync item edits only apply post-facto, i.e. to item analysis and transcodes that occur after the change.

    Yes, the PUT is on the PMS instance.

    And yeah, that's a clever approach.

  • Frank-MichaelFrank-Michael Posts: 76Members, Plex Pass Plex Pass

    It turns out, that under https://plex.tv/devices.xml I only find "my" devices but not the devices of my "friends" which I have invited. Unfortunately the sync items in question relates to one of those devices. What can I do? 

    However, is there an URL to list all sync items from http://YOURSERVER:32400/sync/items/...

  • Frank-MichaelFrank-Michael Posts: 76Members, Plex Pass Plex Pass

    Actually I try to write a script which (1) enumerates all sync-items (served by my PMS) to finally (2) list all video parts which failed to transcode for syncing.

  • mfeingolmfeingol Posts: 5,091Members, Plex Employee, Plex Pass, Plex Ninja Plex Employee

    Frank-Michael:

    The following URL will return all sync items a given server is aware of, including those from shares:

    https://plex.tv/servers/{server-id}/sync_lists.xml
  • Frank-MichaelFrank-Michael Posts: 76Members, Plex Pass Plex Pass

    Perfect! That's exactly what I was looking for. Thanks a lot! Is there also a direct server URL (beginning with  http://YOURSERVER:32400/...) which serves the same list?

  • mfeingolmfeingol Posts: 5,091Members, Plex Employee, Plex Pass, Plex Ninja Plex Employee

    No, there isn't.

    You can do /sync/lists/ID and /sync/items/ID to enumerate the media under each thing, but there's no external enumeration of all lists on the server.

  • bbnet.onebbnet.one Posts: 1Members, Plex Pass Plex Pass

    Hello, very helpful treead, but I am looking for the solution to update the sync status.
    can someone help me?

  • Frank-MichaelFrank-Michael Posts: 76Members, Plex Pass Plex Pass

    Appearently
    PUT /sync/{device-uuid}/{server-identifier}/files/{sync-id}/transcode
    does not work any longer and returns 404. Did the API change?

  • Frank-MichaelFrank-Michael Posts: 76Members, Plex Pass Plex Pass

    OK, it seems, that the new URL should be

    PUT /sync/{device-uuid}/{server-identifier}/library/files/{sync-id}/transcode

    However, for synced entries with media parts for which the transcodeStateContext is "sourceFileUnavailable" like this:

    <Media ...> <Part id="3408" transcodeState="failed" transcodeStateContext="sourceFileUnavailable" syncId="3496" syncItemId="15184007"/> </Media>

    the URL from above yet fails with 404. At a time when Plex tried to start transcoding, the source indeed was unavailable. But in the meantime the source is available again. How can I now reset the transcodeStateContext and trigger a new transcoding?

  • Frank-MichaelFrank-Michael Posts: 76Members, Plex Pass Plex Pass

    Hello,

    since some recent update of the Plex Media Server unfortunatly some Web API URLs are not valid any longer. Consider the following variables:

    SERVER_IP as my local PLEX server IP
    SERVER_ID as my PLEX server machine identifier
    CLIENT_ID as the device or client UUID
    

    Then in the past I was able to request XML from the following URLs:

    https://plex.tv/servers/$SERVER_ID/sync_lists.xml
    https://plex.tv/devices/$CLIENT_ID/sync_items.xml 
    http://$SERVER_IP:32400/sync/$CLIENT_ID/$SERVER_ID/library/sections
    

    Now the URL to the local server (the last one) gives 404. Could you advice me how to get a list list of synced items as XML from the local server when server-id and client-id are given?

  • e3posoe3poso Posts: 4Members, Plex Pass Plex Pass
    edited February 26

    My solution:
    I had 2 out of 52 TV episodes "unable to convert". What I did was mark them all as "unwatched" then edited the sync item to only include "unwatched "items. Then I marked the 2 problem episodes as "watched". After a couple minutes the 2 problem episodes were removed from the list. I them marked then as "unwatched" and it proceeded to re-sync the problem episodes successfully.

Sign In or Register to comment.