24-hour free trial
IPTV Gold

Devices & players

Hardware vs software decoding: the right decoder for every IPTV device

By the IPTV Gold editorial team · How we write and test

Should I use hardware or software decoding for IPTV? Last updated:

Use hardware decoding by default. It runs on a dedicated video chip, so it plays HEVC and 4K smoothly with little heat or battery drain. Switch to software decoding only to test one misbehaving channel, such as a green picture or black screen with sound, and only on Full HD or lower streams.

Chip illustration comparing hardware vs software decoding, with HW and SW labels beside a TV screen
Hardware decoding uses the video chip and software decoding uses the processor; for IPTV, hardware is almost always the right default.

16 min read Published Devices & players

Every IPTV channel reaches your device as a compressed stream, and something has to turn that stream back into pictures 30 or 60 times a second. That job is called decoding. Your player lets you choose who does it: a dedicated video chip (hardware decoding) or the device’s main processor (software decoding).

Most of the time you never think about it, because players default to hardware decoding and it simply works. The setting starts to matter when something goes wrong: a green picture on one channel, a black screen with sound, a 4K channel that stutters, or a Fire TV Stick that feels hot to the touch. The wrong decoder causes some of those problems, and the right one fixes them.

This article explains H.264 and HEVC, what the HW, HW+ and SW labels mean in TiviMate, IPTV Smarters, MX Player-style apps, VLC and Kodi, and which setting suits the devices found in Canadian homes, from a Fire TV Stick Lite to a Windows desktop. It finishes with a symptom table and a five-minute test you can run tonight.

What a video decoder actually does

Video is enormous before it’s compressed. A single 1080p frame holds about 2.07 million pixels, and at the 8-bit colour format TV uses, each pixel needs about 1.5 bytes. That’s roughly 3.1 MB per frame, and at 60 frames per second it comes to about 187 MB every second, or close to 1.5 Gbps.

A Full HD channel might arrive at around 8 Mbps instead. The arithmetic says the stream is compressed by a factor of roughly 190: 1,500 Mbps divided by 8 Mbps. For a 4K channel at 60 frames, the raw figure is about 6 Gbps, squeezed into something near 25 Mbps.

Compression works by storing a full picture now and then (a keyframe) and, in between, only the changes from one frame to the next. The decoder’s job is to rebuild every complete frame from those pieces, in order, on time, without ever falling behind. Miss the deadline and you see a dropped frame; get the maths wrong and you see coloured blocks.

Decoding is also separate from your internet connection. A perfect gigabit line won’t help if the decoder can’t keep up, and the strongest decoder in the world can’t play a stream that never arrives. Keeping those two problems apart is half of troubleshooting.

H.264 and HEVC: the two codecs behind your channels

A codec is the method used to compress and decompress video. IPTV lineups rely on two of them, and your device needs to handle both.

H.264 (AVC)HEVC (H.265)
Standard published20032013
Where you’ll meet itSD, HD and most Full HD channels4K channels, HDR content, some Full HD channels
EfficiencyThe baselineRule of thumb: similar quality at roughly half the bitrate
Decoding effortLightNoticeably heavier, especially in software
Colour depthUsually 8-bit8-bit (Main) or 10-bit (Main 10)
HDRRare in practiceHDR10, HLG and Dolby Vision all use it
Hardware supportUniversal on streaming devicesStandard on current devices; older or budget hardware may lack 10-bit

Why 4K channels are almost always HEVC

The efficiency gap decides it. A 4K picture has four times the pixels of 1080p, and H.264 would need a bitrate many homes couldn’t sustain on Wi-Fi. HEVC brings 4K down to a level that a decent connection handles, at the price of more work for the decoder.

The data maths shows why this matters even with an unlimited plan. One megabit per second for an hour is about 0.45 GB, so a 25 Mbps 4K stream uses roughly 11 GB an hour. The same picture in H.264 would need far more.

8-bit, 10-bit and HDR

HDR video needs 10-bit colour, which in HEVC means the Main 10 profile. A device can decode HEVC in hardware and still lack Main 10 support, which is common on older chips. On those devices an HDR channel either refuses to play or forces the player into software decoding it can’t sustain.

Interlaced channels

North American broadcast HD has long been produced as 1080i or 720p, and many live channels keep that format. In 1080i, each frame arrives as two half-pictures that the device has to weave back together, a step called deinterlacing. Hardware decoders on streaming boxes handle this with varying quality, so a scrolling news ticker can look combed or jittery on one device and clean on another.

A large lineup of Canadian IPTV channels mixes sources with different codecs, resolutions and frame rates. Your decoder may handle H.264 at 720p on one channel and 10-bit HEVC in 4K on the next, which is exactly why a single setting can work on 99 channels and misbehave on the hundredth.

Hardware decoding: the dedicated video engine

Every streaming stick, TV box, phone and graphics card contains a block of silicon built only for decoding video. It’s fixed-function hardware: it knows a specific list of codecs and profiles and decodes them very efficiently, using a small fraction of the power the main processor would need.

On Android devices, apps reach this block through the system’s MediaCodec framework. On Windows, it’s DXVA2 or Direct3D 11 video acceleration. On Apple devices, it’s VideoToolbox. The labels in your player’s settings usually map to one of these.

Hardware decoding has clear strengths:

  • It plays 4K HEVC smoothly on devices with modest processors, including a Fire TV Stick 4K Max.
  • It runs cool, which matters for a stick tucked behind a wall-mounted TV.
  • It saves battery on phones and tablets.
  • It leaves the processor free for the guide, the menus and background updates, so the app stays responsive.

Its weakness is rigidity. A hardware decoder handles what it was designed for and nothing else. A stream with an unusual profile, a resolution change in mid-broadcast or a damaged frame can trip it up, and because the logic lives in the chip, an app update can’t teach it new tricks. Fixes come only through device firmware or graphics driver updates, if at all.

Software decoding: the processor does the work

Software decoding runs the same maths on the device’s general-purpose processor, usually with libraries derived from the open-source FFmpeg project. Because it’s just code, it’s flexible: it accepts odd formats, recovers better from damaged data and improves whenever the app updates.

The cost is processing power. Decoding 1080p at 60 frames per second in software keeps several processor cores busy, and 4K HEVC is beyond the processor of any streaming stick. When software decoding can’t keep up, frames are dropped, motion stutters and audio can drift ahead of the picture. Meanwhile the chip heats up, and phones drain their batteries quickly.

Hardware decodingSoftware decoding
Where it runsDedicated video block in the chipMain processor cores
4K HEVC on a streaming stickSmoothNot realistic
Heat and power useLowHigh
Tolerance of unusual or damaged streamsLowerHigher
How it improvesFirmware or driver updates onlyEvery app update
Deinterlacing optionsWhatever the chip offersChosen in the app, such as VLC’s modes
Best useThe default for every channelA test, or a fix for one stubborn channel at HD or lower

HW, HW+ and SW: what the labels mean in each player

Each player names its decoder options differently, and the menus move between versions. The table shows where to look in the apps used most often with IPTV.

PlayerOptions you’ll seeWhere to find themSensible default
TiviMateHardware or software decoderSettings → Playback; labels vary slightly by versionHardware
IPTV Smarters ProChoice of playback engine, plus a decoder option in some versionsSettings → Player Selection, then the player’s own optionsBuilt-in player with hardware decoding
MX PlayerHW, HW+ and SWThe HW/SW label at the top right during playback; defaults under Settings → DecoderHW+ where available
VLC for AndroidAutomatic, Disabled, Decoding acceleration, Full accelerationSettings → Video → Hardware accelerationAutomatic
VLC for WindowsAutomatic, Direct3D11 Video Acceleration, DXVA 2.0, DisableTools → Preferences → Input / Codecs → Hardware-accelerated decodingAutomatic
Kodi on AndroidMediaCodec (Surface) and MediaCodecSettings → Player → Videos, at Advanced or Expert levelBoth on
Kodi on WindowsDXVA2Settings → Player → Videos, at Advanced or Expert levelOn

TiviMate

TiviMate uses hardware decoding unless you change it, and that’s the right choice on every TV device it runs on. If a single channel shows a green or blocky picture, switch to software as a test, replay that channel, then switch back once you know the answer. Software decoding of 4K on a stick will stutter, so never leave it on for a 4K group. The TiviMate settings guide covers the rest of the Playback menu, including the options that sit next to the decoder.

IPTV Smarters Pro

Smarters lets you pick the playback engine under Settings → Player Selection: its built-in player, a VLC-based option on some versions, or an external player installed on the device. If one channel misbehaves in the built-in player, trying a different engine is a quick test, because each engine has its own decoding path. Keep the built-in player with hardware decoding as your everyday setting.

MX Player and ExoPlayer-based apps

MX Player uses three labels that several other Android apps have borrowed:

  • HW uses Android’s standard hardware path.
  • HW+ is MX Player’s own way of driving the same hardware block, and it’s often more compatible with unusual streams.
  • SW decodes on the processor with MX Player’s built-in codecs.

Some builds can’t play certain Dolby audio formats in SW mode without an extra codec pack, which shows up as a picture with no sound. That’s an audio problem, not a video one. Many other Android players are built on Google’s ExoPlayer library, which uses hardware decoding through MediaCodec and rarely exposes a switch at all.

Switching decoders in VLC and Kodi, step by step

VLC and Kodi let you force each mode explicitly on almost every platform, which makes them handy tools for testing a problem channel. Both are free, so it’s worth keeping one installed even if you watch in another app.

VLC on Android and Windows

On an Android phone, tablet or TV box with VLC installed:

  1. Open VLC and go to Settings. On phones and tablets, it’s More → the gear icon; on TV boxes, it’s the Settings entry on VLC’s home screen.
  2. Choose Video → Hardware acceleration. Some versions keep this option under Advanced instead.
  3. Select Automatic for normal viewing, or Disabled to force software decoding for a test.
  4. Back out of Settings and replay the channel.

On Windows:

  1. Open VLC and choose Tools → Preferences, or press Ctrl+P.
  2. Select the Input / Codecs tab.
  3. Set Hardware-accelerated decoding to Automatic, or to Direct3D11 Video Acceleration if Automatic misbehaves. Choose Disable to force software decoding.
  4. Select Save, then close and reopen VLC so the change takes effect.

Kodi

Kodi hides its decoder settings until you raise the settings level:

  1. Open Settings (the gear icon) → Player.
  2. At the bottom left, select the settings level button until it reads Advanced or Expert.
  3. Open Videos. On Android, find Allow hardware acceleration - MediaCodec (Surface) and Allow hardware acceleration - MediaCodec. On Windows, the option is Allow hardware acceleration - DXVA2. On Apple devices, it’s VideoToolbox.
  4. Leave them on for normal viewing. To test software decoding, turn them off, replay the channel, then turn them back on.

On Android boxes, MediaCodec (Surface) is generally the most efficient path for 4K and HDR, so it’s the one to keep on if you disable anything.

Which decoder to use on each device

The short version is the same everywhere: hardware first. What differs is how far software decoding can go as a fallback, which depends on how strong the processor is.

DeviceHardware HEVCPlays 4KEveryday settingSoftware as a fallback
Fire TV Stick LiteYes, up to 1080pNoHardwareSD and 720p only, as a test
Fire TV Stick 4K and 4K MaxYes, including 4K HDRYesHardwareFull HD may play; expect dropped frames on 60 fps sports; never 4K
Fire TV CubeYes, including 4K HDRYesHardwareFull HD, with headroom to spare
NVIDIA Shield TV and Shield TV ProYes, including Dolby VisionYesHardwareUsually fine for Full HD H.264
Formuler Z11 Pro seriesYesYesHardware (the MyTVOnline 3 default)Full HD as a test
Recent Android phones and tabletsYes on most modelsVaries by screen and chipHardwareFull HD on stronger phones, at a cost in battery and heat
Windows PC with modern graphicsYes, through the GPUYes, with a recent GPUAutomatic in VLC or DXVA2 in KodiFull HD on most desktop processors; 4K HEVC needs a strong one
Mac with Apple siliconYes, through VideoToolboxYesHardwareComfortable for Full HD

Fire TV Stick Lite, 4K and 4K Max

The Lite is a Full HD device. A 4K channel will show a black screen or play in HD on it, and no decoder setting changes that. Use the FHD version of the channel instead. The Lite’s processor is also the weakest of the family, so software decoding is only practical for SD and 720p channels.

The 4K and 4K Max decode 4K HEVC and HDR in hardware without breaking a sweat. Leave them on hardware. If the whole stick feels sluggish, with slow menus and long app launches, that’s usually storage and background apps rather than the decoder; the guide to fixing a Firestick running slow covers the cleanup routine.

Heat is the other Fire TV issue. A stick hanging behind a TV gets little airflow, and software decoding makes it worse. Use the HDMI extender that came in the box so the stick sits away from the TV’s hot back panel.

NVIDIA Shield TV

The Shield’s processor has the most headroom of any common Android TV box, and its hardware decoder covers every format IPTV uses, including Dolby Vision HEVC. Hardware is still the right default. The Shield’s extra power is most useful as a fallback: if one Full HD channel needs software decoding, the Shield is the box most likely to cope.

Formuler boxes

Formuler’s MyTVOnline 3 uses the box’s hardware decoder, and its settings are tuned for the chip inside. If you install TiviMate on a Formuler as well, the same rule applies: hardware for everything, software only to test one channel.

Android phones and tablets

Phones decode HEVC in hardware on most models from recent years. Software decoding works on stronger phones but drains the battery quickly and warms the phone in your hand, which is a clear sign to switch back. The Android setup guide covers the other phone-specific setting that matters: battery usage set to Unrestricted, so playback doesn’t pause in the background.

Windows PCs and Macs

On a computer, the graphics chip does the hardware decoding. As a rough guide, Intel processors with integrated graphics from about the 7th generation onward, NVIDIA cards from the GTX 10 series onward and AMD cards from the Radeon RX 400 series onward decode 10-bit HEVC in hardware. Older graphics may manage 8-bit HEVC but not 10-bit, which affects HDR and many 4K channels.

VLC brings its own decoders, so it plays HEVC without Microsoft’s paid HEVC Video Extensions, which only matter for Windows’ built-in apps. The Windows and Mac setup guide lists players for both systems. Macs with Apple silicon decode HEVC in hardware and have processors strong enough for software decoding of Full HD when you need it.

Symptoms of the wrong decoder, and what to do

Decoder problems have recognizable signatures. So do problems that look similar but come from somewhere else. Use this table to tell them apart before you change settings.

What you seeLikely causeWhat to try
Green screen, or green and pink blocksHardware decoder rejecting that stream’s format, or a damaged frameSwitch to software for a test; if that fixes it, tell support which channel
Black screen with soundVideo decoder failed to start, often 4K HEVC on a Full HD-only devicePlay the FHD version; switch decoder; restart the app
Picture but no soundAudio format not supported on the current path, or passthrough to a device that can’t decode itChange audio output to PCM or stereo; this isn’t a video decoder issue
Stutter, dropped frames, sound drifting aheadSoftware decoder can’t keep upSwitch back to hardware
Smooth picture but judder on slow pansStream frame rate doesn’t match the TV’s refresh rateTurn on auto frame rate or Match Content
Device hot, menus laggy, temperature warningSoftware decoding running the processor flat outHardware decoding, better airflow, the HDMI extender
Freezes with a spinning circle, then catches upNetwork or buffer, not the decoderCheck the connection and the buffer size
Combing lines on moving textInterlaced source with weak deinterlacingTry software decoding with deinterlacing in VLC or Kodi

A black screen has several possible causes beyond the decoder, from HDMI handshakes to account status. The ordered checklist for IPTV black screen with no sound works through them in sequence.

A five-minute decoder test

When one channel looks wrong, this routine tells you whether the decoder is responsible, without leaving your device in a bad state.

  1. Note the channel name, the time and exactly what you see, such as “green blocks on movement” or “black screen, sound fine”.
  2. Play two other channels from the same group. If they fail too, the decoder isn’t the cause; check your connection, the app and your account first.
  3. Switch the player to software decoding and replay the problem channel.
  4. If it now plays correctly, the stream uses a format your chip dislikes. Use software for that channel only if the device keeps up without stuttering or heating, or pick another version of the channel, such as FHD instead of 4K.
  5. If it fails in both modes, open the same channel in VLC on a phone or computer using your M3U link. If it plays there, the problem is the device or app; if not, it’s the source.
  6. Switch the player back to hardware decoding, then send support the channel name, the time and what each test showed.

Quick decision guide

  • The channel is 4K: hardware only. If your device isn’t 4K-capable, use the FHD version.
  • Every channel misbehaves: it isn’t the decoder. Restart the device, check the connection, then check the account.
  • One channel shows green or blocky video: run the software test.
  • The device is hot or the menus lag: go back to hardware and improve airflow.
  • A phone gets warm and the battery drops fast: hardware.
  • Motion judders but the picture is clean: frame-rate matching, not decoding.

Audio decoding is a separate setting

Players decode audio separately from video, and audio settings cause their own family of problems. Live channels often carry Dolby Digital (AC3) or Dolby Digital Plus (E-AC3) sound. With passthrough on, the player sends that audio untouched to your TV, soundbar or receiver to decode. With passthrough off, the player converts it to PCM itself.

If your soundbar can’t decode the format the player passes through, you get a picture with no sound. The fix is in the audio settings, not the video decoder. In TiviMate, look for audio passthrough under Settings → Playback. On a Fire TV, Settings → Display & Sounds → Audio → Surround Sound offers options such as Best Available, Dolby Digital Plus and Stereo, depending on the model.

Audio processing in soundbars and receivers also adds delay, which shows up as lips moving before the words arrive. That’s a sync issue rather than a decoding failure, and players such as TiviMate and VLC include an audio delay control to correct it.

When the decoder isn’t the problem

The decoder gets blamed for plenty it didn’t do. Before you change settings, rule out these common lookalikes:

  • Judder on Apple TV and 4K boxes. Smooth motion with a regular hitch on pans usually means the TV is running at a different refresh rate from the stream, such as a 50 fps channel on a 60 Hz output. The guide to Apple TV IPTV stuttering covers Match Content and frame-rate settings in detail.
  • Freezing with a spinning circle. That’s the buffer running empty because data arrived late. Ethernet, the 5 GHz band and a larger buffer help, and the article on IPTV buffer size settings gives recommended values per device.
  • A device that’s simply too old. If hardware decoding stutters on 4K and software is worse, the chip has run out of road. The buyer’s guide to the best streaming device for IPTV in Canada compares decoder support across current models.

No IPTV subscription can pick your decoder for you, because the same stream goes to every device and the decoding happens on your side of the connection. What a service can do is offer FHD versions alongside 4K and backup streams on big events, which give you somewhere to go when one version doesn’t suit your hardware. That’s one of the practical points worth checking when you compare the best IPTV Canada services.

Test your own device during the trial

The easiest time to learn how your device handles every format is before you’ve paid for anything. The 24-hour free trial gives you a real login, so you can try an SD channel, a Full HD sports channel at 60 frames and a 4K channel on your own TV. Watch each for a few minutes in hardware mode, and run the software test on anything that looks off.

If you’re setting up our IPTV Canada service on a new box, run that check on the first evening. Ten minutes of testing tells you more about your device than any spec sheet, and support is available 24/7 in English and French if a channel needs a closer look.

Key takeaways

  • Hardware decoding uses a dedicated video chip; it’s cool, efficient and the right default on every device.
  • Software decoding uses the main processor; it’s more tolerant of odd streams but runs hot and can’t handle 4K HEVC on streaming sticks.
  • Most 4K and HDR channels use 10-bit HEVC, so check that your device decodes HEVC Main 10 in hardware.
  • Green blocks on one channel point to the decoder; freezing with a spinning circle points to the network; judder on pans points to frame-rate matching.
  • Use software decoding as a test for one channel, then switch back to hardware.

More in devices & players

Quick answers

Does hardware decoding lower picture quality?

No. Hardware and software decoders follow the same standard and rebuild the same frames from the stream, so a correctly decoded picture looks identical either way. Differences you might notice come from other steps, such as deinterlacing, upscaling or HDR handling, which some apps do differently in each mode. If one mode looks softer, compare the same channel in both for a minute before deciding.

Does software decoding use more internet data?

No. Your data use depends on the stream's bitrate, not on how your device decodes it. The same channel downloads the same amount either way: a stream at 8 Mbps uses about 3.6 GB an hour, whether the video chip or the processor turns it into pictures. Software decoding costs processing power, heat and battery life, not bandwidth. The Fire TV Stick setup guide lists the settings that do matter.

Is HEVC the same as H.265?

Yes. HEVC (High Efficiency Video Coding) and H.265 are two names for the same codec, just as AVC and H.264 are the same thing. As a rule of thumb, HEVC needs roughly half the bitrate of H.264 for similar quality, which is why 4K and HDR channels use it. Your device needs hardware HEVC support, ideally 10-bit, to play those channels smoothly.

Watch tonight. Decide tomorrow.

Take all 56,000+ channels for a 24-hour test drive on your own TV and internet. No card, no payment. Plans start at $17 a month in CAD, with a 7-day money-back guarantee.

7-day refund 24/7 Live Chat help Priced in CAD

Start 24h Free Trial Plans