I bought an Amazon Fire TV Stick last year, even though I already had the Google Chromecast. While the Chromecast is plugged into the TV in the living room, the Fire TV Stick [ Find it on Amazon – *What’s this?* ] is plugged into the TV in my office - for productivity reasons, of course.
Both devices have their pros and cons, Amazon certainly has more channels than Chromecast, however there was one area with which I struggled: Playing local content.
There can be many solutions to this problem, I am picking a solution that provides me with more flexibility and control.
The solution lies in a little known secret of Fire TV Stick (FTS). Similar to Android devices, there is a feature that allows users to install apps from 'unknown' sources. It doesn't require a super-geek knowledge of Linux.
These are the steps to take in order to extend the features of the Fire TV Stick:
- Get the apps you want to install on FTS.
- Enable FTS to install apps from other sources
- Install Android tools on PC
- Install apk files on FTS
- Install Samba
- Use Kodi
Get the apps you want to install on Amazon Fire TV Stick
First let's grab the apk files of the apps that we want to install on Amazon TV stick, just keep in mind not all apps will work on the device, even if they installed just fine. Here we are going to install Kodi (formerly XBMC), which will take care of multi-media needs. Download the latest .apk file for Android ARM from 'download' page of the official site.
The fact is, you can also install apps like ES File Manager alongside Kodi, which will make it easier to scan local networks for multimedia files. It doesn’t stop there, you can also install Firefox and many other such apps on your FTS (I will cover that in a future post).
Work to be done on Amazon Stick
Go to Amazon Fire menu: Settings > Developer Options and enable both 'ADB Debugging’ and 'Apps from unknown sources' options.
Then move up to the 'About' section and note the IP address of the Stick.
Install 'Android tools' on your Linux distribution; it's in the official repository of every major distro. Now head over to this Amazon site and download the Android SDK platform-tools. It should be a ‘zip’ file, extract the file content, open the ‘Terminal’ and change directory to the 'Android SDK platform-tools' folder.
First stop the adb server:
Then start it
Now start a connection between the Stick and your PC
adb connect IP_ADDRESS_OF_STICK
If there is no error message, check if the connection is established:
It should give you the device number. We are almost there. Now run the following command to install apps on the stick
adb install /path_of_kodi.apk
If the apps successfully installed on your Amazon stick, you will see the 'success!' output.
Open the ‘Settings’ option on the Fire TV Stick and go to Applications > Manage All Installed Apps.
There you will see your newly installed Kodi app.
Turn your Linux PC into file and media share server
Our local ‘Netflix’ or ‘media empire’ depends on the file sharing capabilities of our PC. You must have Samba installed on your Linux box so that we can share the files that we want to access from the Stick.
Plex could be a potential candidate instead of Samba but it has its own limitations: I am building a media server using the newly launched Raspberry Pi 2 and Plex is not yet available on the ARM platform. Then Plex does all transcoding on the host machine, which means it’s resource hungry for low-powered device. A third problem with Plex is that if you have a huge amount of media files, it will take forever to scan and index those files. Every time you add new files you have to run an index again.
All of these issues are muted with Samba server. One of the biggest advantages of Samba is that you can password protect the server and restrict your kids from accessing your movies. You can easily create a ‘Kids’ section for their movies using a new Samba ‘user’. On Plex, whatever is added to it is accessible to everyone.
Every Linux distribution has its own method of installing Samba, in this article I will talk about Ubuntu and openSUSE.
Install and configure Samba on openSUSE
First install Samba and then add system user to the Samba group:
sudo zypper install samba
sudo groupadd smbgroup
sudo usermod -a -G smbgroup name_of_user
sudo smbpasswd -a name_of_user
Install and configure Samba on Ubuntu based systems:
apt-get install samba
sudo smbpasswd -a name_of_user
Share directories (applicable to all Linux distributions)
Edit the smb.conf file and add a section for the directory you want to share.
You have to add 6 lines at end of the conf file. Follow the pattern as shown below:
[Movies] -> The name of the shared directory
path = /media/4tb/movies -> The path of the shared directory
read only = No -> Ensures that it's not read only
browsable = yes -> Ensures that the subfolder of the directory are browsable
writeable = yes -> Ensures that user can write to it from networked device
valid users = yourname -> The system user
Below is the section I added to my config file (if you have more than one directory to share, please create new section for each directory):
path = /media/4tb/movies
read only = No
browsable = yes
writeable = yes
valid users = swapnil
Now start Samba.
systemctl start smb.service nmb.service
systemctl enable smb.service nmb.service
sudo service nmbd restart
sudo service smbd restart
Now these directories are available on other device connected to the same local network.
Let’s start our media empire
Launch your Fire TV Stick and visit Kodi from Settings > Applications > Manage all installed applications > Kodi > Launch Application
There Select the Videos > Files option. Then click on ‘Add Videos’. Select the ‘Browse’ option and go to ‘Windows Network (SMB)'.
It will show you the name of shared workgroup (you can change that name in the smb.conf file), which would be either WORKGROUP or HOME. Select the group and it will show you the name of your PC.
Click on it and there you have: the directory that you shared in Samba settings. When you select the directory it will ask you to enter username and password for the Samba server. Provide it with the username and password we created earlier. Also select the option 'Remember for this path' so you don't have to add it again.
Click on the ‘OK’ button at the bottom and if that’s the only directory you want to access, click on the ‘OK’ button on side which will bring you to the ‘summary’ window. If everything looks fine, click on OK at the bottom.
Now you can simply open the video files stored in that directory and start 'streaming' it on your Amazon Fire TV Stick.
You can also stream images, and music to your Amazon Fire TV Stick, just add those directories to the samba config file.
Enjoy your private Netflix!
This article is published as part of the IDG Contributor Network. Want to Join?