github PiratesIRC/Stream-Mapparr 1.26.2141957

2 hours ago

Placeholder streams that claim HD but carry almost no video are now ranked last

Providers serve looping slates, black screens and static cards that report 1080p while carrying roughly 190 kbps of actual picture. Nothing demoted these before, so one could sit at the front of a channel and play a still image while a working alternative waited behind it.

Neither existing mechanism could catch this. The quality sort ranks on claimed resolution, so a placeholder wins on its claim. The throughput probe and its Bitrate Safety Margin measure how fast bytes arrive, and a tiny payload arrives many times faster than realtime, so a placeholder rated healthy.

Two new settings control it. Demote Placeholder Streams defaults to on. Placeholder Bitrate Floor (kbps) defaults to 300 and only applies to streams claiming 720p or higher, so ordinary standard definition content is never checked.

Three deliberate choices make a wrong demotion less likely than a missed one. Evidence must be positive, so a stream with no measured bitrate is never demoted. Where two recorded bitrate figures disagree, the higher one is used. And streams are only moved down the order, never removed, because Match and Assign replaces a channel's whole stream list.

Demotions are visible rather than silent: flagged streams show as placeholder in the CSV export's tiers column and are marked in the emailed report.

Closes #40.

GB is accepted for the United Kingdom, and DR for the Dominican Republic

Providers disagree about which code a country gets. Previously UK: and GBR: resolved while GB: did not, and DO: and DOM: resolved while DR: did not.

Both variants now fold onto the code the shipped channel databases already use, so UK_channels.json serves GB: prefixed feeds and no database needs duplicating. A channel database is chosen by the operator, never by a provider's prefix.

The new codes are recognised only in the explicit prefix form. DR is also the name of Denmark's public broadcaster, whose channels are DR1, DR2 and DR3, so a bare DR in a name is never read as a country.

This can only add a match. An unrecognised prefix was already treated as unknown and kept.

Custom Aliases now work whichever way the channel name is capitalised

The alias values were already compared case-insensitively, but the channel name an entry is filed under had to match exactly. An entry filed under sky sports main event was silently ignored for a channel named Sky Sports Main Event, with no error and no log line. Surrounding whitespace on the name is now ignored too.

Notification client updated to 1.2.0

Redaction now removes the host and the stream id from a provider URL, not only the username and password. A URL of the form http://host/live/user/pass/605881.ts previously kept the provider's edge host and the stream id. The scheme, path segments and file extension are preserved so a reader can still tell what was removed. Links to documentation and issues are untouched.

Documentation

The README was reorganised, with regex pre-processing, notifications and troubleshooting moved into docs/. A disclaimer, a contributing guide and a pull request template were added.


Install: download Stream-Mapparr.zip below, then in Dispatcharr go to Plugins, Import Plugin, and upload it. Hub users receive this automatically once the Hub catalog entry is updated.

Back up your Dispatcharr database before upgrading. This plugin modifies channel and stream assignments.

Don't miss a new Stream-Mapparr release

NewReleases is sending notifications on new releases.