# How Free-TV/IPTV Handles HD vs SD Channel Designation Using the Ⓢ Marker

> Learn how Free-TV/IPTV designates HD vs SD channels using the circled S marker. Discover how unmarked channels are recognized as HD.

- Repository: [Free TV/IPTV](https://github.com/Free-TV/IPTV)
- Tags: how-to-guide
- Published: 2026-06-16

---

**The Free-TV/IPTV repository marks standard-definition channels with a Ⓢ (circled S) symbol in the channel name, while unmarked channels are assumed to be high-definition (HD).**

The Free-TV/IPTV project aggregates thousands of public IPTV channels into a single `playlist.m3u8` file sourced from Markdown tables. Understanding how this open-source repository distinguishes between HD and SD streams is essential for users who want to filter channels by quality or verify stream availability before playback. The Ⓢ marker serves as the primary mechanism for **IPTV playlist HD vs SD channel designation** across the entire dataset.

## The Ⓢ Marker Convention for SD Channels

According to the repository's documentation in [`README.md`](https://github.com/Free-TV/IPTV/blob/main/README.md) (lines 45-46), the rule is explicit: *"Channels which are **not** in HD are marked with an **Ⓢ**."* This simple convention means any channel entry containing the Ⓢ symbol is confirmed to be standard-definition only, while channels lacking this designation are assumed to be available in high-definition. The marker is manually applied by maintainers when verifying stream quality.

## Implementation in Playlist Generation

The HD vs SD designation flows from source documentation through to the final M3U8 output without transformation or metadata stripping.

### Markdown Source Files (lists/*.md)

Channel data resides in country-specific Markdown files within the `lists/` directory. Maintainers append Ⓢ directly to channel names when confirming a stream lacks an HD option. For example, in [`lists/venezuela.md`](https://github.com/Free-TV/IPTV/blob/main/lists/venezuela.md), the Vale TV entry appears as:

```markdown
| 7 | Vale TV Ⓢ | [>](https://vcp2.myplaytv.com/valetv/valetv/playlist.m3u8) | <img height="20" src="https://upload.wikimedia.org/wikipedia/commons/9/98/Logo_de_VALE_TV.png"/> | ValeTV.ve |

```

The Ⓢ symbol appears immediately after the channel name, signaling to other maintainers and automated tools that this specific stream is SD-only.

### Playlist Builder Script (make_playlist.py)

When [`make_playlist.py`](https://github.com/Free-TV/IPTV/blob/main/make_playlist.py) processes these Markdown tables to generate the final `playlist.m3u8`, it copies the channel name exactly as written. The script does not strip quality markers or add separate metadata tags for resolution. Instead, the Ⓢ remains embedded in the channel name throughout the transformation process.

### Final M3U8 Output

The generated entry in `playlist.m3u8` preserves the marker in both the `tvg-name` attribute and the display title:

```text
#EXTINF:-1 tvg-id="ValeTV.ve" tvg-name="Vale TV Ⓢ" tvg-logo="https://upload.wikimedia.org/wikipedia/commons/9/98/Logo_de_VALE_TV.png",Vale TV Ⓢ
https://vcp2.myplaytv.com/valetv/valetv/playlist.m3u8

```

This ensures that end-user IPTV clients display the quality indicator directly in channel listings, allowing viewers to identify SD streams without loading the channel first.

## Practical Applications of the Ⓢ Marker

This **HD vs SD channel designation** system enables several workflows:

- **Manual filtering**: Users scanning `playlist.m3u8` can search for "Ⓢ" to quickly locate or exclude SD channels
- **Script filtering**: Automated tools can parse the M3U8 and filter channels based on the presence of the Ⓢ symbol in the `tvg-name` field
- **Maintenance workflows**: Contributors can identify which channels still need HD sourcing by scanning the Markdown files for the Ⓢ designation

## Summary

- The **Ⓢ marker** indicates standard-definition channels; its absence implies HD availability
- The convention is documented in [`README.md`](https://github.com/Free-TV/IPTV/blob/main/README.md) and implemented across all `lists/*.md` files
- [`make_playlist.py`](https://github.com/Free-TV/IPTV/blob/main/make_playlist.py) preserves the Ⓢ symbol in the final `playlist.m3u8` output within the channel name
- Users can filter or identify SD streams by searching for the Ⓢ character in the M3U8 file

## Frequently Asked Questions

### What does the Ⓢ symbol mean in Free-TV/IPTV playlists?

The Ⓢ symbol indicates that a specific channel stream is available in standard-definition (SD) only. According to the repository's [`README.md`](https://github.com/Free-TV/IPTV/blob/main/README.md), channels that are not available in HD are marked with this circled S symbol, allowing users to distinguish between SD and HD streams at a glance.

### How can I filter out SD channels from the playlist?

You can filter the `playlist.m3u8` file by excluding lines containing the Ⓢ character. Since [`make_playlist.py`](https://github.com/Free-TV/IPTV/blob/main/make_playlist.py) embeds the marker directly into the `tvg-name` attribute and display title, simple text filtering tools like `grep -v "Ⓢ" playlist.m3u8` will remove SD channels from your selection.

### Does the Ⓢ marker affect the actual video stream quality?

No, the Ⓢ marker is purely informational and does not alter the video stream itself. It is simply a character appended to the channel name in the source Markdown files that persists through to the generated M3U8, serving as a visual indicator for users and maintainers.

### Where is the HD vs SD designation documented?

The convention is documented in the repository's [`README.md`](https://github.com/Free-TV/IPTV/blob/main/README.md) at lines 45-46, which states: *"Channels which are not in HD are marked with an Ⓢ."* This rule is applied consistently across all country-specific Markdown files in the `lists/` directory.