Skip to content

Commit

Permalink
fixed urls to play intro when needed and only encode when needed
Browse files Browse the repository at this point in the history
  • Loading branch information
vynxc committed Jan 12, 2024
1 parent d09708b commit 49c662e
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 3 deletions.
6 changes: 4 additions & 2 deletions M3U8Proxy/Controllers/M3U8.cs
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,6 @@ public async Task<IActionResult> GetM3U8(string url, string? headers = "{}",
url = HttpUtility.UrlDecode(url);
Console.WriteLine(url);
headers = HttpUtility.UrlDecode(headers!);
Console.WriteLine(headers);
if (string.IsNullOrEmpty(url))
return BadRequest("URL Is Null Or Empty.");

Expand All @@ -88,7 +87,10 @@ public async Task<IActionResult> GetM3U8(string url, string? headers = "{}",
var headersString = headers == "{}" ? "" : Uri.EscapeDataString(headers!);
var suffix = headersString + forcedHeadersString;
if (suffix != "") suffix = "/" + suffix;
var prefix =encrypted ? _encryptedUrl: isPlaylistM3U8 ? _m3U8Url : _proxyUrl;
var prefix =isPlaylistM3U8 ? _m3U8Url : _proxyUrl;

if(encrypted&&isPlaylistM3U8)
prefix = _encryptedUrl;

var finalContent = M3U8Paser.FixAllUrls(lines, url, prefix, suffix,encrypted,isPlaylistM3U8);

Expand Down
3 changes: 2 additions & 1 deletion M3U8Proxy/M3U8Parser/FixUrlsToAbsolute.cs
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ public static string FixAllUrls(string[] lines, string url, string prefix, strin
var uriContent = isUri ? Regex.Match(lines[i], uriPattern).Groups[1].Value : lines[i];
if (!Uri.TryCreate(uriContent, UriKind.RelativeOrAbsolute, out var uriExtracted)) continue;
var newUri = !uriExtracted.IsAbsoluteUri ? new Uri(uri, uriExtracted) : uriExtracted;
var substitutedUri = $"{prefix}{EncodeUrl(newUri + parameters,encrypted)}{suffix}";
var substitutedUri = $"{prefix}{EncodeUrl(newUri + parameters,encrypted&&isPlaylist)}{suffix}";
var test = Regex.Replace(lines[i], uriPattern, m => $"URI=\"{substitutedUri}\"");
lines[i] = isUri ? test : substitutedUri;
}
Expand All @@ -39,6 +39,7 @@ private static string[] InsertIntro(string[] lines)
var lastIndex = 0;
for (var i =0; i < lines.Length; i++)
{
Console.WriteLine(lines[i]);
if (lines[i].StartsWith("#")) continue;
lastIndex = i-1;
break;
Expand Down

0 comments on commit 49c662e

Please sign in to comment.