Jump to content

Nytohan

Member
  • Posts

    26
  • Joined

  • Last visited

Awards

This user doesn't have any awards

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Nope, Canada. I didn't realize it was available on amazon, will have to look there. That shipping is awwwwwful. Edit: NNNNNNNOPE. All they have there is Cold Brew + Milk, and at $5.50/can vs. $4.38/can with that LTT discount. (Or $1/can if they mess up your order and then decide to make it up to you and then some.)
  2. So a few weeks back I ordered some Madrinas for the first time. (60% off thanks to LTT was too good to pass up.) I ordered two sweet samplers, but only received one. Their customer support was quick to respond and get my second batch sent out immediately, but they seem to have slightly over-corrected: That's some good PR, and possibly a new addiction in the making.
  3. Data that I couldn't bear to lose is backed up, of course. I just don't feel like having a full backup of my plex library is necessary. Being able to recover from a drive or two dying is more than enough for that, as it's essentially there just to offset the hassle of having to reacquire several terabytes of (semi)-easily replaceable data. I have done some reading on these, but from what I understand if you want parity mode storage spaces, when it comes to expansion you have to install multiples of your original array. I could be wrong, but it seemed like if I start the pool with 4 drives, if I needed to expand I would have to add 4 more drives all at once. Am I wrong here?
  4. I want to believe that Raid-F is fine, but the paranoia in me is saying go with tRaid. It may not be justified but that's where my gut's going, so I'll probably go with the trial of that when my hardware arrives. That's some good info, thanks for your help!
  5. That does look like a nice option. Not sure whether to go T-Raid or Raid-F though. I have seen people saying that Raid-F makes the most sense for a media library, but how does it really work for rebuilding? What's the storage loss to parity? If I go with a t-Raid, do my drives need to be the same size? Which FlexRaid setup did you use?
  6. Yeah.. that drive pool concept isn't awful, but with a 50% storage loss, it's a hard pill to swallow.
  7. Hi everyone, I'm looking into building a new server to host the things that keep my main PC on 24/7. Mainly plex, a webserver and some game servers hosted for friends. My plex library is really the biggest hurdle, as currently I just split it across a few hard drives in my gaming rig, and it is entirely susceptible to drive failure. If possible, I would like to find a way to have some fault-tolerance (with the ability to recover from a failed drive by replacing the drive) in a way that I can continue to expand the storage, thus negating the need to go out and spend $2000 on hard drives all at once to build a raid in a vain effort to future proof my storage capacity while providing fault tolerance. Is there anything (ideally on Windows/Windows server, but linux would be fine too) that would do what I'm looking for? Also, yes, I know, backups. I'm not having full backups for an 8TB+ media library. Thanks in advance for any insights you might have!
  8. Still won't post? Pull the board out, make sure it's not shorting against the case, test it on your mobo box. Also try clearing cmos.
  9. Unlikely. As long as you think have decent coverage on the CPU (don't check) you're probably fine. Luke had a workshop video testing different application methods, and it turns out as long as there's enough, and it doesn't drip onto the board, you're fine.
  10. That sounds plausible, and we should probably attribute this to stupidity over malice, but it is at a minimum a huge oversight. It gives casual observers the idea that a minor difference in performance which is within the margin of error is in fact a noteworthy gap that should seriously impact your buying decision. Also, looks like it's been fixed!
  11. http://www.techradar.com/reviews/amd-ryzen-threadripper-1950x The graphs for FPS measurements in TechRadar's review are garbage. A few of the images used in their review are fine, (Tomb raider@1440, Total war@1080) But then there's Total War at 2160, where the two CPUs were 1 fps apart: This is extremely misleading, seems to imply that the i9-7900x performs ~3x better than the threadripper, when in fact this entire graph exists within what LMG would consider a margin of error. More graphs below. UPDATE: TechRadar has updated their performance graphs to all start at 0.
  12. using Microsoft.Win32; using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Security.Principal; namespace PlayRandom { class Program { static void Main(string[] args) { List<string> allowedTypes = new List<string>(new string[] { ".mkv", ".avi", ".mp4", ".mpg" }); try { string sDir; if (args.Length > 0) sDir = args[0]; else { CheckRegistryEntry(String.Empty); throw new Exception("No arguments passed."); } CheckRegistryEntry(sDir); if (System.IO.Directory.Exists(sDir)) { bool canPlayFile = false; string fileToPlay = ""; do { fileToPlay = returnPlayable(sDir); foreach (string allowedType in allowedTypes) { if (fileToPlay.ToLower().EndsWith(allowedType)) { canPlayFile = true; break; } } } while (!canPlayFile); System.Diagnostics.Process.Start(fileToPlay); } else throw new Exception(String.Format("{0} is not a valid directory.", sDir)); } catch (Exception AwwCrap) { System.Windows.Forms.MessageBox.Show(String.Format("Exception: {0}", AwwCrap.Message)); } } public static void CheckRegistryEntry(string args) { const string DesiredKeyName = "PlayRandomAH"; const string ctxString = "Play Random File"; string ExecutablePath = System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase.Substring(8).Replace('/', '\\'); string ctxCommand = String.Format("\"{0}\" \"%1\"", ExecutablePath); RegistryKey rk = Registry.ClassesRoot.OpenSubKey("Directory\\shell"); String[] subkeys = rk.GetSubKeyNames(); bool ctxIsOkay = false; foreach (string sk in subkeys) { if (sk == DesiredKeyName) { RegistryKey MyKey = rk.OpenSubKey(sk); if (MyKey.GetValue("").ToString() == ctxString) { foreach (string ssk in MyKey.GetSubKeyNames()) { if (ssk == "command") { MyKey = MyKey.OpenSubKey("command"); string currctxCommand = MyKey.GetValue("").ToString(); if (currctxCommand.ToLower() == ctxCommand.ToLower()) ctxIsOkay = true; } } } } } if (ctxIsOkay == false) { if (IsAdministrator()) { rk = Registry.ClassesRoot.OpenSubKey("Directory\\shell", true); rk.DeleteSubKeyTree(DesiredKeyName, false); rk.CreateSubKey(DesiredKeyName); rk.OpenSubKey(DesiredKeyName, true).SetValue("", ctxString); rk.OpenSubKey(DesiredKeyName, true).CreateSubKey("command"); rk.OpenSubKey(DesiredKeyName, true).OpenSubKey("command", true).SetValue("", String.Format("\"{0}\" \"%1\"", ExecutablePath)); } else GetAdmin(args, ExecutablePath); } } static string returnPlayable(string path) { List<string> dirs = new List<string>(Directory.EnumerateDirectories(path)); List<string> files = new List<string>(Directory.EnumerateFiles(path)); return (dirs.Count > 0) ? returnPlayable(dirs.PickRandom()) : ((files.Count > 0) ? files.PickRandom() : String.Empty); } public static bool IsAdministrator() { var identity = WindowsIdentity.GetCurrent(); var principal = new WindowsPrincipal(identity); return principal.IsInRole(WindowsBuiltInRole.Administrator); } public static void GetAdmin(string args, string filename) { Process elevate = new Process(); elevate.StartInfo.UseShellExecute = true; elevate.StartInfo.Verb = "runas"; elevate.StartInfo.Arguments = args; elevate.StartInfo.FileName = filename; elevate.Start(); Environment.Exit(0); } } public static class EnumerableExtension { public static T PickRandom<T>(this IEnumerable<T> source) { return source.PickRandom(1).Single(); } public static IEnumerable<T> PickRandom<T>(this IEnumerable<T> source, int count) { return source.Shuffle().Take(count); } public static IEnumerable<T> Shuffle<T>(this IEnumerable<T> source) { return source.OrderBy(x => Guid.NewGuid()); } } } Opens a random file of a type specified on line 12 (I have mine set to video formats) 99 lines with a lot of trimming, but nothing too egregious. There is one nested ternary return statement in line 77 that is less than beautiful. Usage: Put it somewhere you want to keep it, run it from there. Give it admin rights to create the context menu item in the registry. Right click a folder with some video files, "Play Random File", and it will open it your default media player.
  13. Those are really aimed more at developers to test apps in development across different form factors. As far as end-users intending to install apps to use this is not a great solution.
  14. Last time I tried it, Bluestacks worked pretty well: http://www.bluestacks.com/
×