My Home Theatre

It’s been a hiatus… I’ve been a bit busy lately, it’s summer time and all… I’ve been enjoying the beautiful weather with my family but I feel like I’m due, so here we go!

Home Theatre! This topic interest me big time, ever since I bought my “new” house 5 years ago I had been planning to do something nice in terms of an entertainment space. The space I had in my mind was a bit different then your typical audio/videophile types dream of but it’s what I dream’t of at this stage in my life.

I will be the first to admit that this post is late to the game, and I anticipate to upgrade my projector and receiver to native 4k within the next 6-8 months. I have my eye on you Optoma UHD60!

Coming from my previous house (a shoebox) I had a big room to actually call my mancave, a 25’x16′ room. The picture below is pretty unflattering… and it only shows the room from one angle, but this is all I could find for the time being… This was a couple days after we moved in. In hindsight I should’ve taken more before and after photos for this project.

mancave_before-1

Here is the original conceptual design of what I envisioned the room to actually become.

mancave-schematic

First step was to build the A/V closet and shelving, the closet did not exist originally so I had to rip out some drywall and attach into the existing framing. Here is a before picture of where I put the closet in.

AVcloset-before

Here are some pictures of the AV closet build out. The shelf design I found on another site, if I can find it again I will give them a kudos link, man is it a solid design – homemade shelf that can hold a ton of weight and gear. All of the supplies for the shelf I purchased at Canadian Tire and Rona. All of the cabling, connectors, wall plates and in ceiling speakers I purchased through Monoprice.

 

Here are pictures of what it looks like today, don’t mind the mess I have a few kids.

Projector Mount

If you look at the projector mount picture below you’re probably saying wow that’s a crazy mount is this guy a nutcase? Actually it’s pretty much mandatory in my mind to design something like this if the projector is going to be installed in a basement like setting.

When I originally mounted the projector I was truly a newbie… I affixed it directly on the floor joists, what a mistake. The feedback was vicious and the projector was bouncing like no tomorrow… and when it started to bounce it really didn’t recover quickly since there was nothing to absorb the movement that reverberated off the joists.

This is something I came up with through trial and error, this works for me, it doesn’t eliminate movement entirely, if my kids are bouncing off the walls upstairs it will shake, but it’s absorbed quickly by this design and I can rest well knowing that my investment is safe. To date I have almost 5000 lamp hours using this rig and the projector and lamp still lives on.

I used a large piece of MDF that spans three joists, I tapped into the joists using 2 1/2″ wood screws. From there I lined up where the projector was going to be mounted and penciled in four pilot holes where the bolts were going to be installed. These four bolts affix the actual mount to the MDF base, they are 3/8″ in width in my application, the bolts are fairly long I believe around 3 1/2″. I used several washers, rubber grommets and springs as you can see from the photo, these items are doing a lot of the hard work to minimize any vibration and impact.

projector-mount

Projector

At the end of 2012 I was on the hunt for the right projector for me. I didn’t want to spend a ton but I wanted a projector that was a good bang for the buck, but mandatory was good input lag and 3D. I stumbled across the BenQ W1070 Home Theatre DLP Projector. It’s a great unit, I’ve been using it now for almost 5 years, so it’s done really, really well… no issues whatsoever.benq_w1070

 

Screen

I went the Do-It-Yourself route. After abundant research I ended up using the following for the screen paint:

Sherwin Williams ProClassic Smooth Enamel Satin Finish Extra White – 6260 UNIQUE GRAY. I don’t believe Sherwin Williams carries this formulation anymore.

Down the line I believe I will switch to an actual screen for my next projector install. Don’t get me wrong the paint is great and a money saver, but I found that it cannot cover imperfections in your actual drywall. If you look close enough you can pick up on these subtle things while the unit is on.

I used a somewhat dark color for the rest of the wall around the screen. Sherwin Williams Classic 99 Satin Finish Extra White – 6549 ASH VIOLET.

The screen is approximately 110″ measured diagonally.

Screen Frame

I used 2 1/2″ MDF trim I mitered the corners at 45 degrees and installed L shaped hinges on the back side. I primed and painted with flat black paint and used brad nailer to affix it to the wall.

Speakers

I opted for a 7.1 configuration, the front and center speakers I got a sweet deal on from Newegg, they were on clearance dirt cheap… I could not pass it up. I picked the JBL Studio 1 Series Studio 190 Front and Center speakers. For the subwoofer I went with the Klipsch KW-100, for the sides I went with Klipsch RS-62s. For the in ceiling I went with Monoprice 6-1/2 Inches Kevlar 2-Way In-Ceiling Speakers.

The in-ceiling speakers I cut a plywood template to hold the speaker since I have a drop ceiling with soft fiberglass tiles. The plywood template fits into the 2’x2′ grid and the grid take the weight of the speaker and not the tile.

For the Klipsch surround speakers, I mounted the speaker to a stud on opposing walls using a single screw.

I am not an audiophile but they sound good to me, most would recommend not mixing and matching, but really for me I was going with the best value/deal at the time as speakers can be really expensive for something better then bottom of the barrel.

AV Receiver

For the receiver I went with the Onkyo TX-NR616, I had never purchased an Onkyo before but I can say I have been really happy with it.

The receiver can not fully power my front speakers in it’s current 7.1 configuration, if I used 5.1 it can power them fully, but the sound is still good, I don’t pump it too often… just something to keep in mind if you are purchasing an AV unit.

The one issue I have had which seems to be some kind of glitch where HDMI switching stops working after the projector is turned off, it doesn’t happen all the time… it is a random thing. Simply recycling power on the receiver corrects the issue.

IR Repeater

For extending my IR remotes (satellite receiver, AV receiver, etc…) I went the cheap route. I picked up a USB powered IR repeater from Amazon – Neoteck IR Repeater Infrared Remote 1 Receiver 4 Emitters Control Kit. I just plugged it into my AV receiver’s USB port to get power, and I installed the IR receiver discreetly along the edge of my drop ceiling. It’s cheap but it does the job and I can close my cabinet if need be and not have to fight with pointing remotes directly at the device.

Advertisements

Home Media – Part 4 – OSMC/KODI/XBMC

This is part 4 of a series of write ups called Home Media.

Part 1 – The NAS build

Part 2 – The Setup

Part 3 – The Rip

Now that you have a whole infrastructure setup for streaming in your house, what do you do?

First thing is first, you will need some sort of hardware. Be it an old laptop, a Odroid-C2 box, an Android Box or a Raspberry Pi3. Then you will be creating two xml files called Sources.xml and/or AdvancedSettings.xml. These two files are responsible for media sources and database connections respectively. With Advancedsettings in the mix you can also add an SQL instance to your setup.

The benefit to the SQL database is that if you have multiple devices in your home, you can pause your content in one room and resume it in another. Your library info is stored in one place, the databse, and can be easily backed up and restored using software such as HeidiSQL. Library updates can be performed using headless installations of KODI and are picked up by all other devices on the network connected to the DB.

Easiest way to run a headless installation of KODI is to use the LinuxServer.io docker container which they have created and is available from here https://github.com/linuxserver/docker-kodi-headless. This works well if you have a server at home. If you are running a Pi or Odroid device with KODI on it this might not be necessary, since these are always on low power devices. Potentially you can send all update requests to these boxes.

For Laptop and Android Boxes go to their respective app stores and install KODI. On Linux you have to install KODI manually. Head over to Kodi.TV and they have all the packages you need over there. For further installation instructions head over to the KODI wiki.

In this example I will be working with v17.x or K, code named Krypton. For the Odroid-C2 and RaspberryPi I suggest heading over to LibreELEC and grabbing the installation source from there. The equivalent LibreELEC version of KODI version 17 is 8.x. For the Odroid and RPi you will need to image the storage device, SD card or eMMC storage. On Windows use the Rufus software. Alternatively LibreELEC has built their own installation tool to install the OS on a storage device. For further installation instruction for LE suing their tool go to their wiki site. An alternative to LibreELEC is OpenELEC, this has builds for devices that Libre does not support.

Note that when you boot in to KODI for the first time, specifically LibreELEC, you should enable SAMBA and SSH. SAMBA will be useful for copying the xml files to your KODI box later on.

Installation:

Once you have installed Rufus and plugged your SD/eMMC card to your computer start Rufus and locate the drive letter that is the storage device of your choosing.

In Rufus click the drop down list and select DD Image, then to the right of it click the image icon.

Rufus will prompt for a file with a Open selection window. Select the appropriate image and click Open.

It will warn you about erasing all the data on the storage device, accept the prompt and let Rufus run through it’s thing.

Once complete close Rufus and check that your file structure of the SD card look something like the above. The storage device is now ready to be plugged into your hardware and you can proceed to boot it.

Database:

Install the database of your choice. I use MariaDB, it’s a free open source SQL software. It was forked after MySQL was bought out by Oracle. I run this in a docker on my home server. However you like to proceed pick the installation of your choice.

The docker container is available on the Docker hub and can be found here: https://hub.docker.com/_/mariadb/

To run the docker with persistent storage run the following docker commands.

First you need to pull the installation.

docker pull mariadb:latest

An alternative to the latest tag you can use the versions available on the site, 5, 10… etc. Then you will need to run the docker using the docker run command. It will look something like the follwing.

docker run -d –restart=always –net=bridge –name mariadb -v /my/own/datadir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=SomePassword -e MYSQL_USER=kodi -e MYSQL_PASSWORD=kodi -p 3306:3306 mariadb:latest

For Unraid 6 you can use a Docker MariaDB template available here:

https://github.com/Exist2Resist/docker-templates/tree/master/exist2resist

There are 3 key commands you need to execute on the database after you have installed it. You can find the database installation instructions for various OS versions on the KODI wiki.

Make sure after you setup a sa or root user on the database you write down the password. After this log into the database and run the following 3 commands.

  1. Type in: CREATE USER 'kodi' IDENTIFIED BY 'kodi'; and press return
  2. Type in: GRANT ALL ON *.* TO 'kodi'; and press return
  3. Type in: flush privileges; and press return

These commands create a user with the name kodi and password kodi. This will be used in your KODI installations via the advancedsettings.xml file to connect to the database.

sources.xml:

The sources file is used to connect KODI to your network shares and sources for your media and music. A sources file has the <sources></sources> tags at the beginning and end of the file and should look something like the following…

smb: stands for samba, your other option would be nfs which is the file sharing protocol in linux. Also if you notice the above shares are accessible to anyone on the local network. If you want to password protect these shares go ahead but you will need to change the <path>, using the example above to smb://username:password@Tower/Music/.

The sections (<music>), name (<name>) and path(<path>) are all mandatory in the example above. Every other field is optional.

Note that if you are using a database to store the media information you do not need the sources.xml file on all your instances of Kodi. You will only need both files on the instance which updates the library and database. All other instances only need to connect to the database. The database contains a files table which has an idPath column that stores the path to the files.

For further detail on the sources xml you can head over to the KODI wiki, http://kodi.wiki/view/Sources.xml

Note that with the database in the mix you should enable the option to wait for network before starting KODI. This is only available in OpenELEC and LibreELEC builds of KODI. I have not been able to find this in the vanilla KODI, but that should not matter as more than likely these installations will usually run on a box that requires manual KODI start anyways.

advancedsettings.xml:

The advanced settings file has the <advancedsettings></advancedsettings> tags at the beginning and end of the file and below is an example of what the advancedsettings.xml should look like. This file is very fickle and it has a lot of options it can take. Use the example below as a starting point.

<videodatabase> and <musicdatabase> point to an sql instance via the IP address username and password. Default port for sql is always 3306.

Also if you want to pause and resume your playback at different locations in your home, include the <importwatchedstate> and <importresumepoint> tags and set them to true under the <videolibrary> tag. Under the same tag <backgroundupdate> updates the library without any popups of notifications. <recentlyaddeditems> sets the amount of new items that will be visible under the TV Shows and Movies sections. Default I believe is 25, you can set this to whatever.

In version 17+ of KODI the cache tag is pretty important. If you are experiencing the odd buffering interruption while watching content from your file server set this option and have all content buffer.

In previous versions of KODI this option was set under the network tag. Sections 2.8.4 and 2.8.3 of the Advancedsettings.xml wiki, respectively.

Cache buffers the file in memory instead of the local storage. If you notice a lot of stutter on your streams, especially with version 17 if you add this sections the performance should greatly improve. Mind you if you have terrible internet and you are using external or http video sources there are no guarantees. If want to do this you will need to do some math first, use this bit calculator if you’d like, don’t trust google they mess the calculation and conversion up badly. But more on that later.

The cache section looks something like the following.

<cache>
<buffermode>1</buffermode>
<memorysize>477184000</memorysize>
<readfactor>10</readfactor>
</cache>

Buffer mode with value of 1 will cache any content streamed in KODI. Local or remote it doesn’t matter.

Memory size is where you will need to do some converting and calculating. So the max memory size depends on your system and this value can not exceed a third of your max free memory. So if your device is running while playing content with 300 MB of free memory your max memory size should be 100MB or 104857600 bytes. If you don’t adhere to the 1:3 ratio rule, there is a high probability that your box will crash.

Read factor is the speed at which the content gets buffered at or read into memory at. If a files average bit rate is 6MB/s, with a read factor of 10 the file will be read at 60MB/s into the cache buffer. Average bit rate multiplied by the read factor. Take your network bandwidth into consideration when calculating this. If not specified the default is 4.

For further details on the advancedsettings xml you can head over to the KODI wiki http://kodi.wiki/view/Advancedsettings.xml

File placement:

If you enabled SAMBA and SSH on your KODI device you can navigate to the Userdata share of the device and place both xml files there. Even though you don’t need both it is recommended that you do. The network name or IP will be required for you to navigate to the shared folder. You should have enabled SAMBA when you set up your KODI box. During said setup you gave the installation a name, if you kept it default navigating to \\LIBREELEC via file explorer should bring up the box’s shares.

Open up the Userdata folder and you should see some folders and 4 xml files.

Place both the XML files in here.

Alternatively you can SSH into your box using putty or similar software. Default user name is root and the password is libreelec.

Once in there you can use either vi or nano to create both the files and paste the contents. The location of where the file should be stored are as follows.

/storage/.kodi/userdata/

You can create the files manually by performing the following commands in SSH.

nano advancedsettings.xml

Then paste the contents of the file into the window and click ctrl + x, this will prompt you if you want to save the file, type in y and hit enter to confirm the file name.

Repeat the same for the sources file.

A very important step, you will need to set KODI to wait for the network when it boots if you are using a db connection. If you do not do this your library will not populate.

In your add-ons select the LibreELEC Configuration add on.

Then set the Wait for network… option and set it to 10 second. There has not been an instance where 10 seconds has not been enough for me.

Your KODI box should now be ready to go, reboot and enjoy.

QLED vs OLED, not the same tech.

Update: OLED is not without it’s issues. One issue is reverse vignette, this is where the screen appears darker on the inside than the outside. Vignette is an effect that you see in some photos and even in movies, inside is brighter than the outside. Sometimes done purposefully, other times it’s due to the use of a wide angle lens, it bends the light in such a manner that it creates the effect. You can remove reverse vignette on an OLED panel by adjusting the OLED light, contrast, and brightness of the screen. This is not noticeable in content however, and you really have to look for it in order to see it.

Vignette effect.

/Update.

I just saw what Samsung is charging for their new QLED TV sets, and are they insane? They are marketing their new television line as some form of LED technology, then pricing it similar to what LG is charging for their OLED sets. Well let me tell you, one is better than the other. I’m writing this article in the hopes that you won’t get fooled in to buying one of those over priced LCD screens from Samsung.

There are two types of OLED (Organic Light Emitting Diode) technologies. W-OLED and RGB-OLED. Samsung bet all it’s money and research on RGB OLED, and lost. They have since dropped out of the OLED panel race. Due to RGB-OLED high price and degradation of the blue OLED pixel this technology proved to be too expensive to manufacture for large format displays. LG opted for the W-OLED or White Oled technology, which is a white LED with RGB filters. LG won, this is the perfect OLED technology for large format displays and soon other manufacturers will follow LG in their footsteps.

After dropping OLED panels as a display technology Samsung released new branding for their LCD panels, they called this QLED or Quantum Dot Light Emitting Diode. The description of this technology is somewhat based on a lie or false promise. I believe this branding is meant to fool the consumer into believing they are buying something that the technology is not. There are no Light emitting diodes or LEDs inside the QLED panels. QLED is a passive LCD screen with a quantum dot colour filter and LED edge lighting. The only difference between QLED and an LCD/LED TVs (LED is an LCD panel with LED edge lighting) are the quantum dot filters, everything else is business as usual.

QLED sounds like OLED, but OLED it is not. While the W-OLED and QLED technologies on paper may look and sound the same, the name is where this similarity ends. I believe that Samsung QLED technology is inferior to LGs OLED and Samsung will lose a lot of market share due to it’s price and the underlying technology of using LCD panels.

OLED is an emitting technology, each pixel is capable of producing it’s own light. Benefits to this are that OLED panels have infinite contrast ratios as each pixel can be individually turned off and on. Blacks are true black, similar to what plasma and crt televisions were capable of offering in the past. OLED is a natural replacement for Plasma Television owners and Home Theater enthusiasts. OLED screens can be viewed in a bright room, even when you have sunlight hitting the screen.

QLED on the other hand is a LCD panel with a passive colour filter(quantum dot layer) and an edge LED array which is used as a back light for the screen. If sunlight hits your screen it renders the image unwatchable. QLED sets might be held to a higher production standard than normal LCD panels however they still come with issues such as banding, light bleed, uniformity concerns, and motion blur. Even with local dimming that QLED panels possess, they have a lot of light bleed. In bright rooms, unlike OLED, QLED screens wash out and become unwatchable. In dark rooms the light bleed from the back light detracts from the viewing experience.

OLED sets have virtually no motion blur, no light bleed, no banding, near perfect uniformity, and are perfect for viewing at an angle with virtually no colour shift. I say virtually because sometimes the light refraction coating on top of the screen can make whites appear with a slight pink/purple tint. This happens primarily when viewing the screen at an angle. The tint shift effect of the refraction coating is not very significant, and even with this shortcoming of the LG OLED screens they still look much better than any high end LCD panel I have laid eyes on. Have a look at the picture it demonstrates the coating tint shit effect. Note the left side of the screen is slightly warmer than the right side.

Yes quantum dots much like OLED do produce more saturated colours. But at the price Samsung wants to charge for a set you are better off picking up an OLED set from 2016. The 2016 LG B6 series can be picked up for around $ 2500 USD, and I guarantee you the picture quality is better than anything Samsung can offer for twice the price in their QLED lineup. Sony and others are also getting into the OLED Television game and some more sets are on the way to market. OLED prices are being driven down and they are becoming more affordable. QLED might soon be a technology of the past. If Samsung is not able to decrease the price and improve the quality of QLED displays OLED will be the clear winner. Even with some of the OLED shortcomings, such as brightness fading, this technology has a lot more benefits than QLED. I use mine as a monitor too, while there is some image retention I have not noticed it and retention on W-OLED is not permanent. OLED sets are closer to the picture quality of CRT and Plasma televisions than any LCD on the market right now. Also SDR (vs HDR on Samsung) content looks much better on an OLED panel.

The bottom line is Samsung could not afford to stay in the OLED game with their RGB-OLED tech. Now Samsung is trying to sell you an inferior technology marketed as something that it can not compete with. W-OLED screens are cheaper to produce and produce a better visual experience.

Update: There have been some cases of Burin-in with LG OLED TVs. The culprit is the colour Yellow and some derivatives of it. So Red and Green can also cause the issue, the closer to yellow these colours get the worse the problem. LG is denying any warranty claims on Burn-In on the OLED screens. Same issue is plaguing the Google Pixel 2 that carries LGs OLED screens.

So if you own a LG, Sony, or Panasonic OLED TV, one way to prevent burn in with yellow colour is turning your TVs OLED light down below 40, also change your compensation cycle to run every 2 hours instead of 4. TV channels with static colour logos are not a good fit for these TVs.

Having said this, OLED picture quality is still superior and for movie and series watching is amazing. Be aware of these short comings and like most consumers that bought Plasma TVs you can avoid the burn-in.

For more information on this issue head over to this AVSForum thread.

References:

https://en.wikipedia.org/wiki/Quantum_dot_display

https://www.oled-info.com/oled-tv

http://www.businesskorea.co.kr/english/news/industry/2891-w-oled-vs-rgb-oled-samsung-lg-show-different-techs-large-displays-ces-2014

HDR is here, sigh…

First, here is a good quick article on the difference of 8-bit vs 10-bit colour. Give it a quick one, two. Thumbs up the guy that took the time to write that.

My opinion is as follows.

First HDR should not be called HDR. It should be called Colour+ or something. Because it’s not what traditional HDR is or does. There are 3 HDR formats as of this writing, HDR, HDR10+ and, Dolby Vision.

HDR offers a singular benefit which is the colour depth, but as is with Dolby and Samsungs HDR10+ everything else about it is a gimmick. Just like Curved screens, and the likes of 8K Televisions. Perhaps 8K is useful for larger cinema screens but to me as a consumer 8K won’t offer any value in the near future. HDR offers a singular benefit, this is the wider colour gamut or depth(10 bit vs 8 bit). This has been a long ways in the making and started in the days of DVD past.

While yes the capability of the wider colour gamut or depth is welcome, things such as changing meta data is riding on borderline gimmicky and stupid. Also I would prefer there be no changing meta data in my video streams, thank you very much. I’d rather my Television have less capability to spy on me than they already do. I’m looking at you Samsung. I don’t own any Samsung products by the way, and there is a good reason for that, explosions and spying aside, I don’t buy into what they sell. While LG has adopted HDR and Dolby Vision(Netflix), Samsung has opted for HDR and HDR10+(Amazon). Amazon opted to adopt the HDR10+ standard.

I have experienced both Netflix and Amazon HDR, except for HDR10+ on Amazon. Based on my experience I will say this; the quality of Netflix and Dolby Vision leaves something to be desired. While it can offer benefits for edge lit LCD panels I see no benefit for OLED TVs. The idea behind Dolby Vision is such that it adjusts the contrast and brightness levels so that one can see the darks or shadows in a scene better and with greater detail than before. Is this true? Yes, somewhat but it comes at a price. To me it reeks of gimmick that only Edge Lit LCD panels benefit from. Let me explain. The problem with edge lit LCDs is that if a single pixel on the screen needs to be lit, and depending on the TV weather it has local dimming zones or not, the entire screen or sections of it will be lit up with the back light to provide illumination to the single pixel. LCD pixels are a passive technology and do not emit light. That is not the case with OLED. This means that on LCD/LED/QLED panels you will see a beam of light dropping down from the top to the bottom for a single pixel on an edge lit LCD panel, or LED panel as the manufacturers like to call them. QLED does something similar as well. While Dolby Vision aims to minimize this. Testing DV(Dolby Vision) on the LG 65UH8500 which is an LED edge lit LCD TV, this effect is very noticeable. Dolby Vision somewhat corrected this problem, but I also noticed that the contrast, the whites and, overall brightness of the image suffered in DV. Having watched and tested many DV shows, it was all the same across the board. Most noticeably in Luke Cage, DV rendered the image and show unwatchable and I had to make adjustments to the DV settings. Note that this was a calibrated television screen. In Marco Polo it did improve the dark scenes, however during the bright scenes I noticed that the colours and whites were way off. The whites weren’t white anymore and colour had a dark brown tint to it. But then again Netflix streaming quality is nothing to rave about. While Amazon streaming quality is slightly better than Netflix, this is only true for their UHD stuff. Also Amazon’s HDR implementation is a little simpler than DV and having watched the Grand Tour in HDR I can say, it’s just ok. HDR is simple and does what it’s supposed to without gimmicks. It adds a larger colour gamut, while HDR10+ and Dolby Vision add changing meta data to the stream. Thanks but no thanks.

The likes of 4 HDR standards exist right now, or soon will. Each vying for TV supremacy.
This smells to me like the next format war, Beta Max vs VHS, HD-DVD vs Blu-Ray, well Dolby Vision vs HDR10+ is here. So get ready folks, get ready to stop buying new TVs because a new format war is about to come to your living room.

Also did you know that that UHD television in your living room will not display UHD Television content for a long time, if ever, except for a couple channels. For the most part TV producers opted for HDR instead of UHD resolution. On top of that, said live television HDR format is a new standard which has not been added to any TV manufacturers lineups yet. Planned obsolescence? Maybe. Who knows maybe it’s just a firmware update, but if you’re dreaming of watching sports in UHD, think again, it might not ever happen. Yes Direct TV streamed some UHD channels last year, but have a look around, most Television broadcasts are still in 720p or 1080i, nothing has changed in the last little while.

So as it stands right now the only benefit HDR offers is via UHD-BluRay. You get uncompressed HDR video with wider colour range and uncompressed audio. However, UHD-BluRays aren’t flying off the shelves either. I have a sneaking suspicion that UHD BluRay will go the way of BetaMax, HD-DVD, and the Dodo. As such I could not recommend a new LCD panel that supports HDR at the moment to anyone. Let alone UHD LCD panel, that is unless you plan to use it with a PC. There really is no benefit at the moment to the average consumer purchasing a UHD TV unless you are buying a large format screeen, 80″ + I’d say. Be patient, sit and wait, watch, and then make an informed purchase.

If you’re are going to upgrade your LCD panel do it because you’re upgrading it to an OLED TV. That is the single best upgrade you can make to your TV, you will be stunned at the difference between OLED and LCD. Once you look at OLED you will realize how trashy LCD, LED and, Samsung’s QLED panels really are. This is truly the future of Television displays, and Goggles rumored $800 Million investment in LGs OLED technologies is proof of that. Christ, go to any robotics hobby shops and they are stocking OLED monochrome displays, some even colour. OLED is the future display tech for the time being. QLED or Quantum dot Light Emitting Diodes are just LCD panels with a gimmicky name to try and fool you into buying Samsung’s panels which are LCD/LED edge lit displays of the last 10 years past.

OLED or go home I say. This is what the industry should be concentrating on.

References:

http://www.techhive.com/article/171223/10_bit_color.html

http://www.digitaltrends.com/home-theater/directv-4k-uhd-masters-broadcast/

http://www.cnbc.com/2017/04/10/google-offers-at-least-880-mln-to-lg-display-for-oled-investment-electronic-times.html

http://www.trustedreviews.com/opinions/hdr-tv-high-dynamic-television-explained

https://en.wikipedia.org/wiki/Ultra-high-definition_television#Americas

Home Media – Part 3 – The Rip

It’s been a while but finally I got around to completing Part 3 of an old series.

Part 1: The NAS build, can be found here. 

Part 2: The Setup can be found here.

Part 4: OSMC/KODI/XBMC can be found here.

The whole idea of this was so you could have your media at your finger tips. Your movies, your TV shows and your Music. If you’re like me you have shelves and shelves full of Movies and Television shows, and plastic bins full of CDs.

I’m not condoning piracy, and personally I think you should have control over the media that you own, as long as you don’t distribute it or broadcast it for the masses. Having said this you should probably check with your Country’s copyright laws. Either way it is nice to have it all at your finger tips.

I’m finding less and less compatibility between software and HD DVD movies these days, some titles I am unable to convert into a digital format form HD DVD. Also there is a draw back with HD DVDs, they only support Dolby Digital and DTS audio, where as newer Blu-Ray movies support lossless audio such as Dolby True HD and DTS Master Audio formats. There are a few new ones on the horizon as well, these would be Dolby Atmos, DTS:X and, Auro-3D.

Couple of good sites where you can find a lot of information on ripping and appending videos are http://www.videohelp.com/ and http://www.doom9.org/ .

To rip movies/tv you will require a few pieces of software. Besides the necessary codecs only two, Make MKV and Handbrake. Make MKV strips the copy protection and rips 1:1 video and puts them in MKV containers. Handbrake compresses the videos to specific formats and output devices. These are both free, if you want to pay for a single piece of software I would recommend DVDFab Blu-Ray ripper.

K-Lite Codec Pack is used to decode the material and the different formats for converting the material you will be ripping.

Capture5

MakeMKV can be used to strip the AACS and BD+ protections from discs, however this software goes a step further and can also convert your Blu-Ray movie to a MKV container. Mind you the movie will be large and there will be no compression, so the files can turn out to be 20GB, great if you want a lossless 1:1 copy of your movies. This software is free while in beta and for full functionality. You must input their beta key in to the software to make if functional, the key can be found here on their forum. This software also allows you to rip 3D Blu-Ray Titles. You can actually get away using only this software for ripping content.

Capture

HandBrake requires you to have the disc already ripped and stripped, generally using MakeMKV or Fab Decrypter. I really like using the batch processing mode in HandBrake, it’s very useful for TV shows. Also with handbrake you can create a custom template so it’s nice and easy to work with TV shows or repetitive content. HandBrake is also a converter so it can convert content for portable devices, it can make the file sizes smaller and change the resolution of the source, etc.

Capture4

DVDFab HD Decrypter is used to copy movies into a file and remove the encryption on the disc. This will remove AACS and BD+ protection. This software is free and usually the first step to digitizing your library, uless you are using MakeMKV. Be aware though, some software is not able to create Rips from these backups there is something specific to this software that sometimes does not play well with other applications.

DVDFab Blu-Ray Ripper (3D Plus), I use this software to rip my 3D Bly-Rays. This software allows the movies to be ripped into a 3D half side by side MKV or a 3D half over under MKV file. It’s paid software, but worth the money. Having said this there are other options for ripping 3D movies, MakeMKV can do it as well. Nice thing about this application is that you can compress the file and there is no need for a 1:1 copy.

Pavtube ByteCopy, I’ve actually never used this software but in my research I found that people have good things to say about the software.

BDtoAVCHD is another tool that came to my attention recently, If you ever want to create discs from your ripped content this is the tool to use.

So now that you have the necessary software where do you go from here?

Note that if you are looking for menus etc, this is not the guide for you. I don’t really care for the extra content and only want Audio track/Subtitle options. Mind you with Make MKV you are able to rip the special content as well, but I reiterate there is no menu system. Also I will only cover the Make MKV how to here, the DVDFab method is a paid method and kind of an all in one package that is simple to use, so no need to get into the details of that.

Download, install, and get the beta Make MKV key from the forum. The key changes with each Beta release, and even though MakeMKV is in version 1.x it is still free/considered beta.

Capture2

Once you install the software start up Make MKV and input the key in Help > Register. If you like the software and want to purchase it go to Help > Purchase. Untitled5

Insert the disc with the material you want to rip, make sure you have the right optical drive selected in the drop down list, then press the Open Disc icon in the left pane of the application window. The icon looks like a DVD drive with a disc inside. Alternatively you can go to File > Open Disc and select the appropriate optical drive where your disc is. Untitled2

 

The icon will start to look like it’s spinning and the software will take a minute to read and decrypt the disc in the drive. Once this process completes you will be presented with a list of valid Video sources on the disc. Generally the large ones are the content that you want.

Untitled3

Note that with this particular disc you have 4 episodes/Titles and that the 5th 7.0GB file is all of the episodes in one seamless Title. When I was converting this I generally skipped this one Title. Select the titles you wish to rip. Change the output folder on the right side of the window to where you want to save the converted files to. Then click the Make MKV button to the right of that. Depending on the processing prowess of your PC this can take a bit, it will also prompt you to create the folder if it does not exist. Untitled6

Once the process completes go into the folder and rename the files to something meaningful.

Once you have your MKV, you can start to compress and convert the formats.

To do this use Handbrake, it has several presets available for you to use. However if you wish you can create  your own and save it. This is where you can take 1080p content and convert it to 720p, having said this this will take a long time if you have a slower computer.

handbrake

You select your source which is either a file or a folder, and you can set your resolution in the Picture tab. Notice the output settings, you can change them to MKV or MP4 in this example. This is something to keep in mind.

handbrake2

In the Video tab you can change the codec that the encoder will use to recode your video in, H.265 is an option, select the Quality and you can even do 2-Pass Encoding. While 2-Pass encoding does improve the quality you will be looking at a really long encode unless you have lots of RAM and a really fast processor.

handbrake3

Then you have your Audio section where you can downmix to stereo or upmix to a different codec all together. Note that you can have multiple audio tracks.

Once you have selected your desired settings you can save them as to use at a later time, just click the ADD button on the bottom right. If you have multiple videos to encode add them to the queue and keep going, nice thing about Handbrake is that it does batch conversions.

 

Install and Configure OpenVPN on OSMC/Kodi

Let’s face it, Kodi is pretty popular right now, everyone is talking about it. One of the first things I did after I installed OSMC on my Raspberry Pi was to configure OpenVPN. There is a little bit of work involved so I figured I’d share what I did to get it up and running!

Login to OSMC via SSH using PuTTy or your client of choice.

Elevate to Super User.
osmc@KODI:~$ sudo su

Update the software repositories.
root@KODI:/home/osmc# apt-get update

Install OpenVPN.
root@KODI:/home/osmc# apt-get install openvpn

Reboot.
root@KODI:/home/osmc# reboot

Create a folder to put your OpenVPN configuration files in.
osmc@KODI:~$ sudo su
root@KODI:/home/osmc# mkdir vpn-conf

Copy your .opvn file/files and your .crt file into /home/osmc/vpn-conf, there are a few ways to copy the files here, I personally like to use PSCP. This
example is using PSCP from a Windows computer.
C:\temp>pscp c:\temp\ca.crt osmc@192.168.1.100:/home/osmc/vpn-conf

Create a new file that will contain your login credentials for OpenVPN
root@KODI:/home/osmc# cd vpn-conf
root@KODI:/home/osmc/vpn-conf# vi login.conf

  • Press Insert
  • Type your Username on first line press enter and type your password on the next
    line.
  • Press Esc, type :wq
Username
Password

Now edit the .opvn file/files of choice to make sure the login.conf and <ca_file_name>.crt file are referenced correctly.
root@KODI:/home/osmc/vpn-conf# vi <filename>.ovpn

  • Find the following lines that begin with:
    • auth-user-pass
    • ca
  • If they exist – edit them accordingly, if they don’t exist you will need to add them.
auth-user-pass /home/osmc/vpn-conf/login.conf
ca /home/osmc/vpn-conf/ca.crt

Let’s test out OpenVPN, the service should start and connect successfully after running this command.
root@KODI:/home/osmc/vpn-conf# openvpn /home/osmc/vpn-conf/<filename>.ovpn

Confirm VPN connectivity by using curl, this should retrieve your VPN’d IP address.
root@KODI:/home/osmc/vpn-conf# curl http://checkip.dyndns.org

If everything checks out and is working so far it’s time to install the OpenVPN Add-On for
Kodi and import a profile. Grab the latest OpenVPN Add-On for Kodi, the quickest way is to just grab it is to use wget right from OSMC, using your web browser right-click on the script.openvpn-x.x.x.zip and Copy the link address.
root@KODI:/home/osmc/vpn-conf# wget -c <paste_link_addr_here>

From Kodi on your TV, go to Settings -> Add-ons -> Install from zip file

  • Select Install from zip file.
  • Navigate to the ZIP file and select it.
  • In the bottom right corner, Kodi notifies when the add-on is installed and enabled.

Now the OpenVPN Add-On for Kodi should be installed… go to Programs > Add-Ons
> OpenVPN from Kodi and import your .opvn files, once complete try to connect. It should work successfully since it’s literally just an interface to the actual OpenVPN service that we just installed and configured.

That’s it! …but if you’d like to take it one step further you can. I personally like to have a certain OpenVPN profile connect at startup of Kodi. It’s pretty simple to do this.

Browse to the userdata folder for Kodi and create an autoexec.py file.
root@KODI:/home/osmc# cd /home/osmc/.kodi/userdata
root@KODI:/home/osmc/.kodi/userdata# vi autoexec.py

  • Type the following where <profile_name> is the profile
    name of the profile you have created in the OpenVPN Add-On for Kodi.
import xbmc
xbmc.executebuiltin('XBMC.RunScript(script.openvpn,<profile_name>)')

Now every time you power on your Kodi box, OpenVPN will launch and the VPN
profile of choice will connect automatically. Cheers and happy streaming!

Home Media – Part 2 – The Setup

Part 1: The NAS Build

Part 3: The Rip

Part 4: OSMC/KODI/XBMC

So what do you do if you want to build an unRAID box?

unRAID boots from a USB flash drive, and the flash drive needs to have a GUID or Globally Unique Identifier. This is for the purposes of licensing. If you do end up loosing or something happens to the flash drive generally lime-tech is pretty good about it and all you need to do is email them, they might ask for a new GUID and send you a new key. Here is their policy on that. I’ve had two flash drives fail on my and they were pretty good about giving me a replacement key. Once unRAID boots from the flash drive it mostly runs in memory, and since it’s a stripped version of Slackware Linux it doesn’t really require a lot of memory to run.

First, grab a 4GB flash drive, for best results grab a flash drive from the Hardware Compatibility page. The key here is that your flash drive needs to have a GUID, some have it and some don’t. Speed is also a factor, as in read and write speed. Alternatively if you want to know if your drive is compatible and has a GUID grab any flash drive and quick format it to FAT32, use Volume Label: UNRAID, then unzip the contents of the ZIP file found here to said drive, and boot it on any networked machine. If you’re having trouble booting follow the drive preparation instructions. Once booted log into unRAID, username:root, password:<blank>. Type in ifconfig to obtain the IP address, then head over to another networked machine and type that IP into a browser, this should take you to the main unRAID page. Here is the getting started page from Lime-Technology which describes the same thing in greater detail. Alternatively by default you can access the unRAID web GUI by typing in http://tower instead of http://<unRAID IP address>.

There is also something called the GO file which is located in the /config folder on the root of the flash drive. The go file gets executed at boot and in here you can put any special instructions or drive maps that you’d like to execute at boot. In my case I mount a drive that is outside of the array, I call it the system drive and it holds all the configurations for my docker containers. This is not necessary as the same can be accomplished with the cache drive. Here’s what my go file looks like.

#!/bin/bash
# Start the Management Utility
/usr/local/sbin/emhttp &

# Make directory and Mount the system drive
mkdir /mnt/system
mount -t reiserfs /dev/disk/by-label/systemdisk /mnt/system
sleep 5

#Install Screen and Utemper, utemper is necessary for screen to work
installpkg /boot/packages/screen-4.0.3-x86_64-4.txz
installpkg /boot/packages/utempter-1.1.5-x86_64-1.txz

The free version of unRAID (uR) allows you to use 3 drives. The Hardware compatibility list also provides some standards and minimum requirements for the server hardware, usually an old desktop will do. If you decide to go with a 8 or 25 disk server, you will need to pickup a decent RAID card and a good enclosure.

There is also something called the GO file which is located in the /config folder on the root of the flash drive. The go file gets executed at boot and in here you can put any special instructions or drive maps that you’d like to execute at boot. In my case I mount a drive that is outside of the array, I call it the system drive and it holds all the configurations for my docker containers. This is not necessary as you can to the same for the cache drive.

Plugins vs Docker. In unRAID, plugins were the go to in version 5 and prior, this was the way to install applications on your NAS. They were easy to install and worked well, until you installed a new plugin which had, let’s say a newer version of Python in it. If this happened it would break all the plugins which relied on the previous version of Python. I ran into this issue multiple times in both version 5 and 4 of unRAID. There was no standard and people wrote plugins they way it suited them. At one point in version 5 I had to go into a the plugin and change the python version it pulled and installed, this broke a minor function of the plugin but made it sort of work. There was also an issue I had with sql lite, a plugin was pulling a newer version than was supported by another application, and finally some plugins would break the web interface. When version 6 of unRAID entered beta and docker was a possibility I jumped for joy. Yes by nature the docker equivalent is larger, however since these are self contained application on top of a OS layer, there is no chance that one application would break another. Also now with docker one could have multiple versions of python ans whatever the prerequisite for an application was. The only problem with docker is that it is not as easy to implement as the plugins. It takes a little know how to get it up and running. But, since I moved everything to docker I have less downtime on my server, and I’m not as often remoting into the server to administer it. That’s a win in my books.

Most applications that you would want on your NAS more than likely already have a docker container created for them. However if you want to create your own and if you’re curious about docker in general here is a great Docker 101 tutorial video by Ken Cochrane.

I’m not going to tell you how to setup docker in unRaid or how to put together your server hardware, but what I will do is point you to some really cool articles/blogs that describe how to do so. In my opinion there is no point in reinventing the wheel.

Update: In the final version 6 of UnRAID docker container manager is included and installing docker containers is as easy as point and click for the most part. Good place to get the containers is from http://linuxserver.io

Over at the Corsair Blog there is a really cool How to Build a PC section. I hope http://www.corsair.com doesn’t mind me linking to their site. It’s intended on teaching you how plan and build an gaming PC, but there are still articles relevant to building and putting together computer hardware regardless of what the desired purpose is. If you click the link make sure you sort by Date (Older – Newer), this way you will start on the first post and you can continue on in a logical order.

The Lime-technology website has a really good tutorial on how to get docker up and running on your server. Check out their Docker Guide over at http://lime-technology.com/ . Again I hope they don’t mind that I link to their content as this is a very well written and comprehensive docker guide.

And last but not least there is a really good plugin for Docker containers in unRAID, yes I said plugin, it’s ok to have one. This plugin allows to view / add / remove unRAID docker template repositories. The alternative is adding the repositories yourself, you can get these from this lime-tech forum post.

To install the plg you need to SSH into your server, I generally use PuTTY from a Windows machine. Once there navigate to the directory /boot/config/plugins by typing the following:

cd /boot/config/plugins

Any plg file that is located in this folder will get installed on server boot. Once there you’ll need to download the plg to your local machine. Do this by typing the following:

wget –no-check-certificate https://raw.githubusercontent.com/Squidly271/repo.update/master/plugins/community.repositories.plg

This will download the plg file. Now you can either reboot the server or install it manually by typing the following:

installplg community.repositories.plg

That’s all for now. You should now see a new tab under the Docker heading in the web GUI of unRAID.

If you have any questions or comments, post below.

Next: Part 3 – The Rip