PrerequisitesHow to stream Bluray movies to Android TV Box

You will need the following:

  • A Bluray disc, pre-prepared ISO image or extracted folder of one.
  • A PC, Mac or Linux machine with plenty of free hard disk space (100+ GB) and Gigabit ethernet (1000 MB/s LAN).
  • A high-end Android TV Box. Such as RK3288 or Amlogic S802/S812 based. Must have Gigabit ethernet
  • A Gigabit LAN* switch or router (most new routers are all Gigabit)
  • CAT 5e or 6 LAN cables

 

Budget

160 USD

Assuming you already have a PC, Gigabit network and just need to buy an Android TV Box.

1. Convert your Blu-ray to MP4

 

A) Download Handbrake for your OS here and install on the computer you will use as a server. Normally you can't install it on another Android TV Box. Even if you can, we recommend using a relatively high-performance PC or Mac. The higher the performance of your server, the less chance of any problems occuring. Having said that, an Intel i3 machine with 2GB of RAM and Gigabit ethernet should be sufficient.

B) In Handbrake, select "Source" then your Blu-ray source. If a Blu-ray disc, then you should see it already in the menu. If an ISO image or folder on your hard disk, choose "folder" then select the directory where it's located. If the Blu-ray is saved as a normal folder (i.e. not a disc or ISO), then select "open folder" then select the top-level directory that contains the folder "BDMV" (don't select the folder called "BDMV", instead select its parent folder).

C) After successfully selecting the Blu-ray, Handbrake will show "Scanning" for up to a minute. Wait until it is complete.

D) In "Destination" select a place on your hard drive to save the movie and give it a filename. Ideally, used the following standard for naming your movie:

Movie_Name (release year).mp4

For example:

Avatar (2009).mp4

For more details, see the Plex guidance here.

E) Select the following settings:

Container: .MP4. You can try MKV, however MP4 is more standard. With MKV you may experience player compatibility issues. In terms of quality, you will not see any difference.

Video codec: H.264 (x264)

Framerate: We prefer to use "constant framerate" because it has greater compatibility and we aren't looking to save space by having a variable framerate - we are aiming for the highest video quality.

Quality: Choose "constant quality: and drag the RF slider to about 10. This setting greatly affects the visible quality and size of the movie. You can try setting it to 0, which is “lossless”, however the resultant size of the movie will actually be larger than the original Blu-ray and normally more than 100 GB, because Blu-ray is inherently compressed and Handbrake is processing the uncompressed version, not the compressed version. There is no point in making a lossless version of the uncompressed data because Blu-ray is a compressed format to begin with. Our aim is to recompress (using Handbrake conversion) the Blu-ray data into a more compatible format (.MP4) but without loosing any quality. Therefore we want to convert only at the same, or lower compression than it was originally.

You will not notice any physical difference in quality between say 0 and 10. Many people say you should choose 19-22, but from some research we found that quality is visibly different (if you look close!) between RF10 and RF18, see article here with examples. This is especially true for movies that have a lot of "grain" or fine detail.

Our approach is to choose a setting that results in roughly the same file size (approx 50 GB) as the original Blu-ray. Any less, one expects the quality to have been reduced, any more and one expects some space to be wasted without any quality gains. While this is oversimplifying, unless you are seriously short of hard disk space we recommend choosing a quality setting that has fewer uncertainties. We have found RF 10 movies to look virtually identical to the original Blu-ray with no compression artifacts at all and similar file size.

Optimize video:

x264 preset: This setting greatly affects the time taken to convert the movie. We recommend choosing "slow" or "slower", because while it takes longer to convert, the resulting file will not only be higher quality but also smaller in size. The faster you convert, the lower the quality and larger the file size. Note that the "placebo" setting takes very long and the quality benefit is only around 1% more than "very slow", so not worth considering in most situations. Having your computer processing the video for that long (could be more than 10 hours) will use a lot of watts and put strain on your machine!

x264 tune: For most movies use "film". If the movie is particularly grainy then select "grain" to help preserve this detail.

H.264 profile: Use "Main"

H.264 detail: Use "4.1" for Blu-ray 1080p@30fps or less. If you are converting something with 60fps, choose 4.2. For 4k videos, choose 5.1 or 5.2. More details on these H.264 levels here.

Audio: Go to "add track". First choose the audio track you wish to hear in "source" (in the language you want) normally it will be DTS, DTS-MA, Dolby Digital or Dolby True HD. Next choose the output format in "codec". Since we don’t want to alter the audio stream quality whatsoever, choose the “passthru” option that exactly matches the source audio format. I.e. if you chose the DTS-MA format from the Bluray, then choose “DTS-MA Passthru”. Note, if you need various languages you can add as many tracks as you like.

Subtitles: If you want any subtitles, now is the time to select and add those you want.

That's it, we are all done with our settings!

F) Hit “start” and wait for the movie to convert. You can see the status and estimated time remaining at the bottom of the Handbrake window. For a high-end Intel i7 machine, it will normally take 1-4 hours, but the time taken largely depends on the "x264 preset" settings. If the estimated processing time is more than 4 hours, we suggest changing the speed setting to a higher one.

G) Once complete, that’s it! You’re movie is now in a format easily playable by almost any current media player, providing the hardware is powerful enough.

2. Setup your media server

A) Install Plex Media Server from their website here.

B) For settings, the default settings in Plex Server are fully compatible with playing full quality Blu-ray-derived .MKV or .MP4 files. So there should be no need to change any settings here for reasons of quality, unless you want to tweak some functions or are having problems.

C) Open up Plex (it will open in your web browser window). On the left side of the screen click the edit button for "Movies" as shown here. If "Movies" is not there or you with to create a special Blu-ray category, press the + icon instead.

Add

Now Browse for the directory where your converted Blu-ray quality movies are, press next and save.

Add2

Plex should automatically scan and find all the movies in your folder. If it doesn't, or you add more movies to your collection later, press the "update library" icon as follows when inside one of the category folders. When Plex scans, it will also download meta-data about your movies from the internet (just to add useful info and thumbnail images, it doesn't identify the source of your movie), so be patient.

Refresh

D) Ensure your server computer and Plex are running whenever you want to stream movies.

Note, Plex uses something called "transcoding" if your Android player app isn't compatible with the movie format. Transcoding will affect the playback quality but provided you follow all the steps in this guide (mainly concerning how recent your TV box is) there will be no transcoding and the movie will play as a "Direct Play" video, which means Plex doesn't alter the movie in any way at all, rather just provides a means of browsing your movies and initiating a stream.

3. Setup your network

You need to connect the server and your TV box with a gigabit LAN connection because the bandwidth required to transmit Bluray is close to 100 mbps. You will find that the actual speed of a 100 mbps LAN is normally lower than the theorectical 100 so it will not be enough for Bluray streaming.

A) Connect your server computer and Android TV box with CAT 5e cables throughout the entire connection route.

B) If you an unsure if the connection is running at 1000 Mbit/s, you can check the status of the server computer’s network connection (for example, on windows, right-click your LAN adapter icon and then “status”. For the TV box, they often don’t tell you what the connection speed is, but you can log into your home router (normally 192.168.1.1 IP address in any browser) and find the DCHP table or connection list, and many will tell you the speed of the devices connected to your network, i.e. 1000 or 100 mbps.

4. Setup your TV Box

A) In the network settings, turn WIFI off, just to ensure you are definitely using the LAN connection.

B) Install a free DLNA/UPnP client app. We recommend BubbleUPnP. You can also use Plex for Android, however in our experience it is not as reliable to use as using a DLNA/UPnP client and player app combination.

C) Install an app for video playback. Your Android box should come with at least one built-in video app, as well as XMBC/Kodi or SPMC. However, we recommend trying MXPlayer, if it works, simply because the interface is easy to use and tweak settings. You should install a rollback Codec for MXPlayer, as per the instructions found here, since the latest version doesn’t support AC3 (a surround sound format) audio.

D) For your surround-sound, ensure the HDMI cable from your TV Box is connected to your AV receiver. If you are connecting to the AV receiver via your TV first, make sure your TV has HDMI audio passthrough enabled and the HDMI cable for audio from your TV to the AV Receiver is in the correct HDMI port on the TV. Do note that not all TV's can passthru the full range of DTS and Dolby formats, so check with your TV user instructions.

E) In your Android audio settings, select “HDMI Passthrough” or "HDMI Bitstream" as the audio output (or SPIDF if you are using that).

F) Normally, the factory preinstalled video player apps will come setup ready to do ‘passthrough” HDMI audio. If you experience any problems with your audio you can check the settings in the player app to ensure “passthrough” audio is turned on, if there is such an option. See "troubleshooting" below for more info.

5. Play your movie on the TV Box

A) Ensure your server computer is turned on, logged-in and Plex Media Server is running in the background (it doesn't need to be open on-screen, just running as a background program).

B) Open BubbleUPnP.

C) Find and select your Media Server (Library).

D) Go to “Movies” and “All”, you should see your converted Bluray movie(s) there.

E) Click on the movie, then select which video player app you wish to open it with.

F) The movie should start playing, as per below Youtube clip:

 

Troubleshooting

“My TV Box doesn’t have an option for HDMI Audio Passthrough”

  • The option may also be called “HDMI Bitstream” or HDMI (something else). If there are no options to select it doesn’t necessarily mean it won’t work, you can try it out.

“I can’t see my Plex Media server in BubbleUPnP”.

  • Sometimes it may not show up if there has been an interruption in network service for whatever reason. If it doesn’t show up, but you are sure Plex server is running, first try restarting your TV box completely and check again. Check the TV box has a working network connection. Try pressing “reload” or “refresh” in BubbleUPN. If this fails, try restarting the server computer and check if there is anything that could be blocking Plex Server on that machine, such as a firewall rule. You can try leaving one device on, while restarting the other. For example leave the server on but restart the TV box, then try leaving the TV box on but restarting the server.
  • Note, if the Plex Media Server is running correctly you should be able to see it from any device on your home network, so a good troubleshooting checker is to use another device like your cell phone instead of the TV Box. If you can see Plex Server from your cell phone’s BubbleUPNP but not your TV box then it’s likely to be a problem with your TV box.
  • Finally, you can try using a different UPNP / DLNA client app on your TV box. Try Plex home theater or search for “DLNA client” on Google Play Store.

“I can see my movie folder in BubbleUPNP but not the movie”.

  • Check your Plex server to make sure it has updated and added the movie to its database. Sometimes you need to manually press the “update library” icon inside your movie folder as shown here:

How to reload BubbleUPnP library folder

  • After pressing “update library” you should wait for Plex to analyze the movie and download meta data from the internet. You should also try restarting Bubbleupnp, pressing “reload” in BubbleUPNP and even restarting your TV Box.

“The movie stutters or takes a long time to load”

  • This could be due to a) The network speed or b) Player compatibility issues. To see which, first check the network speed. You can try using an app called “WIFI Speed Test” which, if setup correctly can also test the LAN speed of your TV Box. Note that you have to also install a small server app on your server computer to use this.
  • If all the devices in your network partaking in the connection are rated for Gigabit, but you still can’t get Gigabit speeds, check your LAN cables are compatible with Gigabit. Most new LAN cables are, but they should still be rated at CAT 5e, or CAT 6 and of trustworthy quality.
  • If networking is okay, the playback problem could be player app incompatibility. The DLNA / UPnP client app is unlikely to be the cause of the problem because that app is only acting as a middleman between the Plex server and the final video. Whether the video plays correctly or not is decided by the player, since the player app does the decoding and output of the video signal. In this case, try choosing a different player app and see if there is any difference. If you don’t have many options then you can try downloading the following apps from Google Play:

MXPlayer
XMBC / Kodi
SPMC (for Rockchip-based Android TV Boxes)
VLC Player
BSPlayer

  • If you are still having problems another cause maybe incompatible firmware, because playback of high quality video requires hardware acceleration from the TV box. You can contact us at Betteq and we will check if any firmware updates are available to solve the problem and help you to apply them.

Other things you can try are:

  • Kill all other running apps (using the “kill all processes” icon found on most new TV boxes). This is to free up available memory.
  • If your TV is at 4k resolution, try reducing it to 1080p. We find this can often smooth up videos that have tearing or stuttering in them.
  • Try changing the HDMI cable to another one in case it is faulty or doesn’t have enough bandwidth. You should have a “high speed” HDMI cable that is capable of HDMI version 1.4.
  • Check if your server computer is powerful enough. When you are playing the video, check on the server how much CPU load (CPU % usage) there is, also the memory and disk usage and try to spot any potential bottlenecks that could be the cause. Normally though, if you have Gigabit ethernet, any 5-year old CPU and hard disk spec should be sufficient.
  • If your TV box is too old, it may not be fast enough to decode the video stream. Generally speaking, if the box was made after 2013 and is a well-known brand it should be fast enough. If it has gigabit LAN, it’s pretty much guaranteed to be a fast enough system since gigabit LAN-enabled TV boxes have only hit the market relatively recently.

“The sound output is only 2-channels” or “the sound is just white noise”

  • If all the settings in your player app and TV box are correct, check that your AV receiver is compatible with the sound signal (i.e. DTS or Dolby Digital). You can try to adjust some settings in your receiver and see if there is any difference. Try changing the HDMI cable to another one.
  • If you are not already doing so, try connecting the TV box HDMI cable directly to your AV receiver, rather than through a switch or TV.
  • If you have made significant changes to your TV box since buying it, like updating the firmware, changing settings or reinstalling XBMC / Kodi / SPMC, then it may help resetting the TV box to its original factory settings, which should be optimized for hardware video and audio processing.
  • Try playing the movie in all the different player apps you have installed and see if any work better than others.
  • Try changing the player app settings, particularly ones that involve the words:

“transcoding”, “HDMI passthrough”, “HDMI bitstream” “hardware acceleration”, “SPIDIF”, “audio channels”, “DTS” “Dolby” or “audio output”.

After you have changed any of these settings, make sure you apply them and then restart the app. Preferably, close the app completely by going to the list of apps in Android settings and stopping it, then also restart your Android TV box before opening the app again.

  • Check that the audio channels were properly configured as per step 1 in this guide when you used Handbrake to convert the movie.

Note, some TV boxes don’t support surround-sound audio output and can only output 2-channel PCM audio. However, if your TV box has Gigabit LAN, it must be a relatively new and high-performance box, which can normally output multi-channel audio. Do note that, however, some TV box manufacturers may not have officially licensed DTS or Dolby technology so these formats may not work reliably.

Also note that for high-resolution audio like DTS-MA or Dolby True HD, not all TV boxes support these formats and can only output standard DTS or Dolby Digital. But in this case, the DTS-MA or Dolby True HD signals you chose in Handbrake should be output as standard DTS or Dolby Digital from the TV box – normally you can choose the highest quality audio output option in Handbrake even if your TV Box or AV receiver doesn’t support it because they will just automatically step-down to the next highest signal they can output.

If you have any problems following this guide let us know in the comments below!