MCPcopy Create free account
hub / github.com/UndCover/PyramidStore / proxyMedia

Method proxyMedia

plugin/py_ali.py:268–302  ·  view source on GitHub ↗
(self,map)

Source from the content-addressed store, hash-verified

266 return '\n'.join(m3u8List)
267
268 def proxyMedia(self,map):
269 shareId = map['share_id']
270 fileId = map['file_id']
271 mediaId = map['media_id']
272 shareToken = self.getToken(shareId,'')
273
274 refresh = False
275 url = ''
276 ts = 0
277 if fileId in self.localMedia:
278 fileMap = self.localMedia[fileId]
279 if mediaId in fileMap:
280 url = fileMap[mediaId]
281 if len(url) > 0:
282 ts = int(self.regStr(url,"x-oss-expires=(\\d+)&"))
283
284 # url = self.localMedia[fileId][mediaId]
285
286 # ts = int(self.regStr(url,"x-oss-expires=(\\d+)&"))
287
288 self.localTime = int(time.time())
289
290 if ts - self.localTime <= 60:
291 self.getMediaSlice(shareId,shareToken,fileId)
292 url = self.localMedia[fileId][mediaId]
293
294 action = {
295 'url':url,
296 'header':self.header,
297 'param':'',
298 'type':'stream',
299 'after':''
300 }
301 print(action)
302 return [200, "video/MP2T", action, ""]
303
304 def proxyM3U8(self,map):
305 shareId = map['share_id']

Callers 1

localProxyMethod · 0.95

Calls 3

getTokenMethod · 0.95
regStrMethod · 0.95
getMediaSliceMethod · 0.95

Tested by

no test coverage detected