Google Drive vs. ACD for Plex

I’ve fixed most of my problems but it wasn’t cheap:

  • Dedicated server closer to home / Amazon US servers
  • Faster bandwidth
  • dedicated server with SSD drives which really helps the transcoding.

Here are the most important things to remember when setting up a cloud Plex server and using Amazon or Google

  1. Single file download speed from Amazon to your Plex server
  2. Speed at which the Plex transcoder can write to disk (this can actually be a big problem) which is why I recommend SSD
  3. Single file download from your Plex server to your Plex clients.

I’ve had a few dedicated boxes from SoYouStart and Hetzner and here’s how they stack up

  1. SoYouStart: satisfied #1 and #3 but not #2 so I would get a lot of buffering. This one had no SSD

  2. Hetzner: satisfied #2 only. This had SSD but while I could max a 1 gbit connection to a Amazon, I could only do it using many concurrent transfers. This doesn’t help with streaming. Also the server was in germany and my clients in canada so #3 wasn’t satisfied either.

I’m now using an OVH server for about $95USD permmonth. It’s expensive but meets all criteria.

I’ve been running it for 8 days and my family that stream regular have said they haven’t gotten any buffering since I switched.

Meeting these criteria is critical to a great experience. Once I get back from my holiday I’ll post a guide on how to troubleshoot Plex performance when using ACD or Gdrive. Above are basically the Coles notes.

2 Likes

I’ve heard ssdnodes works good for what you are doing and is a lot cheaper.

I am trying to avoid transcoding as much as possible, and most of the time I am not transcoding. Using Apple TV Plex client at “original” quality I can avoid transcoding 99% of the time, but it is a lot more demanding.

What bugs me is it worked fantastically well for a few weeks when I first set it up. Starting a movie/show was like 5 seconds, and no buffering at all.

Have you looked at PlexPy while playing to see if it gives you a hint as to what’s going on?

For example, it will tell you if it’s transcoding (and the progress) or if it’s direct play / direct steam.

Have you double checked your single file transfer from Amazon to your Plex server and your Plex server to your house?

Have you tested on other devices? I will often test on my cellphone using very fast LTE as I want to ensure I’m using a different network than my home ISP

Some of these things may give you a hint.

Also running rclone with the verbose option and looking at the logs, as well as enabling Plex debug log can provide a lot of insight.

Something else is to look at your CPU iowait while playing something. Does it skyrocket? Could point to an IO issue.

Yes as you said it worked before bit that doesn’t mean it’s an Amazon or Rclone issue. Something else could have crept into your setup.

I have looked at PlexPy, when it is loading it won’t show anything until it is playing. When I have stuttering, it will say “buffering”. But the really slow loads don’t show up as it won’t show in PlexPy until it actually starts playing.

I’ve looked at rclone logs, and I see some some pacer: Rate Limited and sleep for a few hundred miliseconds, but that wouldn’t explain why it would take 1-3 minutes to start a stream.

When it finally gets playing, most of the time it is flawless.

I get 1Mbps upload to Amazon and download typically 15-25Mb/s. Downloading a 2hr 10m movie file takes less than 20 minutes. So there should be no issues keeping up (which it typically has no problems, it’s just the progressively slower and slower start times).

I haven’t tried plex debug, I keep that off.

How I solved it was to point plex transcoder folder to /dev/shm (50% of available server ram) so all trascoding files are stored in ram.

p.s. I was monitoring usage of /dev/shm and with 17 concurrent streams it got to 12GB but never more then that.

This sounds awesome… as my hetzner instance is plenty of RAM i think i should test something similar.
Could you explain in more detail how you did it??

Thanks!

Plex web interface -< Settings -> Transcoder

Thats it as the /dev/shm is already part of linux os so you dont need to do anything.

Just in case if you are not sure you can always check :slight_smile:

p.s. Size will be 50% of your ram.

3 Likes

How long does it take for you to start a movie/show from ACD?

Check here just made another test: Best mount settings for streaming ( Plex )

I got Plex working with Google Drive and the performance is amazing. I can get a 20Mbps movie loading with DirectPlay in 3sec. This is equal to if the file is located on the local hard drive. I use node-gdrive-fuse to mount the encrypted content, and then rclone to unencrypt the mount. Never got banned even with a full library scan. I think here in the US Google Drive speed outperform ACD speed hands down.

@snoopydude2002

How big is your library? With mine (32TB), node-gdrive-fuse would not be able to pull all files and throw an error. And seeing as the product isn’t developed anymore I dropped it.

You aren’t seeing any weird behaviour using this?

Mine is about 22TB right now. The mount does drop, but maybe every 4-5 days. I’ve also tried google-drive-ocamlfuse but the performance isn’t as good. And google-drive-ocamlfuse crashes more often, probably because all the caching is done in memory. I prefer node-gdrive-fuse it caches on the hard disk.

@MartinBowling @scoopydude2002

How do you guys use node-gdrive-fuse?

I can’t get it to work, after I run it, it will stay on mounting to the folder and won’t do anything else.

it takes a while to actually mount, seems like it increasingly takes longer and longer, might also be that there is a bug where it’s parsing the change log as @scoopydude2002 posted on the issues page, I haven’t actually had it up and running since a couple weeks ago because I too was getting stuck on it trying to get changes

@MartinBowling
Thanks, so what you using right now with Google ?

Cause I tried most of them and they pretty much keep failing at some point.

Ocamlfuse = 1-2 drops and sometimes even you can see the files in the finder (I use Mac) it’s not working in Plex
rclone = failed a lot of time when I was scanning the library.

I Use node-gdrive-fuse and its running great for me.

I mount it as read only. I use rclone copy/move to add new files. Every once in a while it goes down, but I have a cron job that runs every minute that detects if it is down and remounts the drive. I am not sure what you mean by taking a long time to mount. Mine takes not more than a second. I have a 8 TB local drive that I use for writes which I combine with unionfs-fuse. So as my local drive fills up, I then copy and move files to gdrive. This setup has been the most stable for me and I haven’t had any bans with node-gdrive-fuse.

Can you use node-gdrive-fuse with rclone encrypted gdrive?

Mine will stuck here and doing nothing.

Danials-iMac:src danial$ node fs.es6.js
2017-3-6T11:37::26 - info: loading upload tree
2017-3-6T11:37::26 - info: Access Token Set
2017-3-6T11:37::26 - info: Loading folder structure
2017-3-6T11:37::26 - info: Opened a connection to the database
2017-3-6T11:37::26 - info: attempting to start f4js
2017-3-6T11:37::27 - error: unmount error: killed=false, code=1, signal=null, cmd=diskutil umount force ./mtng2
2017-3-6T11:37::27 - info: mount point: ./mtng2

@fbrassin

Yes. You mount node-gdrive-fuse into a folder, let’s say ~/gd-encrypted

And then you create an rclone “local” remote and point it to the encrypted directory where you’ve mounted node-gdrive-fuse.

Maybe your process is stuck?

ps aux | grep fs.es6.js

Make sure node isn’t already running. Also make sure that folder isn’t already mounted in some way.

fusermount -uz ./mtng2

Looks like you are on a mac…so you might have to use umount instead of fusermount.