Skip to content

Commit

Permalink
add #288
Browse files Browse the repository at this point in the history
  • Loading branch information
xifangczy committed Mar 1, 2024
1 parent ee6e8a0 commit 604e93a
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 0 deletions.
18 changes: 18 additions & 0 deletions js/m3u8.js
Original file line number Diff line number Diff line change
Expand Up @@ -365,6 +365,10 @@ function parseTs(data) {
_fragments.splice(0); // 清空 防止直播HLS无限添加
/* 获取 m3u8文件原始内容 MANIFEST_PARSED也能获取但偶尔会为空(BUG?) 放在LEVEL_LOADED获取更安全*/
_m3u8Content = data.m3u8;

// #EXT-X-DISCONTINUITY
let discontinuity = {start:0, cc:0 };
data.endCC != 0 && $("#cc").show();
for (let i in data.fragments) {
/*
* 少部分网站下载ts必须带有参数才能正常下载
Expand Down Expand Up @@ -424,6 +428,13 @@ function parseTs(data) {
if (data.live && data.fragments[i].initSegment && tsBuffer.length == 0) {
initSegment = data.fragments[i].initSegment;
}

// #EXT-X-DISCONTINUITY
if(data.fragments[i].cc != discontinuity.cc){
$('#cc').append(`<option value="${+discontinuity.start + 1}-${i}">playlist: ${data.fragments[i].cc}</option>`);
discontinuity.cc = data.fragments[i].cc;
discontinuity.start = i;
}
_fragments.push({
url: data.fragments[i].url,
decryptdata: data.fragments[i].decryptdata,
Expand Down Expand Up @@ -954,6 +965,13 @@ $(document).on("click", "#setRequestHeaders, #setRequestHeadersError", function
// 下载完毕自动关闭页面选项
autoClose && $("#autoClose").prop("checked", true);

// #EXT-X-DISCONTINUITY 范围选择
$('#cc').change(function () {
const range = this.value.split("-");
$("#rangeStart").val(+range[0]);
$("#rangeEnd").val(+range[1]);
});

/**************************** 下载TS文件 ****************************/
// start 开始下载的索引
// end 结束下载的索引
Expand Down
3 changes: 3 additions & 0 deletions m3u8.html
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,9 @@ <h1 class="optionsTitle" data-i18n="titleM3U8"></h1>
<input type="text" id="rangeStart" spellcheck="false" data-i18n-placeholder="start" />
<input type="text" id="rangeEnd" spellcheck="false" data-i18n-placeholder="end" />
</div>
<select id="cc" class="hide">
<option disabled selected hidden>playlist</option>
</select>
</div>
<button id="recorder" class="button2 hide" data-switch="on" data-switch="on"
data-i18n="recordLive"></button>
Expand Down

0 comments on commit 604e93a

Please sign in to comment.