This page is best viewed with a PC web browser.
If youâre new to HTPCs, you should work your way through this page before moving on to other, more specific pages in our Wiki.
HTPC stands for Home Theater Personal Computer.
Traditionally a HTPC is a PC with a purpose to play and/or serve media in a theater-type setting (living room, etc..). It does this through specific hardware and/or software.
Specific hardware can be a TV tuner card, high-end sound card, other decoder cards, remotes or a case optimized for noise and/or space.
Media can be video content from ripped personal discs, streaming services, audio, photos, or emulation gaming content. If you are planning on playing streaming services in >= 1080p, or >= 5.1 sound, you should use a media device instead. A traditional HTPC lacks HD video/audio for a lot of the streaming services and is poor at navigating them.
As computing power has gotten smaller and smaller, traditional PCs have given way to integrated media devices which have blurred the line over what a PC is.
A media device such as a Roku player is very small and performs most of the functions a PC does, with CPU, memory, storage, operating system, etc.. The biggest distinction is that these devices are usually designed specifically for playing streaming media in a Home Theater setting.
MOST of these small devices simply act as clients; to internet streaming services, like Netflix and/or personal content you have on local or network storage.
An example would be the Nvidia Shield TV. It is a powerful integrated device thatâs remote-oriented, with an Android media interface, supporting a wide range of streaming services, HDR and HD audio and video codecs for local content. It also can have storage connected to it which makes it a good all-in-one device.
This can be confusing; itâs not a traditional HTPC per-se, but performs the functions of one. Both traditional HTPCs and media devices have their place. Each is better at different things. Media devices are better as a front-end, as things like ease of navigation and streaming service video/audio support is king. A traditional HTPC is better at being flexible; running wide-ranging programs and utility, high-end gaming, web browsing, doing high-end video and audio processing or transcoding, and the ability to be a server and holds large amounts of storage. For more arguments for/against, read our section below.
Below weâll advise you on how to get started with a HTPC.
What is NOT a HTPC: Playing media just on your laptop. Playing media at your desk. Playing media on a computer monitor(s).
A HTPC whether it be a PC or media device, can act as a client, a server, both or standalone.
For instance, it can act standalone and play media from internal storage or streaming services to a connected TV/sound system. If you are planning on playing streaming services in >= 1080p, or >= 5.1 sound, you should use a media device instead. A traditional HTPC lacks HD video/audio for a lot of the streaming services and is poor at navigating them.
It can be a client connected to a TV/sound system and then connect to a server which provides it the media to play.
It can be a server which provides the media to the client as fore-mentioned.
It can be client and server as well; connected to a TV as a client, playing internal media, but also has server software installed, which it uses to send media to other clients in the home.
You should first decide which of these roles you need based on your use-case, budget, and hardware available.
You should reference the video/audio/storage sections of the wiki as a guide to overall concepts if youâre not familiar with them while researching a solution.
A simple setup may just have a standalone PC (pre-built or DiY) with the appropriate software or a media device. Usually if streaming or a remote-based interface is a priority, then a media device is best, where a PC is better for more customization, local content, keyboard/mouse interaction or lots of storage.
An advanced setup with might have a server/storage tucked away somewhere and one or more client PCs/media devices connected to each display.
Setups vary and there are many ways to do things. Finding the best way for you takes some time and research.
In the next section are listed some quick-fire pre-built solution recommendations for client and server hardware based on common use-cases. If youâre not satisfied with those for your use-case, detailed, complete solutions can be found in the Building/Buying page, with DiY components in their own page.
Once you build/buy your solution, you can then follow the recommendations in the software section and connect/configure things via the audio and video pages.
Here are recommendations for the most common scenarios, if you donât want to read our whole wiki and/or build something..
Streaming services only: Fire TV 4K stick (Amazon ecosystem) ($40), Onn 4k (Google ecosystem) ($30)
Streaming services + 4K local content, no HD audio: Fire TV 4K Max stick ($55), Onn 4k Pro (Google ecosystem) ($50). If poor wifi env, add micro-USB or usb-a ethernet adapter.
Streaming services + 4K local content, HD audio: Nvidia Shield Pro ($200)
4K local content, HD audio: Odroid C4/N2+ ($65/$80) + CoreELEC
Cheap Emulation Gaming: Odroid N2+ ($80) + EmuElec/Batocera OR Used: >= SFF/USFF PC - CPU >= i5-7500T, 8GB RAM, SSD ($75)
1080p Casual Gaming: Beelink SER5 Max (5800H) mini pc ($300)
Single Layer Dolby Vision, HD audio: Nvidia Shield Pro ($200)
1080p local content, HD audio: ROCK64-2GB / Orange Pi 3 LTS 2GB / Odroid C4 ($50)
1080p local content + Web Browsing (minimal), Linux: ROCK64-4GB / Orange Pi 3 LTS 2GB / Odroid C4 ($50)
1080p local/streaming content + Web Browsing (standard), Windows: Used: >= SFF/USFF PC - CPU >= i5-7500T, 8GB RAM, SSD ($75) OR New: >= N100 Mini PC ($150)
4K local/streaming content + Web Browsing (standard), Windows: Used: Intel i3 8th Gen NUC (NUC8I3BEH) ($100) OR New: Beelink N100 ($150) / EQR6 ($270) Mini PC
Media Server (no/1080p transcoding): Used: SFF/USFF PC - CPU >= i3-7100T, 4GB RAM, SSD ($60) OR New: >= N100 Mini PC ($150)
Media Server (4k transcoding): Used: SFF/USFF PC - CPU >= i5-8x00T, 8GB RAM, SSD ($90) OR New: >= N100 Mini PC ($150)
Network Storage: Storage Setup Guide
Everything else: Sample Builds/Pre-builts
HD Audio means Dolby TrueHD, DTS-HD, DTS:X, and/or Lossless version of Dolby Atmos
If you canât find an answer to your question in this FAQ, and are planning to post on the subreddit for help, please give as much information as possible.
We ask that you answer the following questions and paste them in your post, otherwise your post may be removed for lack of details.
Do NOT ask for help with playing media on laptop screens or PC monitors.
General Help
What is the nature of your question/problem? Please be as detailed (but concise) as possible.
What and how many devices are in your environment (client (pc, media device), server, avr, tv, soundbar)? Provide model numbers for all the relevant devices.
How are the devices connected from an audio/visual perspective? HDMI, optical, etc..
If applicable, what kind of network are you using? (wifi, wired ethernet, etc..)
If applicable, what video file codec/resolution/bitrate are you playing/serving (use mediainfo)?
If applicable, what audio file codec are you playing/serving (use mediainfo)? PCM, DD, DTS, TrueHD, AAC, Atmos, etc..
If related to a custom built device, please list all parts of your build.
What Operating System, software, software versions and software settings are being used?
Any other relevant information?
Build Help
For what purposes are you using the device (playing/serving media, PC apps, browsing, downloading, gaming)?
Will this device be a client, server, both or standalone?
What types of and how many other client devices will you be using, if any (roku, firetv, shield TV, google cast, tv app, etc..)?
What types of and how many other output, input or misc devices will you be using, if any (tv, avr, soundbar, etc..)?
What types of media will you play/serve? (local, streaming, etc..)? If streaming, what services?
How much media do/will you have (in GB)? Is it/will it be external (NAS) or connected to this device (internal/USB)?
What file types/resolution/bitrate will you be playing/serving?
What type of audio do you need to support? Stereo, DD/DD+, DTS, HD Audio (TrueHD, DTS-HD, Atmos)
What is your budget?
Do you want to build the device or do you want to buy a pre-built solution?
What is your timeframe for implementing the solution?
Any other specific requirements you have (size, noise, power, etc..)?
See our separate wiki page here
You may want to wake your HTPC from sleep (S3) or have the ability to power it on (S5) or off from your remote control or a mobile app. There are a few ways to do this. Each has its own pros and cons.
Wake/Power On/Off: Use HDMI CEC with another HT device. Wake: Pulse-Eight USB adapter, Wake/Power On/Off: Intel NUC 7+; add HTPC Control: NUC 7/8/10 + Pulse-Eight Int. CEC.
Wake: Use a Flirc USB device plugged into your HTPC and an IR remote
Wake/Power On/Off: DiY: Use a Flirc Streacom USB device wired into your HTPC mobo and an IR remote. Requires a case with an IR window or drill-modded to allow the IR signal into the module.
Wake: Use a HTPC with an IR sensor (Intel NUC 7/8/11, Asus PN, Gigabyte Brix) and a Pepper Jobs W10 IR remote
Wake/Power On/Off: DiY: Use a Silverstone ES02 and included remote or ES03-WIFI and mobile app
Power On/Off: DiY: Use a Simerec IR Remote Switch and an IR remote
Power On/Off: Plug your HTPC into a smart power plug. Use with mobile app and/or google/alexa voice tech. If youâre IoT-averse, use a dumb power plug w/remote instead.
Power On/Off: Plug your HTPC into a power strip with a master/control plus and configure your BIOS to set Power On for AC after power loss. Plug master/initial power-on device (like TV) into control port.
Wake/Power On: Configure Wake-on-Lan in your BIOS and on your network card. Use with a mobile app like Unified Remote
Wake/Power On/Off: Install a SwitchBot bot on your HTPCâs power button. Use SwitchBot Remote or mobile app.
If you want to control other devices from your HTPC, there are a number of ways depending on the target deviceâs capabilities. Potential solutions include taking actions on triggers from Task Scheduler and EventGhost, combined with actions to devices using hardware like Pulse-Eight (CEC), USB-UIRT (IR), Flirc USB (IR), IR Blasters (IR) and software like WinLirc, EventGhost CEC plugin, Home Assistant, Wake-On-Lan, and IFTTT.
While media devices are great frontends that are easy to use and navigate, theyâre not for every scenario. They are best when your usage profile is limited, esp. in terms of the software and hardware you want to use. These are a lot of the reasons you may want to use a PC for your HTPC instead of a media device.
You want to run apps/services on windows or linux, or use a specific, customizable interface, that is/are not available on media device operating systems.
You want to do moderate to extensive web browsing. Media devices, while they can do it, are not good at this from both a HTML spec perspective and for ease of navigation.
You want it to function as a server. You want to provide services like sonarr, radarr, tautulli, plex, VMs, bittorrent.
You want to have more control over video processing; with video renderers like madVR and SVP you can have more control and get better results when doing things like HDR->SDR tonemapping and image, chroma and frame-rate upscaling. You want video refresh rates beyond 60 Hz (e.g. 120 Hz). You need to use multiple displays.
You want more control over audio processing (decoding, mixing, equalization, etc..). You want HD audio (TrueHD/DTS-HD MA, Atmos/DTS:X) that most streaming devices like Roku, FireTV (some), Google TV, (not counting Nvidia Shields or SBCs) donât provide. Theyâll only do lower quality versions of DD/DTS/Atmos. See media devices section below for details per device.
Youâd rather use a keyboard/mouse instead of a remote for navigation. Media devices are better suited for remote-based navigation. PCs are better suited for keyboard/mouse.
You want to combine HTPC and other computing duties into one machine and/or you donât want to maintain more than one device.
You need more processing power than a streaming device can provide (Local gaming, emulation gaming >= GameCube, VR, etc..)
You like to build things. Youâd rather use commodity/DIY hardware/software.
You need more I/O ports or more of a variety of ports (USB, optical, gigabit LAN, 3.5â audio etc..) than most media devices provide and would rather not buy external hardware to do this. You plan to use hardware not supported on a streaming device (USB DAC, TV tuner card. sound card, etc..)
You want to have internal storage rather than external storage.
You have privacy concerns with proprietary systems.
For the software side of things, there are various tools you may need to take advantage of your HTPC. An OS, media player, media server, ripper, downloader, file renamer, etc..
Operating Systems:
Windows, Linux and Android are the most popular choices, as you can imagine.
If you want to get the highest resolution from streaming services (esp. DRMed ones), use HDR, video upscaling like madVR, or are combining with a gaming solution, you would use Windows.
Linux, alternatively, is possible, but you will be limited to lower resolution streaming services and no HDR with stock distros.
There are some specialized linux-based distros out there, like LibreElec/CoreElec which are OSes designed for running Kodi as the OSâs plugin-capable front interface. They also suffer from lower resolutions on streaming services but are very good for local content, emulation and game streaming, even HDR.
For Android ports to PC look at Android x86 or Bliss OS, but do not expect a TV-like interface, 4K streaming services or HD audio. You can run an Android container under Linux with Waydroid.
For a gaming-centric OS, if you have a AMD or Intel ARC gpu, look at the Gamescope interfaces of ChimeraOS and Bazzite.
Media Players:
For video streaming services, use Microsoft Edge to get 1080p+, or the serviceâs app (if available).
For simple media players, using local content, MPC-BE, VLC and MPC-HC are popular on Windows, with VLC on Linux.
If HDR passthrough is what youâre looking for, then look at MPC-BE, VLC or Kodi. For high-end video upscaling or HDR tonemapping, look at getting the madVR renderer for MPC-BE, Kodi, or MPC-HC For FPS upscaling, SmoothVideo Project.
But perhaps you want a more full-featured player/interface..
If you DONâT need to serve media to other devices and just want a well-supported, highly-customizable home theater front-end, look at Mediaportal, Jriver or Kodi. All three will pull down metadata for the media you point them to, keep track of what you have watched/havenât watched, keep playback progress, pass-through HDR, and play from your internal or network storage. For Kodi, start with Kodiâs First Time User guide and 3rd party guides like this. For the others, venture over to their subreddit or forums for setup help.
Media Servers:
If you DO need to serve media to other devices (local or remote), Plex Media Server is very popular and will index your media, pull metadata (like cover art/plot/cast/tv show data), track what you have watched/havenât watched and stream it out to your client devices. It also has a wide range of player apps to install on your client devices. For PC specifically, there is Plex HTPC (keybrd/remote-based) and Plex for Windows (mouse-based). If you donât like the plex-branded ones, you can, alternatively, integrate the Kodi player with the Plex server. For alternatives to Plex Media Server, there is Emby and Jellyfin. See our dedicated section for more information.
Launchers:
For a launcher interface to open multiple apps, look at Flex Launcher (Windows/Linux), Steam Big Picture mode (Windows/Linux/Mac), Omnimo for Rainmeter (Windows), Plasma Bigscreen (Linux), Windows 10 start menu in full screen mode, Windows tablet mode, or customize Kodi and use add-ons/favorites.
Organization:
To organize your content, look at Radarr (movies), Sonarr (tv), Lidarr (music) and Bazarr (subtitles). You can use these together to keep your content in properly named files/folders for Plex, retrieve subtitles and show you what content you have or donât have. You can interface with these using their respective web interfaces or with an app like nzb360 on an android device. For metadata management, look at Media Hoarder. For file management, look at Total Commander w/LAN plugin or X-Plore.
For an overall sense of how a basic HTPC platform should look with playback, serving, storage, and organization, look at our diagram here.
For a comprehensive guide to setting up all the backend organizational/serving software, the HTPC Box Guide will take you through a modern installation approach to the stack using Linux & Docker containers. The TRaSH Guide is a good supplement to this. For Windows, we can recommend The Ultimate Server Guide; even though itâs old, the concepts are the same. The Servarr Wiki is a great reference for all the *arr software.
Gaming/Emulation:
For game emulation, look at Batocera, LibreElec w/Retroarch, or Lakka (RetroArch on a stick) on Linux/dedicated OS; RetroArch, EmulationStation DE or Launchbox Big Box on Windows; RetroArch or OpenEmu on Mac; Lemuroid or RetroArch on Android; Provenance on Apple TV. Nostlan for 4k displays.
For game streaming, look at Sunshine on your server/gaming PC and Moonlight on your frontend client (Windows/Linux/Android/LibreElec/tvOS).
For gaming, look at Steam w/Windows or Linux, as well as ChimeraOS or Bazzite for a whole Steam-based OS.
Other software:
For Live TV software, see the dedicated section below.
For Optical disc playback, see the dedicated section below.
For Optical disc ripping and transcoding, see the dedicated section below.
If youâre planning on replacing cable/sat with similar streaming services, you will find r/cordcutters to be helpful.
If youâd like to have a podcast, audio podcast or audiobook library in Plex, see this handy guide.
This page has a list of additional, supplemental software relating to HTPCs.
Yes, however the interface quality and functionality varies widely and remote control support is almost non-existent. The services will detect your device as a PC and present you with their standard web or app-based interface. It may be up to you to start videos and expand them to full-screen.
If you donât plan on using a keyboard/mouse-like device, then streaming services on a PC will be painful. There are some workarounds like software to emulate a mouse on game controllers/mobile.
Other possible solutions are:
"%PROGRAMFILES%\Google\Chrome\Application\chrome.exe" --kiosk --enable-extensions --user-agent=Xbox https://www.youtube.com/tv
OR Leanback interface
"%PROGRAMFILES%\Google\Chrome\Application\chrome.exe" --kiosk --enable-extensions https://www.netflix.com
+ Netflix Navigator extension"%PROGRAMFILES(X86)%\Microsoft\Edge\Application\msedge.exe" --kiosk --edge-kiosk-type=fullscreen
) + TamperMonkey extension + Stream Assistant scriptIf those things arenât good enough for you, then you should buy a remote-based media device from the next section instead.
Using Windows Store apps for some of these services may be better than using a web browser in terms of video/audio support.
For example, the Netflix Windows Store app does support 4k/1080p streaming and Dolby Digital/Dolby Digital Plus soundtracks. Browser-based solutions tend not support DD/DD+ audio and some content will only be available in 720p. The app still does not have remote control support, but you can try adding 3rd party remote control support using the Netflix Remote Controller.
4K support for streaming services in general is limited on a traditional HTPC. See our sections on streaming service resolutions supported and 4K compatibility below.
Support for the higher resolutions and audio is way more prevalent on pre-built media devices, so if you use a lot of these services, itâs better not to use a PC. Again, see our media device section below.
In regards to bandwidth required, you should have 6 Mbps downstream to stream 1080p services. 25 Mbps for 4k.
Yes, you can. There are many already-built devices out there. Media devices from major brands like Roku/Amazon/Google/Apple/Nvidia/Roku will have better support for video resolutions/HDR than a traditional HTPC. See the next section/question for why you would choose one device or brand over another.
Beware of cheap no-name android boxes on obscure websites. They likely will have no or poor support and very little documentation if you run into trouble.
If youâre looking for the best Plex client, watch this video for tests on loading/scrolling/playing/audio/remotes/etc..
If you want a traditional standalone HTPC see the Mini PCs at the end of the list or our Sample Builds page for more extensive options.
Legend: PT: Passthrough, DC: Decode, LS: Lossy, LL: LossLess, DD: Dolby Digital, DV: Dolby Vision, DA: Dolby Atmos, DTHD: Dolby TrueHD, DV-5: Dolby Vision - Streaming Services, DV-7: Dolby Vision Disc Rips, EOL: End of Life
BRAND/MODEL | PRICE | RESOLUTION | 4k NETFLIX? | HDR? | WIFI? | LAN? | VOICE SEARCH? | USB? | NOTES |
---|---|---|---|---|---|---|---|---|---|
Raspberry Pi 4b / 5 (buy/buy) | $36/$60 | 4k@60 (2,4) | No | 10/HLG (2) | ac | 1000M | No | YES (8b) | HDR10/HLG, LL DA/DTSX w/LibreElec, BT 5.0 |
Odroid C4 (buy) | $55 | 4k@60 | No | 10 (6) | Opt | 1000M | No | YES (8b) | S905X3/4GB RAM. PT:LL DA/DTSX w/CoreElec |
Odroid N2+ (buy) | $66 | 4k@60 | No | 10 (6) | Opt | 1000M | No | YES (8b) | S922x/2GB RAM/8 GB SD. PT:LL DA/DTSX w/CoreElec |
Dune HD Box R Plus (buy) | $150 | 4k@60 | No | 10/+/DV (6) | ax | 1000M | No | YES (8b) | S905X4-K/4GB RAM/32 GB SD. DV-5/7/8, PT:LL DA/DTSX w/CoreElec |
Mi Box S (buy) | $65 | 4k@60 | YES | 10 | ac | No | YES | YES (8b) | PT:LS DD+/DTS, S905X-H/2GB/8GB, NTFS |
Apple TV 4k (2022) (buy) | $129/$149 | 4k@60 | YES | 10/+/DV | ax | 1000M (7) | YES | No | 3rd gen, A15, 3GB/64-128GB, DV-5/8, DC:DTHD/DTSHD->PCM, PT:LS DA, BT 5.0 |
Onn 4K (buy) | $20 | 4k@60 | YES | 10 | dual ac | Opt (9b) | YES | Opt (8a) | DC:NA, PT:LS DD/DTS, S905Y4 1.9Ghz/2GB/8GB |
Onn 4K Pro (buy) | $50 | 4k@60 | YES | 10/+/DV | ax | 100M, Opt (9c) | YES | Opt (8c) | DC:NA, PT:LS DA/DTS, S905X4 2Ghz/3GB/32GB |
ChromeCast w/Google TV HD (buy) | $30 | 1080p | No | 10/+ | dual ac | Opt | YES | Opt (8a) | AV1, DC:DD+, PT:LS DA/DTS, S805X2, 1.5GB/8GB |
ChromeCast w/Google TV 4k (buy) | $50 | 4k@60 | YES | 10/+/DV | dual ac | Opt (9b) | YES | Opt (8a) | 2nd gen. AV1, DV-5/8, DC:DD+, PT:LS DA/DTS, S905D3 1.9Ghz/2GB/8GB |
Google TV Streamer 4k (buy) | $100 | 4k@60 | YES | 10/+/DV | dual ac | 1000M | YES | Opt (8c) | 3rd/latest gen. AV1, DV-5/8, DC:LS DA/DTHD/DTSHD->PCM, PT:LS DA/DTS, MT8696/4GB/32GB |
Amazon Fire TV stick 4K MAX (2023) (buy) | $60 | 4K@60 | YES | 10/+/DV | tri ax 2x2-6e | Opt (9a) | YES | Opt (8a) | 2nd gen, AV1, DV-4/5/8/9/10, PT:LL DA/DTSHD, 2.0Ghz/2GB/16GB |
Amazon Fire TV stick 4K MAX (2021) (buy) | $55 | 4K@60 | YES | 10/+/DV | dual ax 2x2-6 | Opt (9a) | YES | Opt (8a) | 1st gen, AV1, PT:LS DA, 1.8Ghz/2GB/8GB |
Amazon Fire TV stick 4K (2023) (buy) | $40 | 4K@60 | YES | 10/+/DV | dual ax 2x2-6 | Opt (9a) | YES | Opt (8a) | 2nd gen, DV-4/5/8/9/10, PT:LL DA, 1.7Ghz/2GB/8GB |
Amazon Fire TV stick (buy) | $40 | 1080p | NO | 10/+ | dual ac 2x2 | Opt (9a) | YES | Opt (8a) | 3rd Gen, DC: LS DA, PT:LS DA/DTS, 1.7Ghz/1GB/8GB |
Amazon Fire TV stick Lite (buy) | $30 | 1080p | NO | 10/+ | dual ac 2x2 | Opt (9a) | YES | Opt (8a) | BT 5.0 LE, PT:LS DA/DTS, 1.7Ghz/1GB/8GB |
Amazon Fire TV cube (buy) | $140 | 4K@60 | YES | 10/+/DV | tri ax 2x2-6E | 10/100 (9a) | YES | YES (8b) | 3rd gen, AV1, PT:LL DA/DTSHD,DC:LL DA->PCM, 2.2Ghz/2GB/16GB, NTFS |
Roku Express (buy) | $25 | 1080p | NO | NO | n | No | No | No | DD, PT:LS DTS/DA |
Roku Express 4K/+ (buy/buy) | $35/$40 | 4k@60 | YES | 10/+ | dual ac | No/Opt | No/YES | Opt | DC:DD/PT:LS DTS/DA |
Roku Streaming 4K (buy) | $50 | 4k@60 | YES | 10/+/DV | dual ac 2x2 | No | YES | No | 1GB, DC:DD/PT:LS DTS/DA. Model: 3820R2 |
Roku Ultra (buy) | $100 | 4k@60 | YES | 10/+/DV | ax | 100M | YES | YES (8b) | 2GB RAM, DC:DA, PT:LS DTS/DA, AV1, NTFS. Model: 4850R |
Roku Ultra LT (buy) | $80 | 4k@60 | YES | 10 | dual ac | 100M | YES | No | 2GB RAM, DC:DD+, PT:LS DTS/DA. Model: 4801RW |
Vero V (buy) | $150 | 4k@60 | No | 10/+ | ac | 1000M | No | YES (8b) | OSMC, PT:LL DA/DTSX, 2Ghz/4GB/32GB, NTFS |
Nvidia Shield TV Tube (buy) | $150 | 4k@60 | YES | 10/DV | ac | 1000M | YES | No | DV-5/7/8, PT:LL DA/DTSX DC:DA, 2GB/8GB, NTFS, microSD |
Nvidia Shield TV Pro (buy) | $199 | 4k@60 | YES | 10/DV | ac | 1000M | YES | YES (8b) | DV-5/7/8, PT:LL DA/DTSX DC:DA, 3GB/16GB, NTFS |
Nvidia Shield TV (2017) (buy) | $179 | 4k@60 | YES | 10 | ac | 1000M | YES | YES (8b) | PT:LL DA/DTSX, 16GB, NTFS |
Xbox One S/X (buy) | $200-$400 | 4k@60 | YES | 10/DV | dual-ac | 1000M | No | YES (8b) | PT:LL DA/DTSX, 1TB, UHD-BR |
Mini PC: i3/i5-8x00T (buy) | $100 | 4k@60 (10a) | YES | 10 | n/ac | 1000M | NO | YES (8b) | PT:LL DA/DTSX |
Mini PC: Intel N100 (buy) | $150 | 4k@60 | YES | 10 | ac | 1000M | NO | YES (8b) | AV1, PT:LL DA/DTSX. w/RAM&SSD |
Mini PC: Intel NUC i3/i5/i7 (buy) | $300-$900 | 4k@60 | YES | 10 | ac | 1000M | NO | YES (8b) | AV1 (3), PT:LL DA/DTSX. add $45 for 8GB RAM/128GB SSD |
NOTE: Buy links to Amazon go through Amazon Smile to support your favorite charity
(2) 4k and HDR support using LibreElec >= 10.0.2 and Kodi
(3) >= 11th gen
(4) Anything other than HEVC is supported at only 1080p
(6) Running Coreelec/Libreelec
(7) 128GB model
(8a) FAT32, (8b) NTFS+EXFAT+FAT32, (8c) EXFAT+FAT32. âOptâ devices must use OTG cable
(9a) micro-usb Ethernet Adapter, (9b) usb-c Ethernet Adapter, (9c) usb-a Ethernet Adapter. <= 350 Mbps
(10a) w/HDMI 2.0 card
The Amazon FireTV sticks, Roku and Google ChromeCast w/Google TV products all work very similarly at their respective price levels. Performance, interfaces, remotes all on par with each other with minor differences like types of buttons offered, apps supported, private listening, etc.. Limitations are similar as well; lack of USB storage and no lossless sound output is common across platforms. If youâre just looking for something simple to plug into your TV and play Netflix/Hulu/Amazon Prime, $40 or so will get it done.
Your choice may come down to a particular ecosystem youâre already tied to or want to get into.
If you use/want to use Amazon Alexa a lot you may want to go with a FireTV device.
If you use/want to use Google Assistant a lot or want an Android TV experience, you may want to go with a Chromecast w/Google TV.
If you want something more content provider-agnostic that searches across them well and has a lot of curated/free content, you may want to go with a Roku device.
Once you start looking for advanced features, like external storage, gigabit ethernet, lossless audio or better performance for game streaming/emulation, you should start looking at pricier devices like the Nvidia Shield Pro, Fire TV Cube, and Odroid N2+
From an Antenna (OTA) or ClearQAM Cable (unencrypted):
Using an over-the-air (OTA) HD antenna avoids the âcopy onceâ problem and most users are surprised by how much mainstream content they can get over the airwaves for free. Alternatively, with Cable, your provider may provide unencrypted ClearQAM channels, usually standard broadcast stations, without a cablecard. Even if you are not a cable TV subscriber, if the cable is connected to the providers network, they may still be sending ClearQAM programming into your home.
If you use Plex Media Server, you can put a local pcie/usb tuner in your Plex server and set it up for Live TV and DVR, to be accessed by your preferred Plex client. You can find a list of Plex compatible tuners here.
If you canât or donât want to place the tuner at your server, you can use a networked tuner like a HDHomerun which you can find off ebay for cheap.
If you donât have ethernet access, you can either use a wifi-capable tuner, like a Tablo which is simpler to set up, or connect a HDHomerun to a Ethernet->Wifi bridge.
For Antennas, stick to well-known brands like Channel Master, Antennas Direct, Winegard and Televés. For reception signal maps check here, here and here
If you donât want to use Plex to interface with your tuner, but want similar simplicity, you can install the Channels server/dvr somewhere (they support a range of hardware), point it to a networked HDHomerun (and ONLY HDHomerun) tuner and then access it with the Channels client app.
A more involved setup would be connecting a tuner to a Raspberry PI and using the TVHeadend backend with tvhProxy to get the tuner into Plex. Again, if you donât want to use Plex, skip tvhProxy and simply use Kodi with the TVHeadend client on your frontends to access the TVHeadend backend.
You can use MCEBuddy to remove commercials and convert your recorded programming to other file formats.
For a more complete, albeit old, guide to setting up live TV with a generic TV tuner using ServerWMC and MediaBrowser, see this post.. You can use MCEBuddy remove commercials and convert your recorded programming to other file formats for use with PleX Media Server, Kodi or Mediabrowser.
From Cable (encrypted):
The most common solution is to use a Silicon Dust HDHomerun Prime tuner, a Cable Card from your cable provider, and Windows Media Center software as the recording front-end. Presently, Windows Media Center is the only known way (using Windows) to record channels marked âcopy onceâ by your cable provider. Different cable providers flag channels differently, and some flag all programming this way. Flagged content recorded by WMC can only be streamed to official WMC extenders, which are rare. But you can use ServerWMC to provide live TV to Kodi or MediaBrowser/Emby clients.
If you only want to watch âcopy onceâ channels, you can use the official HDHR app on Android, Xbox, Windows, etc..
If you donât need âcopy onceâ channel support, then your options are similar to the Antenna section above, albeit your tuner still being the HDHomerun Prime. That is, adding your tuner into a Plex Media Server or into a Channels server and using their respectively client apps, or accessed directly with Kodi/Mediabrowser and its add-on.
NOTE: Cable Cards are becoming increasingly rare. You should eventually move to streaming from your Cable Service provider or a dedicated TV Streaming Service provider, in the next two options. Also, Windows 10+ will not include or support Windows Media Center or ServerWMC, but it will continue to work with older versions of Windows.
From Cable Service (over the internet):
If you donât want to or canât use a tuner with an antenna or cable connection, some TV providers will allow you to pull TV programming over the internet.
To do this, you need your normal cable subscription service, a login to your provider and a client/server program. The easiest way to currently do this is to install the Channels DVR Server software somewhere on your network, configure it to use the TV Everywhere feature, with your provider and login credentials and then use the Channels client software on your devices to access the channels. On a PC client this can be done either through the serverâs web ui or via Kodi with the Channels DVR plugin.
From Streaming Service (over the internet):
Youtube TV, DirectTV Stream, Hulu Live TV or Fubo on the premium end. Philo or Sling TV on the low-end. It depends on the channels you want.
From your own media content:
If you want to make virtual TV channels out of your own content, looks at dizquetv and ersatztv in combination with either a Plex/Jellyfin/Channels DVR-type server or directly with clients like VLC or TiviMate through m3u playlist files.
Figure out how many clients you will be serving to simultaneously and what types of clients (local or remote). Assume you will be transcoding content for at least 1/3 of the clients (unless you know otherwise). So, for example, if you determine you will have 3 simultaneous clients, assume 1 of them will be transcoding, so choose a server with hardware that can do at least 1 transcode.
Look at the Sample Builds page for pre-built and DiY media server solutions based on that. You can buy a very capable media server for under $200. Donât forget to take into account the amount of storage you need, which can be signifigant, whether it be internal, external, or networked with a NAS. Ripped/Remux 1080p movies can reach 25GB in size EACH, with 4k ones up to 4x that.
Once you have the hardware you need, connect the media server and/or NAS to your router over ethernet, attach and/or mount the internal/external storage to the server, install and configure media server software, then install the serverâs player software on your media client devices.
Media serving software can be PleX Media Server or something similar like Emby/Jellyfin. The advantage of these media servers is that they can transcode the files in real time to meet the needs of your target client device (HTPC, phone, tablet, smart tv, remote client, etc.) and organize your media with metadata. It will serve the media to your client devices or HTPCs using the softwareâs respective client app, over the network. Make sure your network that is serving the clients has bandwidth sufficient to do this. Ideally the clients should be on 100 Mbps ethernet for 1080p content or 1 Gbps ethernet for 4k content. If youâre attempting to use wifi instead, make sure the clientâs bandwidth (via a speed test) is greater than that of your contentâs bitrate. Running these on Linux or a dedicated OS (like Unraid/TrueNAS/OMV) provides the most capabilities (esp. for gpu transcoding), but Windows is also possible.
If you donât want to use media serving softwares, or you donât need real time transcoding, you can simply share your content storage out using a network samba share, whether that be configured in windows or linux, or connected to a router with a USB port. You can then access the network samba share on your media clients, and use normal media players like Kodi, MPC-BE, etc.. to play the content. For those instances where you canât use one of these media players (to access network samba shares), try a DLNA server and client.
See our separate wiki page here
The max resolution and audio supported by a particular service on a traditional HTPC varies by the service, OS and program (browser/app) used. For better video, audio and HDR support, use a media device instead.
The following are the current capabilities of the major streaming services as we know them. These are always subject to change, both for the better and for the worse. If you have any contradicting data, please let us know.
Ideally, you shouldnât; especially for UHD/4K, as the system requirements are so restrictive to make it not worth-while.
You should rip your discs to digital files per Wiki:How can i rip my DVD/Blu-ray discs and what are some good quality settings to use?
If you must have menus, which is presumably the reason you want disc playback, create an unencrypted ISO of it.
If you must have disc playback:
See our Optical Drive section of the Hardware Components page for drive selection
For DVDs and regular HD blu-ray any optical drive that can read the discs will do, internal or external, and you can spend <= $75 on one. For UHD discs, you should have a UHD or UHD-Friendly compatible drive with locked-in firmware. Check our optical drives section.
You will then use software to rip the content off the disc. Itâs recommended to do this process in two stages, especially if you need content re-encoded for compatibility or space-saving..
First, use the MakeMKV program to extract the content off the disc. You can choose all the video/audio titles on the disc, just some of them, or just the main one. In the end, this will make a full quality MKV file without changing the format or size of the content. This isnât CPU heavy and can be done on a very minimal system.
If you want to make a full ISO instead of an MKV, click the Backup icon in the toolbar to output the disc to (DVD: an ISO file; Blu-Ray: a folder, then make an ISO of the folder using ImgBurn).
If youâre after the best quality, youâre done. Play the file with your favorite media player or put the file on your media server storage for serving.
However, these full quality files are large. DVDs can be up to 9.9GB (11 Mbps), FHD Blu-rays 36GB (40 Mbps), and UHD Blu-Ray 115GB (128 Mbps) for 2 hours worth of content. For this reason, some people move to stage two next and use a program called Handbrake to make the files smaller while giving up on some visual quality. Itâs up to you.
Handbrake is used to re-encode content for size, bandwidth and/or compatibility. The goal is to create a file that is highly compatible with client devices and is reasonable on bandwidth use, but doesnât negatively effect the video quality. Re-encoding can take a long time, depending on how fast your CPU is; a modern 4-6 core CPU is ideal, but if you donât care about how long it takes, then it doesnât matter. You can also use a iGPU/dGPU for faster encoding times. Intel QSV (QuickSync) and Nvidia NVENC encoders are supported, but while you reduce encoding times, you also reduce visual quality a bit as GPUs arenât as good encoding as CPUs.
In Handbrake..
Open the content file and on the Summary tab, choose MP4 or MKV for the output Format. Neither changes the file size. MP4 is compatible with more devices, but MKV has better embedded subtitle and multi-track audio support. If youâre using subtitles and want to embed them into the file, use MKV.
On the Dimensions tab, if you want to downscale to a different resolution, use Resolution Limit.
On the Video tab:
Video Encoder: h.264 codec, for best client compatibility decoding. Alternatively, the h.265 codec is also possible and will yield better compression on >= 1080p content, but if you have old clients (pre-2016), decoding could be a problem. Consider what client hardware your files will play on first and their capabilities.
Framerate : Same as Source, Constant Framerate
Encoder Options: Encoder Preset: Medium, Encoder Tune: Film, Encoder Profile: High, Encoder Level: 4.1
Quality: Constant Quality is the more efficient encoding method. Use 19 RF (DVD) or 18 RF (Blu-Ray). Use 20 if youâre really tight on disk space. If you need to hit a target file size, then use Avg Bitrate instead, but you should use bitrates of >= 1500 kbps (DVD), >= 3000 (720p), >= 7000 (1080p), >= 25000 (4K).
On the Audio tab, the default is to convert the audio track to a highly compatible AAC, stereo track. If you want to preserve HD audio from your content, you should set the track shown to Passthru instead and then optionally add an additional AAC/Stereo audio track for client compatibility.
A lot of these settings are subjective, especially video and audio quality. Play around with the settings until you find ones that meet your requirements for a balance between visual/audio quality, disk space and encoding time.
For a more automated way to do this process, look at Automatic Ripping Machine
If you want to use a pre-built HTPC/media device
See the top of our Sample Builds wiki page or our table of media devices above.
If youâre building a traditional DiY HTPC
Short version:
See the DiY section of our Sample Builds wiki page.
4k local content: HDMI 2.0 motherboard (1.4 if only 30fps non-HDR), >= Intel 7th Gen/Gemini Lake/Athlon 200GE/Ryzen 2200G CPU OR CPU (>= circa 2008) + dGPU >= Nvidia GT1030/AMD RX 550/5x00 (REC: Ryzen 4600G+B550 mobo).
4k youtube: HDMI 2.0 motherboard, >= Intel 7th Gen/Gemini Lake/Athlon 200GE/Ryzen 2200G CPU OR CPU (>= circa 2008) + dGPU >= Nvidia GT1030 GDDR5/AMD RX 5x00 (REC: Ryzen 4600G+B550 mobo).
4k netflix: HDCP 2.2 display, HDMI 2.0 motherboard, >= Ryzen 3200G/3400G CPU OR >= Intel 7th Gen/Gemini Lake CPU OR CPU (>= circa 2008) + dGPU >= Nvidia GTX 1050 3GB/AMD RX 550/5x00 (REC: Ryzen 4600G+B550 mobo). Windows 10+. Microsoft HEVC Video Extensions. Intel MEI driver/ME firmware (Intel iGPU). Netflix app/Microsoft Edge browser. Netflix Premium Plan. Netflix Test Patterns.
4k/UHD Blu-Ray disc playing: HDCP 2.2 display, HDMI 2.0 motherboard w/SGX support, Intel i3/5/7/9 7th-10th Gen CPU w/iGPU ONLY (REC: Intel i5-8xxx+Gigabyte H370N mobo). Windows 10+. Use of a dedicated GPU (dGPU) is not supported.
4k@120Hz: See Wiki:Video:What options are there for 4k @ 120 Hz video output?
Long version:
MAIN REQUIREMENTS
The major requirements for full 4k compatibility are HDMI 2.0a, HDCP 2.2, hardware HEVC decoding (and support for Intel SGX in the bios if playing UHD blu-ray discs). Anything less will be a limited and incomplete implementation of the upcoming standards.
HARDWARE
Virtually all modern CPUs with integrated graphics can display 4k video. BUT, all of the components in your home theater (TV, AV Receiver and HTPC motherboard) will need to have a HDMI 2.0a port in order to use all sources of 4K content.
On the AMD side, this starts with the Ryzen 2200G and on with any supported motherboard. Buy a Ryzen 4600G and B550 motherboard and move on.
On the Intel side, this started with 7th gen (7xxx) CPUs, but required a special hdmi 2.0 motherboard; But since 11th gen (11xxx) CPUs, any supported motherboard will work. Buy a i3-12100 and B760 motherboard and move on.
If one of the motherboards doesnât fit what you need, or you are upgrading an older, existing system that lacks the above, you can choose a dedicated GPU to add on to your system that has these features. The Intel Arc A380 is popular, as is the RX 6400 on the AMD side.
You CAN display 4k video at 30hz via older HDMI 1.4 and 4k video at 60hz via a Displayport 1.2 connection but you will run into other problems. HDMI 1.4 wonât support HDCP 2.2/4k blu-ray/Netflix and the Displayport 1.2 connection wonât display HDR content, so stick to the more modern iGPUs/dGPUs above.
DRM
If you plan on playing DRM protected content, for instance 4k netflix, you will need to have a HDMI 2.0 port that supports HDCP 2.2 or a Displayport with an active DP 1.x->HDMI 2.0 adapter. This can take the form of an AMD Ryzen 3200G+ CPU with supported mobo OR Intel 7th-14th Gen CPU and supported motherboard OR Any CPU and an add-on dGPU, only Nvidia >= GTX 1050 3GB, AMD >= RX 4xx/5xx/5x00/6x00, or Intel >= ARC A310.
If you plan on playing UHD Blu-ray discs, things are even more restrictive; you are further limited to Intel CPUs w/SGX support (Intel i3/5/7/9 7th-10th Gen ONLY) + a HDMI 2.0 motherboard w/SGX support. Dedicated GPUs are NOT supported. We do not recommend this and you should play rips or ISOs of your discs. See our wiki section here.
To test for HDCP 2.2 compliance, use Cyberlink Ultra HD Blu-Ray Advisor or Corel Ultra HD Blu-Ray Check Tool
SOFTWARE/CONTENT
The only 4k content supported on a PC are: Local files, UHD blu-ray discs, Youtube and Netflix. See the section above on what resolutions are supported for other services and our software section for players.
If you want access to more 4k content, on your favorite streaming services, use a media device instead.
It is highly likely that the 4K content will be encoded in the H.265 (HEVC) codec, the successor to H.264. Hardware decoding of H.265 is limited to:
All options are sufficient, and have benchmarked playing 4K 400Mbps bitrate videos at >= 70fps (See Here). Most 4K videos encoded in HEVC have avg. bitrates between 15-128Mbps (Netflix 4K is HEVC encoded at 16Mbps).
HDR is also a popular feature these days. For additional requirements, see the section below.
COST
If you go the CPU w/IGPU route, you can expect to spend about $125 for a CPU (like a Intel i3-12100 or AMD Ryzen 4600g) and between $90-$150 for a Intel B760/AMD B550 motherboard, respectively, depending on the form factor.
If you go the dedicated GPU route, an Intel ARC A380 will cost around $100, while a AMD RX 6400 will cost around $140.
With either option, expect to spend more than $450 on a complete new build. You can get away with less if you get a used SFF system off ebay and add one of the low profile dedicated GPUs. See the Sample Builds wiki page.
If you are unsure what to get for your particular requirements, ask us and we will steer you in the right direction.
HDR stands for High Dynamic Range. Itâs a technology used to produce better looking video by preserving details in the darkest and lightest portions of a frame resulting in better contrast. Common standards are HDR10, HDR10+ and Dolby Vision.
For a HTPC, this means HDR support must be in the video, GPU, video interface (HDMI/DP) and ultimately your output device (typically a TV).
HDR10 is supported on HTPCs under Windows, macOS Catalina, Android and (usually) libreelec/coreelec operating systems. Linux is NOT supported.
DOLBY VISION AND HDR10+ MEDIA PASSTHROUGH IS NOT SUPPORTED ON HTPCS; If you need support for these, youâll need a media device/non-PC, like a Nvidia Shield, Fire TV, Dune HD, etc..
HDR streaming content is limited thus far and only found on Netflix and Youtube services. If you want access to more HDR content on your favorite streaming services, use a media device instead.
That being said, HDR is supported on a PC with at least HDMI 2.0a or DisplayPort 1.4 ports.
If youâre not comfortable building DiY, look at the pre-built recommendations at the top of the Sample Builds page.
Otherwise, if you stick to Ryzen APUs or Intel >= 11th gen CPUs below, any paired motherboard will have the HDMI port you need.
The following CPU iGPUs/APUs are officially supported:
Intel 7th+ Gen (7xxx+) Core i3/i5/i7/i9/Ultra, Intel >= 12th gen (G6900/G7400) Celeron/Pentium, Intel N5xxx/N6xxx Jasper Lake. (REC: Intel i3-12100+B760 mobo)
AMD >= Ryzen 3 2x00G APU, >= Athlon 2x0GE/3000G (REC: Ryzen 4600G+B550 mobo)
Itâs also available on the following dGPUs: Nvidia GTX >= 950, GT >= 1030, Titan X, Quadro P5000/P6000, AMD RX >= 4x0/5x0/5x00, Radeon 7, Vega 56/64, Intel ARC >= A310.
For older DiY motherboard support, reference our HDMI 2.0 motherboards page.
For setting up HDR on your client, See our separate wiki page here
This section applies to DiY
CPUs use power, sometimes more than you want. This power usage produces heat, which makes your fans work harder and sound louder to keep the CPU temperature under control. This number is the TDP and is in watts.
CPU mfgrs like Intel and AMD sometimes make low-power versions of their CPUs with a lower TDP.
Intel makes 65W and 35W versions of their i3 CPUs, with the 35W version having a âTâ suffix (e.g. i3-12100T vs i3-12100) with a signifigantly lower Base Frequency to stay within the 35W limit.
AMD makes 65W and 35W versions of their APUs, with the 35W verion have a âEâ suffix (e.g. 3400GE vs 3400G) with a signifigantly lower Base Frequency to stay within the 35W limit.
Usually, the low-power models are more expensive and limited in availablility, therefore harder to find.
Itâs better to just buy the normal power version and lower the Frequencies and/or TDP yourself using available methods.
This tends to be easier on AMD as they have a 45W profile you can choose for 65W APUs and you can also underclock the frequencies without restriction.
Intel has options as well for their CPUs, theyâre just less varied or more restrictive.
Here are the methods you can use:
Intel
Audio: See our separate wiki page here
Video: See our separate wiki page here
See our separate wiki page here
THIS QUESTION IS UNDER CONSTRUCTION!
If internet is available, and automation isnât needed, then a Roku is usually the easiest solution.
But if internet is not available and/or local content playback/automation is desired, this lends itself well to HTPCs, especially under x86 hardware with linux, windows, or especially hardware that supports installing Libreelec (like Raspberry Pis and cheap mini pcs) so you can boot directly into Kodi
Some options/considerations are:
Notes:
<onload>
and PlayMedia()
in a skinâs Startup.xml and guisettings.xml
--fullscreen --loop --playlist-autostart --playlist-tree <path>
Â
This page was last updated on 2024-10-23