Settings
Edit > Settings.. (also on the toolbar) opens the settings.
The pages are listed in a rail on the left, under six headings. Click a page to open it. Nothing is changed until you press OK; Cancel leaves everything as it was. A few things act at once, and say so below: the Clear Cache and Clear Guides buttons, and connecting or disconnecting Trakt.
- The search box at the top of the rail ("Search settings..") finds as you type. The pages whose names match come first, then the individual settings whose captions match, each with the page it is on beside it. Click a result to go straight to that setting. Escape empties the box and brings the page list back.
- Some pages are for experienced users and are hidden until you tick "Show expert settings" on the Common page. You get a warning when you turn it on, and the expert pages then appear in the rail marked "expert". Below, those pages are marked (expert).
- Reset this page, under the rail, puts the page you are on back to how it shipped, after asking you to confirm. It is available on the pages whose settings are numbers and choices the studio ships with: Guide alignment, Caches, Covers and fetching, Playback, Picture, Sound, Subtitles, Trakt, Stream checker, User agents, Proxy, Youtube API, AI assistants and Logging. On the other pages it is greyed out, because what they hold is yours (keys, folders, which columns you want).
Settings pages
| Heading | Pages |
|---|---|
| General | Common, Instances (expert) |
| Playlist | Groups, Streams, Tags, Directives |
| Guide & recording | TV Guide, Recording, Guide alignment (expert), Publishing code sets (expert) |
| Media | Databases, Subtitle search, Trakt, Caches (expert), Covers and fetching (expert), Downloads |
| Player | Picture, Sound, Subtitles, Playback (expert), Parental lock |
| Advanced | Stream checker (expert), User agents (expert), Proxy (expert), Youtube, Youtube API (expert), AI assistants (expert), Logging (expert) |
General: Common
| Setting | What it does |
|---|---|
| Language | The language of the whole program. It changes as soon as you press OK, and is remembered for next time. |
| Show expert settings | Shows the expert pages in the rail. |
| Show developer tools | Adds Generate EPG Codes.. to the Tools menu, for building a code set of your own, and shows a card of playback statistics over the picture in the Player (D hides and shows it). |
| Check for updates on startup | On by default. |
| Show tips on startup | Shows a tip of the day each time the studio starts. On by default. |
General: Instances (expert)
| Setting | What it does |
|---|---|
| Allow only one instance | On by default: opening the studio again, or double-clicking a playlist in Explorer, sends that to the window that is already open and brings it to the front. Turned off, each start opens a window of its own, which is handy for working on two playlists side by side. |
Playlist: Groups
| Setting | What it does |
|---|---|
| Columns | Group, Streams, Type and Status. Untick a column to hide it in the group list. Hiding a column never removes anything from the playlist. |
Playlist: Streams
| Setting | What it does |
|---|---|
| Columns | Play Length, Name, tvg-chno, tvg-shift, tvg-name, tvg-id, tvg-rec, tvg-logo, Parent-Code, Audio-Track, Radio, URL and Status. Untick a column to hide it in the stream list; nothing is removed from the playlist. |
Playlist: Tags and Directives
| Setting | What it does |
|---|---|
| Tags | A list of every tag a stream can carry, each with an explanation. Tick the ones you want offered for every stream in the inspector. A tag left empty is not written into the saved playlist. Right-click the list for Check All, Uncheck All, Check Selected and Uncheck Selected. |
| Directives | The same for the directives (the extra lines a playlist can hold for a stream), with the same right-click menu. |
Guide & recording: TV Guide
| Setting | What it does |
|---|---|
| TV Guide Provider | Which EPG code set the tvg-id editor in the inspector offers codes from. The list holds the sets that came with the studio and any that updates have added. |
| Fetch a guide again after | How old a kept guide may get before it is fetched again, from 30 minutes to 48 hours. One hour unless you change it. |
| Keep past programmes for | How many days of programmes that have already been on are kept, from "Don't keep any" to 14 days (the default). Each fetch is added to what is kept, so the guide builds up a past you can look back over. |
| Clear Guides.. | Throws the kept guides away at once; a guide on screen stays, and is kept again the next time it is fetched. |
Guide & recording: Recording
| Setting | What it does |
|---|---|
| Record a channel for | How long a live channel put in the Downloads queue is recorded when nothing else says when to stop, from 15 minutes to 24 hours, or Until cancelled (the default). |
| Write a recording as | Automatic, MP4, Matroska (MKV), FLV or Transport stream (TS). Automatic goes by the stream's own address. |
| Write a recording of sound alone as | Audio as it comes, MP3, AAC, M4A or Matroska audio (MKA). Used for radio. |
| Write the picture as | As it arrives (the default), H.264 or HEVC (H.265). As it arrives copies the broadcast exactly, which is the best copy; the others convert it, on the graphics card where it can. |
| Write the sound as | As it arrives, AAC or MP3. |
| Start recording this many minutes early | 1 unless you change it (0 to 60). |
| Stop recording this many minutes late | 3 unless you change it (0 to 60), for programmes that overrun. |
| Stop recording with this much left free (GB) | A recording stops rather than fill the drive. 2 unless you change it. |
| Delete recordings after (days, 0 keeps them) | Finished recordings older than this are deleted. 0, keep them, unless you change it. |
Guide & recording: Guide alignment (expert)
| Setting | What it does |
|---|---|
| Fuzzy match threshold | A slider from Loose to Strict, with the Sweet Spot marked. It sets how closely a channel's name must match a name in a code set when EPG codes are assigned. Looser finds more matches and more wrong ones. |
| Guide time offset (minutes, may be negative) | Moves the whole guide earlier or later, for a guide whose times are out, so the guide and recordings booked from it line up with what is really on. A channel that carries its own tvg-shift has that added on top. |
Guide & recording: Publishing code sets (expert)
| Setting | What it does |
|---|---|
| Key for publishing code sets | A key given to the people who look after code sets, so that a set they generate can be sent in for review and shared with everybody. With no key here the Generate EPG Codes wizard does not offer to publish. |
Media: Databases
| Setting | What it does |
|---|---|
| TMDB API key, TVDB API key and TVDB subscriber PIN | Your own free accounts, used to look up what a programme, film or series is. The page says where each key comes from. The PIN is only for a TVDB subscriber key; leave it empty for a project key. A database with no key is simply not asked. |
| Look music up in CDDB and MusicBrainz (no account needed) | Looks up details for music. On by default. |
Media: Subtitle search
| Setting | What it does |
|---|---|
| OpenSubtitles API key | Your own key, from opensubtitles.com. With no key nothing is fetched. |
| User name and Password | Optional. Signing in raises how many subtitles you may fetch in a day. Leave both empty to stay anonymous. |
| Fetch a missing subtitle while watching | When a film has no subtitles in your preferred subtitle language, one is fetched. Off by default. |
| Fetch a missing subtitle for downloads as well | The same for downloads. Off by default. |
| Accept machine and AI translated subtitles | Off by default, so subtitles a machine or an AI translated are passed over. |
Media: Trakt
| Setting | What it does |
|---|---|
| Connection | Shows whether the studio is connected to your Trakt account, and as whom. Connect.. shows a code to type on Trakt's website; your Trakt password is never asked for. Disconnect ends the connection. Either one happens at once, not when you press OK. |
| Say what I am watching while it plays | Tells Trakt what you are watching, so a film finished here is finished there and one left part way starts again where you left it. Films and episodes only, never live television. On by default. |
| A star here marks it on Trakt as | On the watchlist (the default) or In favourites. |
Media: Caches (expert)
| Setting | What it does |
|---|---|
| Pictures, kept in | The folder where covers and logos are kept. Browse.. picks another folder; Clear Cache empties it at once. |
| Answers to remember | How many answers from the film and TV databases are kept, 4000 unless you change it. The oldest go first; 0 keeps every one. Clear Cache forgets them at once. |
| Subtitles to keep (0 keeps them all) | Subtitles fetched from OpenSubtitles are kept, so watching a film again does not count against the day's limit. 500 unless you change it. Clear Cache throws them away at once. |
Everything in the caches is kept so that asking again costs nothing. Throwing it away loses nothing: it is fetched again when it is wanted.
Media: Covers and fetching (expert)
| Setting | What it does |
|---|---|
| Pictures fetched at once | How many covers and logos are fetched at the same time, 2 to 32 (8 unless you change it). More fills a grid faster, until your provider becomes the limit. Takes effect straight away. |
| Cover width in pixels | The size of the covers in Films and Series, 72 to 224 (112 unless you change it). |
Media: Downloads
| Setting | What it does |
|---|---|
| Folder | Where downloads and recordings are written. Your Videos folder unless you choose another with Browse... |
| Downloads at once | 1 to 8, 2 unless you change it. |
| Pieces of one file at once | Fetches one file in up to 8 pieces at the same time. 1 unless you change it. |
| Speed limit (KB/s) | No limit, 256, 512, 1024 or 2048. |
| Only start downloads from (hour) / until (hour, same as from means any time) | New downloads only start between these hours, for example at night. |
| Write an .nfo file beside each download | The details media players such as Kodi read. Off by default. |
| Save the subtitles a playlist offers beside the video | On by default. |
| Put them in the video itself instead, as a Matroska file | Off by default. |
| Pass over anything whose file is already in the folder | Off by default. |
| Start downloads as soon as they are queued | On by default; turned off, queued downloads wait for you to start them. |
The Downloads page sets what a download is given when it is queued. A download already in the list keeps what it was given.
Player: Picture
| Setting | What it does |
|---|---|
| Decode video on the graphics card when it can | On by default. |
| Smooth out interlaced pictures (deinterlace) | On by default; most live television is interlaced. |
| Picture to take when a stream offers a choice | Best available, or at most 2160, 1080, 720 or 480 lines, for a slow connection or a small window. |
| Brightness (0 leaves it alone) and Contrast (0 leaves it alone) | -100 to 100. |
| Gamma (100 leaves it alone) | 25 to 400. |
Player: Sound
| Setting | What it does |
|---|---|
| Sound output | System default, or one of your sound devices. |
| Preferred sound language | When a stream has more than one sound track, this language is chosen. No preference plays the stream's own choice. |
| Always fold surround sound down to stereo | Off by default. |
| Send Dolby Digital and DTS to the receiver undecoded | Needs a receiver that decodes them. Off by default. |
| Even out how loud channels are | So you are not reaching for the volume on every channel change. Off by default. |
| Lift quiet sound to (100 is unchanged) | Up to 400, for a stream that is too quiet even at full volume. |
| Sound shape | An equaliser preset - Flat, Speech, Music, Night, Bass, Treble, Loudness, Classical, Rock, Pop, Jazz or Dance - or Custom, which is what you set yourself with the equaliser over the picture in the Player. |
| Shape the sound with the equaliser | Turns the equaliser on. Off by default. |
Player: Subtitles
| Setting | What it does |
|---|---|
| Preferred subtitle language | Subtitles in this language are shown when a stream has them. No preference leaves subtitles off. |
| Subtitle size (percent of normal) | 50 to 250. |
| Subtitle font | Any font on your PC; Segoe UI unless you choose another. |
| Subtitle colour | White, Yellow, Cyan, Green or Grey. |
| Outline thickness (0 leaves it off) | 0 to 8, 2 unless you change it. |
| Band behind the words (0-255, 0 for none) | A dark band behind the text, from none to solid. |
| Distance from the edge (percent of picture) | 0 to 40, 6 unless you change it. |
| Put the subtitles at the top of the picture | The subtitles are shown at the top of the picture. |
Player: Playback (expert)
| Setting | What it does |
|---|---|
| Sound gathered before playing (ms) | 1500 unless you change it. |
| Gathered again after a gap (ms) | 1000 unless you change it. |
| Sound card buffer (ms) | 480 unless you change it. |
| Pictures read ahead (frames) | 200 unless you change it. |
| Give up opening after (s) | How long the player waits for a stream before it gives up, 20 unless you change it. |
| Live TV kept for pausing (MB, 0 is off) | How much of a live channel is kept so you can pause and wind back, 512 MB unless you change it. |
| Play the next episode when one ends | For episodes started from the Series view. On by default. |
Player: Parental lock
| Setting | What it does |
|---|---|
| Code | The code that opens a locked group or channel. With no code here nothing is locked. |
| Once given, the code lasts | Every time (asked each time), A quarter of an hour, An hour, or Until the studio is closed (the default). |
Groups and channels are locked from the playlist's right-click menu. What is locked is written into the playlist, so it stays locked wherever the file goes; the code is kept on this computer only and never written into a playlist.
Advanced: Stream checker (expert)
| Setting | What it does |
|---|---|
| Threads | How many streams are checked at the same time, 1 to 25 (4 unless you change it). |
| Read Timeout and Connect Timeout | How long, in milliseconds, to wait for a stream to connect and to answer before it counts as offline. 60000 (a minute) unless you change them; never less than 2500. |
Advanced: User agents (expert)
| Setting | What it does |
|---|---|
| General | For everything that is not below (playlists, guides, pictures, lookups). |
| Playing and recording | The name the player and the recorder give. |
| Downloading | The name the downloader gives. |
| Stalker portals | Unless you change it, the name of a MAG set-top box, which is what portals expect. |
The user agent is the name the studio gives itself when it asks a server for something. Each box shows the name in use; unless you change it, that is the program's own name and version. Some providers only answer to a particular name.
A stream or playlist that names its own user agent (or a referrer, or other headers, in #EXTVLCOPT lines) is always fetched with those, by the player, the recorder, the downloader and the stream checker alike; these settings are for everything else.
Advanced: Proxy (expert)
| Setting | What it does |
|---|---|
| Fetch through | Nothing - straight out (the default), What Windows was told (the proxy set in Windows' own internet settings), or The one below. |
| Address and Port | The proxy to use, for The one below. Port 8080 unless you change it. |
| User name and Password | Where the proxy asks for one. |
Advanced: Youtube
| Setting | What it does |
|---|---|
| Youtube URL Format | How a YouTube video you add to a playlist is written. Choose the ordinary YouTube address, or the form Kodi's YouTube add-on plays, or type your own; %video_id% stands for the video. A format you type is added to the list. |
Advanced: Youtube API (expert)
| Setting | What it does |
|---|---|
| Youtube API URL, Youtube API Client Name and Youtube API Client Version | What the studio tells YouTube when it looks up a video you add. Leave them alone unless adding YouTube videos stops working; Reset this page puts them back. |
Advanced: AI assistants (expert)
| Setting | What it does |
|---|---|
| Let AI assistants work on the open playlist | Off by default. |
| Port | 8767 unless you change it. |
| Token | A password the assistant must send. Leave it empty for none. |
| Address | The address to give the assistant. Copy puts it on the clipboard. |
Advanced: Logging (expert)
| Setting | What it does |
|---|---|
| Write a log | Off by default. |
| Which areas to write | Errors, whether or not the program carried on; Requests over the network, and what came back; What was found in a cache, put in one, or dropped; Looking for subtitles, and what was made of the answers; Reading and writing playlists; The TV guide: fetching it, merging it, laying it out; Playing: what was opened, what was in it, how it went; Downloading and recording. Only what is ticked is written; starting and stopping are always written. When you first turn the log on, errors, network requests and subtitles are ticked. |
| Days of log files to keep (0 keeps them all) | One file is written per day, and older ones are deleted. 7 unless you change it. |
| Written to | The folder the log files go in. Open folder.. opens it in Explorer. |
Much of what the studio does fails quietly on purpose: a database that does not answer gives a panel with less in it, not an error. A log writes down what happened, so you can send it on when something goes wrong.
Frequently asked questions
What does ERD-Playlist Studio do?
ERD-Playlist Studio builds and looks after IPTV playlists. Open a playlist from a file or from your provider, tidy it up, check which channels still work, match it to a TV guide, and watch, record and download what is on it.
What do I need to run ERD-Playlist Studio?
- Windows 10 or later.
- A 64-bit PC (x64), a Windows on Arm PC (arm64) or a 32-bit PC (x86).
- Administrator rights to install.
- Windows' own media support.
The player says "Windows cannot decode this". What can I do?
The player uses the decoders built into Windows. The "N" editions of Windows ship without Windows' own media support: there the studio starts and works, but the player says "Windows cannot decode this" until you add the Media Feature Pack from Windows' Optional features. When Windows has no decoder for a single track, the player names it (for example "HEVC: no decoder on this computer") and plays the rest of the stream.
Where can a playlist come from?
A file you have (M3U, Smart IPTV, Enigma/Dreambox bouquets, XSPF, ASX, WPL or PLS), an address from your provider, an Xtream Codes account, a Stalker (Ministra) portal, the free channels of iptv-org or radio stations from radio-browser.info.
Which formats can I save and export to?
Save and Save As write M3U (.m3u or .m3u8), Smart IPTV, Enigma/Dreambox, ASX, WPL, PLS or XSPF. Export also writes the ticked groups as an HTML, CSV, JSON, Markdown or XML report. Files are written as UTF-8 text.
Can I undo changes to a playlist?
Yes. Every change to a playlist can be undone with Undo (Ctrl+Z) and done again with Redo (Ctrl+Y), each playlist keeping its own history. Bigger jobs, such as an import, a find and replace or a sort, are one step each. Locking is not an undo step.
How do I find out which channels still work?
Run Stream > Stream Checker... It tries every stream of All Groups or one group and marks each with a green star (online) or a red one (offline). It then reads up to 50 of the streams that answered, and a stream that is not what it says gets a violet star. Delete offline streams removes what was found offline, and can be undone.
What do the coloured stars mean?
Grey: not changed. Blue: changed. Green: online. Red: offline. Violet: not what it says it is. An orange star before a name marks a favourite; a red star after a name marks a locked stream.
How do I merge my provider's new playlist into my own?
Use Tools > Playlist Health Center.. and choose Compare with a provider playlist and apply selected changes. You see every stream the other playlist Added, Removed or Modified, all ticked; untick what you want to keep as it is and press Next to apply the rest. Tick Save as provider profile to keep comparing with that source on a schedule.
How do I keep a playlist up to date with my provider automatically?
Set up a provider profile with Tools > Provider Profiles... While the studio is open it looks every minute for enabled profiles that are due, and brings them up to date in the background. Profiles can also be brought up to date with the studio closed, with M3UEditorCLI sync_all --due-only in Task Scheduler.
Can a provider profile empty my playlist by mistake?
No. When the provider sends back an empty playlist while your target has streams in it, the run stops rather than emptying your playlist. Before any change is made, a snapshot of the target is kept, and the new playlist is only put in place once it has been read back and found sound.
How do I restore an earlier version of a playlist?
Before the Playlist Health Center or a provider profile changes a playlist, the studio saves a copy of it as it was. The last ten are kept for each playlist. Tools > Restore snapshot.. lists them, newest first; the one you pick opens as a separate playlist called Restored- followed by the name.
How do I match my channels to a TV guide?
A guide finds a channel by its tvg-id. Choose an EPG code set (SmartIPTV, BaZnGa or DiamondTV) under Settings > TV guide, then use Tools > Assign EPG Codes.. to write the best match into tvg-id for all groups or one group. The TV Guide ID editor (the "..." beside tvg-id) does the same for one stream.
The TV Guide shows data for only a few of my channels. Why?
The status bar says how many of the playlist's channels the guide actually has data for. A low number usually means the channels' tvg-id tags do not match the guide.
All the times in the guide are an hour out. How do I fix that?
Set Settings > Guide alignment > Guide time offset (minutes, may be negative). Guide alignment is an expert page: tick Show expert settings under Settings > Common to see it. For a single channel, right-click its name in the guide and choose Guide offset.
Can I pause live TV?
Yes. Press Space to pause a live channel; the player keeps recording it into a buffer on disk, so you can carry on where you paused. The size of the buffer is "Live TV kept for pausing (MB, 0 is off)" on the Playback settings page, 512 MB unless you change it.
Can I watch a programme that has already been on?
When your provider keeps catch-up for a channel and the TV Guide knows what is on, Backspace offers the programme on now from its start, and going back past the pause buffer offers the programme at that moment. Press Y to switch.
Which streams can the player not play?
rtsp, rtmp, srt and mms addresses cannot be opened, and the player says so. Neither can streams protected with DRM.
Can I play a stream on my television?
Yes, with Send to TV. It finds Chromecasts, Google TVs and televisions with Google Cast built in, AirPlay receivers such as an Apple TV, and DLNA televisions and players on your network. To put a whole playlist on a television running the Smart IPTV app, use Tools > Send to Smart IPTV...
Can I record while the studio is closed?
Yes. With "RecordingCLI run" going in the background, bookings are recorded and downloads carry on while the studio is closed, and the two hand the work back and forth by themselves. Series rules need the studio, because it reads the guide.
Will my computer wake up for a recording?
While recordings are booked or running, the studio keeps the computer from going to sleep, and sets it to wake up a minute before the next booking. If Windows will not allow either, you are told when you book, so you can leave the computer on or turn on wake timers in the Windows power plan.
What happens when my provider only allows a few connections?
The studio asks the provider (Xtream Codes accounts say) and holds a recording or download back until a connection is free rather than having it refused. When more recordings are due than there are connections, the one with the higher Priority goes first.
Can Kodi, Plex, Emby or Jellyfin use my playlist's films and series?
Yes. Tools > STRM Library.. writes the playlist's films and series as a library of small .strm files that Kodi, Plex, Emby or Jellyfin can list and play without anything being downloaded, with .nfo files if you like. Downloads can also carry an .nfo file beside them.
Do I need accounts for film details and subtitles?
TMDB and TVDB both need a free account of your own; put the keys under Settings > Databases. No key ships with the studio, and a database with no key is simply not asked. Keys are stored encrypted for your Windows account. Subtitles come from OpenSubtitles.com with your own OpenSubtitles API key under Settings > Subtitle search; with no key nothing is fetched, and a user name and password are optional. CDDB and MusicBrainz need no account.
Is my Trakt password stored in the studio?
No. Connect.. under Settings > Trakt shows a code to type on Trakt's website; your Trakt password is never asked for.
How can I lock channels from children?
Right-click a group or streams and choose Lock, and set a code under Settings > Parental lock. From then on, watching a locked stream, sending it to a TV, or recording or downloading it asks for the code first. The lock is written into the playlist file; the code is kept on this computer only and never written into a playlist.
Which languages does ERD-Playlist Studio speak?
Fifteen: English, Dutch, German, French, Spanish, Italian, Portuguese (Brazil), Portuguese (Portugal), Polish, Turkish, Russian, Ukrainian, Greek, Romanian and Swedish. Choose one under Settings > Common > Language and press OK; the whole program changes at once, without restarting.
Can I open two playlists in separate windows?
Yes. Untick "Allow only one instance" under Settings > Instances (an expert page). With more than one window open, the first one looks after the recording schedule, the unattended refresh of your provider profiles, the download queue and the AI assistant connection. Only that window records and downloads, so nothing is done twice.
Can I use ERD-Playlist Studio from scripts?
Yes. M3UEditorCLI works on playlists and RecordingCLI on recordings and downloads. Both answer in JSON on standard output, and several commands can go on one line. "help" after either tool's name lists everything it can do.
Can an AI assistant work with my playlists?
An AI assistant that supports the Model Context Protocol (MCP) can read and edit your playlists, book recordings and look after your downloads: either on the playlist open in the studio (Settings > AI assistants, off by default, only programs on this computer can connect), or on any playlist file with M3UEditorCLI mcp.
Is a licence key needed?
Yes. ERD-Playlist Studio needs a valid licence key to run. Enter it with Help > Activate License..; the command line tools use the same key. Please do not share your key: a key that is shared can be revoked.
Are updates checked to be genuine?
Yes. Before anything is offered, the answer from the update server is checked to be genuine, and the downloaded installer is checked against it before it runs. An update can never take you back to an older version, and your settings are kept.
What does uninstalling leave behind?
The uninstaller leaves your own things where they are: your settings, caches and kept guides, recording schedule and download queue, logs, earlier versions of your playlists, and every recording and download. To start completely afresh, delete the program's folder in your local application data folder and in your Documents folder.