mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-08-27 15:32:59 +02:00
movieplayer dont chache last realurl for lua script
This commit is contained in:
@@ -2095,7 +2095,7 @@ bool CStreamRec::Open(CZapitChannel * channel)
|
||||
return false;
|
||||
|
||||
std::string pretty_name,headers;
|
||||
if (!CMoviePlayerGui::getInstance(true).getLiveUrl(channel->getChannelID(), channel->getUrl(), channel->getScriptName(), url, pretty_name, recMovieInfo->epgInfo1, recMovieInfo->epgInfo2,headers)) {
|
||||
if (!CMoviePlayerGui::getInstance(true).getLiveUrl(channel->getUrl(), channel->getScriptName(), url, pretty_name, recMovieInfo->epgInfo1, recMovieInfo->epgInfo2,headers)) {
|
||||
printf("%s: getLiveUrl() [%s] failed!\n", __FUNCTION__, url.c_str());
|
||||
return false;
|
||||
}
|
||||
|
@@ -773,7 +773,7 @@ bool CStreamStream::Open()
|
||||
return false;
|
||||
|
||||
std::string pretty_name, livestreamInfo1, livestreamInfo2, headers;
|
||||
if (!CMoviePlayerGui::getInstance(true).getLiveUrl(channel->getChannelID(), channel->getUrl(), channel->getScriptName(), url, pretty_name, livestreamInfo1, livestreamInfo2,headers)) {
|
||||
if (!CMoviePlayerGui::getInstance(true).getLiveUrl(channel->getUrl(), channel->getScriptName(), url, pretty_name, livestreamInfo1, livestreamInfo2,headers)) {
|
||||
printf("%s: getLiveUrl() [%s] failed!\n", __FUNCTION__, url.c_str());
|
||||
return false;
|
||||
}
|
||||
|
@@ -933,10 +933,9 @@ bool CMoviePlayerGui::selectLivestream(std::vector<livestream_info_t> &streamLis
|
||||
return false;
|
||||
}
|
||||
|
||||
bool CMoviePlayerGui::getLiveUrl(const t_channel_id chan, const std::string &url, const std::string &script, std::string &realUrl, std::string &_pretty_name, std::string &info1, std::string &info2, std::string &header)
|
||||
bool CMoviePlayerGui::getLiveUrl(const std::string &url, const std::string &script, std::string &realUrl, std::string &_pretty_name, std::string &info1, std::string &info2, std::string &header)
|
||||
{
|
||||
static t_channel_id oldChan = 0;
|
||||
static std::vector<livestream_info_t> liveStreamList;
|
||||
std::vector<livestream_info_t> liveStreamList;
|
||||
livestream_info_t info;
|
||||
|
||||
if (script.empty()) {
|
||||
@@ -950,22 +949,15 @@ bool CMoviePlayerGui::getLiveUrl(const t_channel_id chan, const std::string &url
|
||||
|
||||
size_t pos = _script.find(".lua");
|
||||
if (!file_exists(_script.c_str()) || (pos == std::string::npos) || (_script.length()-pos != 4)) {
|
||||
liveStreamList.clear();
|
||||
printf(">>>>> [%s:%s:%d] script error\n", __file__, __func__, __LINE__);
|
||||
return false;
|
||||
}
|
||||
if ((oldChan != chan) || liveStreamList.empty()) {
|
||||
liveStreamList.clear();
|
||||
if (!luaGetUrl(_script, url, liveStreamList)) {
|
||||
liveStreamList.clear();
|
||||
printf(">>>>> [%s:%s:%d] lua script error\n", __file__, __func__, __LINE__);
|
||||
return false;
|
||||
}
|
||||
oldChan = chan;
|
||||
if (!luaGetUrl(_script, url, liveStreamList)) {
|
||||
printf(">>>>> [%s:%s:%d] lua script error\n", __file__, __func__, __LINE__);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!selectLivestream(liveStreamList, g_settings.livestreamResolution, &info)) {
|
||||
liveStreamList.clear();
|
||||
printf(">>>>> [%s:%s:%d] error selectLivestream\n", __file__, __func__, __LINE__);
|
||||
return false;
|
||||
}
|
||||
@@ -1034,7 +1026,7 @@ bool CMoviePlayerGui::PlayBackgroundStart(const std::string &file, const std::st
|
||||
std::string realUrl;
|
||||
std::string _pretty_name = name;
|
||||
cookie_header.clear();
|
||||
if (!getLiveUrl(chan, file, script, realUrl, _pretty_name, livestreamInfo1, livestreamInfo2, cookie_header)) {
|
||||
if (!getLiveUrl(file, script, realUrl, _pretty_name, livestreamInfo1, livestreamInfo2, cookie_header)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@@ -269,7 +269,7 @@ class CMoviePlayerGui : public CMenuTarget
|
||||
bool getBlockedFromPlugin() { return blockedFromPlugin; };
|
||||
void setLuaInfoFunc(lua_State* L, bool func) { luaState = L; haveLuaInfoFunc = func; };
|
||||
void getLivestreamInfo(std::string *i1, std::string *i2) { *i1=livestreamInfo1; *i2=livestreamInfo2; };
|
||||
bool getLiveUrl(const t_channel_id chan, const std::string &url, const std::string &script, std::string &realUrl, std::string &_pretty_name, std::string &info1, std::string &info2, std::string &header);
|
||||
bool getLiveUrl(const std::string &url, const std::string &script, std::string &realUrl, std::string &_pretty_name, std::string &info1, std::string &info2, std::string &header);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user