使用flv

This commit is contained in:
test
2025-12-15 20:16:37 +08:00
parent bc2923ef0c
commit 435a4a1024
4 changed files with 16 additions and 7 deletions

2
app.js
View File

@@ -214,7 +214,7 @@ const server = http.createServer(async (req, res) => {
const location = obj.headers.get("Location")
if (location != "" && location != undefined && location != null) {
if (location.startsWith("http://hlsz") || location.startsWith("http://mgsp") || location.startsWith("http://trial")) {
if (!location.startsWith("http://bofang")) {
resObj.url = location
break
}

View File

@@ -58,7 +58,7 @@ async function fetchURLByAndroid720p() {
if (location == "" || location == undefined || location == null) {
continue
}
if (location.startsWith("http://hlsz")) {
if (!location.startsWith("http://bofang")) {
resObj.url = location
break
}

View File

@@ -134,7 +134,12 @@ async function updatePE(hours) {
continue
}
if (replay.name.match(/.*回放|赛.*/) != null) {
const competitionDesc = `${data.competitionName} ${pkInfoTitle} ${replay.name} ${peResult.body.multiPlayList.preList[peResult.body.multiPlayList.preList.length - 1].startTimeStr.substring(11, 16)}`
let timeStr = peResult.body.keyword.substring(7)
const peResultStartTimeStr = peResult.body.multiPlayList.preList[peResult.body.multiPlayList.preList.length - 1].startTimeStr
if (peResultStartTimeStr != undefined) {
timeStr = peResultStartTimeStr.substring(11, 16)
}
const competitionDesc = `${data.competitionName} ${pkInfoTitle} ${replay.name} ${timeStr}`
// 写入赛事
appendFileSync(interfacePath, `#EXTINF:-1 tvg-id="${pkInfoTitle}" tvg-name="${competitionDesc}" tvg-logo="${data.competitionLogo}" group-title="体育-${relativeDate}",${competitionDesc}\n\${replace}/${replay.pID}\n`)
appendFileSync(interfaceTXTPath, `${competitionDesc},\${replace}/${replay.pID}\n`)

View File

@@ -45,7 +45,8 @@ async function getAndroidURL(userId, token, pid, rateType) {
let headers = {
AppVersion: 2600037000,
TerminalId: "android",
"X-UP-CLIENT-CHANNEL-ID": "2600037000-99000-200300220100002"
"X-UP-CLIENT-CHANNEL-ID": "2600037000-99000-200300220100002",
"appCode": "miguvideo_default_android"
}
// 广东卫视有些特殊
@@ -65,7 +66,7 @@ async function getAndroidURL(userId, token, pid, rateType) {
// 请求
const baseURL = "https://play.miguvideo.com/playurl/v1/play/playurl"
let params = "?sign=" + result.sign + "&rateType=" + rateType
+ "&contId=" + pid + "&timestamp=" + timestramp + "&salt=" + result.salt
+ "&contId=" + pid + "&timestamp=" + timestramp + "&salt=" + result.salt + "&flvEnable=true"
let respData = await fetch(baseURL + params, {
headers: headers
}).then(r => r.json())
@@ -92,6 +93,7 @@ async function getAndroidURL(userId, token, pid, rateType) {
content: respData
}
}
pid = respData.body.content.contId
// 将URL加密
const resURL = getddCalcuURL(url, pid, "android", rateType)
@@ -120,7 +122,8 @@ async function getAndroidURL720p(pid) {
let headers = {
AppVersion: `${appVersion}`,
TerminalId: "android",
"X-UP-CLIENT-CHANNEL-ID": `${appVersionID}`
"X-UP-CLIENT-CHANNEL-ID": `${appVersionID}`,
"appCode": "miguvideo_default_android"
}
// console.log(headers)
const str = timestramp + pid + appVersion.substring(0, 8)
@@ -138,7 +141,7 @@ async function getAndroidURL720p(pid) {
// 请求
const baseURL = "https://play.miguvideo.com/playurl/v1/play/playurl"
const params = "?sign=" + sign + "&rateType=" + rateType
+ "&contId=" + pid + "&timestamp=" + timestramp + "&salt=" + salt
+ "&contId=" + pid + "&timestamp=" + timestramp + "&salt=" + salt + "&flvEnable=true"
const respData = await fetch(baseURL + params, {
headers: headers
}).then(r => r.json())
@@ -157,6 +160,7 @@ async function getAndroidURL720p(pid) {
}
rateType = respData.body.urlInfo?.rateType
pid = respData.body.content.contId
// 将URL加密
const resURL = getddCalcuURL720p(url, pid)