Will this tool only work for the PMS admin? If I share my library with a friend, can they use this tool to sync my content to their machine? They have terrible bandwidth and believe this will work better than the native Plex download. Is this the case?
How does this behave differently than the native Plex download feature?
I have added rudimentary shared support. Let me know if it works for you.
If you mean the web client download feature, it simply allows you to download the actual file, one at a time. With this you can sync all your content seamlessly and fully automated both transcoded and non-transcoded. This will automatically sync new content instead of you having to do it manually. Conceptually, it works quite similarly to how the Plex Mobile Sync works on ios/android/windows.
Hey there, the latest version of plex downloader seems to be great so far.
What i'm wondering is, is this truely re-encoded or is it just a repackage on the fly?
I'm hoping the plex downloader copies will become a much more compatible version, however I was maybe expecting a full re-encode.
The test clients i've used to view the transcoded copy seem reasonably happy to direct play,although the android plex app seems to get confused and claims transcode on video while playing but the server thinks direct play.
I suppose my question is, what should I be expecting from the plex downloader copies? Should they be consistent formats etc?
Thanks again, going to test out the movie sync with the characters which had been causing me big problems in earlier versions.
cheers.
flipdee
I have made it so you can edit a lot of what the transcode process does through the ini. I guess it is up to the end-user what they actually would like to use it to accomplish. For myself, I just use it to downsize my large rips to a manageable size on my laptop. The PMS API is largely undocumented which makes this all the more complicated. If you go into your plexdl.py file find the mvTranscoder|tvTranscoder functions and edit the directStream=1 to directstream=0 in both the transcoding links, it should transcode in theory. If you try this and it works as planned I can change it in the actual program so it works like that going forward. Let me know how the special characters goes :).
Hi Ilyaz,
I was wondering, how do you begin to make this project is it all made by yourself from scratch with XML and python ? Have you use some Plex API ?
I was wondering because i was reading your work to try to make some improvement and i'am reading also the plex api documentation but for now i don't see how do you begin (with or without the api documentation).
Thanks for your work.
Sorry for my english :-P
The Plex Media Server has a built in API through which you can access media info for your libraries. A lot of it is undocumented and requires some debugging of the web client to understand (especially in relation to transcoding). To get to this you simply go to ip:32400 instead of ip:32400/web. Essentially wherever it says "key" it simply means to add that to the base url to get that information. It's fairly easy to parse through once you poke around a bit. For instance if you go to 127.0.0.1:32400/library/sections/1/all you will get an xml file of all of the content in that section, however if you go to 127.0.0.1:32400/library/sections/1/recentlyAdded you get the recently added content from that section. Good luck!
Thanks for your response, i was wondering also do you thinks it's possible to create a "versionning system" to know if file with the same name are different or not because i see in your code your creating a path to the folder where the file have to be and you test if is a file already exist.
And i'am trying to implement a new functionality to see if the two files are exactely the same (i'am looking to md5 checksum for now but i'am afraid it will be to slow).
One problem that i have, are the German letters ö ä ü. What do i need to change the get it correct during the File sync. and for Displaying on Webpage?
Thanks for your response, i was wondering also do you thinks it's possible to create a "versionning system" to know if file with the same name are different or not because i see in your code your creating a path to the folder where the file have to be and you test if is a file already exist.
And i'am trying to implement a new functionality to see if the two files are exactely the same (i'am looking to md5 checksum for now but i'am afraid it will be to slow).
Have some idea for me to try ?
Thanks again
Have a nice day
I'm not really sure, however maybe just simply comparing the file size with the "size" field on the API could be used to check for changes. I'll check more into this when I get a chance.
Hello
First of all, great python tool.
One problem that i have, are the German letters ö ä ü. What do i need to change the get it correct during the File sync. and for Displaying on Webpage?
Kind Regards
Yeah, unfortunately I used regex to remove some special characters as it was causing issues with adding them via the WebUI, however I hope to have this fixed in the next release. You can use an older release to get your special characters fix immediately.
Can you please add the downloading of subtitles?
I will try to implement this into the next release, however I'm not sure if the subtitles are accessible via the API so I might have to use an external source (opensubtitles,subsdb) to pull subtitles for files synced.
Is there anyway to add a time of day run setting? like only check for new content from hour xx to hour xx. I dont really want this running during peak streaming usage time frames (7pm to 1am) if i can have it it mostly run/sync overnight when bandwidth is available
Is there any way of limiting the times it syncs (i.e. between 9pm & 9am).
Any way to stop it renaming files? I'd like to keep them in the same way (i.e. ///s01e01 - ....
If anyone is interested in the solution, I changed the code in the transcode link to indicate a chromecast device rather than a chrome web device and the ACC streams remained intact so that they come in with the 5.1 sound.
I still use it. I would like to see more depth in the server-to-server sync
I use it now to sync my mobile (road trip) server for the family, and the transcoding external server. However, I would like to see an easier setup for connecting to shared libraries.
Is there any way to transcode/convert the synced files to another format?
I’d like to sync my kids movies from 1080 mkv’s to SD mp4’s for the travel server. (Rpi2 server)
Read… and read again… and again… but to no success…
In my users.ini I have:
[movietranscode]
active = enable
height = 320
width = 576
maxbitrate = 550
videoquality = 40
But I cannot see how to transcode it to MP4.
If I sync an mkv-file with the settings above, I will still get an mkv-file although smaller.
Guys, sorry if this is obvious, but I am a plex newbee. What all do I need to do on the master PMS vs the secondary PMS that is syncing from the master. It looks like all the code gets installed on themaster, but I am unclear how to set up the slave to sync, or maybe I have that backwards.
The readme doesn’t explicitly say anything about the relationship between the master and the slave…
Hi,
I downloaded this and got it working. I do have a question. Is it possible to set this up to allow you to download from a shared library? I have a friend who has a plex server in a co-location data center who shared his library with me. I would like to be able to download some of his shared library (with his permission of course).
Interested in performing the same function, just the interface for a very large library is very difficult using this current approach
Have you though of using something like a playlist to drive the sync management ? On one server a user can add to the playlist items to sync, the script can pick up the item then to copy to the other server. Can even then perhaps eliminate from the playlist if the user wanted to (not sure would even matter)
On the server the file was synced to, the user would manage file normally. To me the largest desire is capability to copy files to remote machine. Such a needed feature that amazes me still so hard to manage