speed & encryption
parent
c38b65c643
commit
449dd4a202
|
@ -114,8 +114,8 @@ class BTClientPlayer(xbmc.Player):
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
args=Namespace(bt_download_limit=0,#KB
|
args=Namespace(bt_download_limit=self.download_limit,#KB
|
||||||
bt_upload_limit=0,
|
bt_upload_limit=self.upload_limit,
|
||||||
choose_subtitles=False,
|
choose_subtitles=False,
|
||||||
clear_older=0,
|
clear_older=0,
|
||||||
debug_log='',#os.path.join(self.userStorageDirectory, 'log.txt'),
|
debug_log='',#os.path.join(self.userStorageDirectory, 'log.txt'),
|
||||||
|
@ -136,6 +136,7 @@ class BTClientPlayer(xbmc.Player):
|
||||||
url=self.torrentUrl)
|
url=self.torrentUrl)
|
||||||
args=main(args) #config
|
args=main(args) #config
|
||||||
self.free_port = args.port
|
self.free_port = args.port
|
||||||
|
log('BTClientPlayer: args '+str(args))
|
||||||
|
|
||||||
self.btclient=self.stream(args, BTClient)
|
self.btclient=self.stream(args, BTClient)
|
||||||
|
|
||||||
|
@ -195,6 +196,7 @@ class BTClientPlayer(xbmc.Player):
|
||||||
|
|
||||||
log('Starting btclient - libtorrent version %s' % self.lt.version)
|
log('Starting btclient - libtorrent version %s' % self.lt.version)
|
||||||
self.c.start_url(args.url)
|
self.c.start_url(args.url)
|
||||||
|
self.setup_torrent()
|
||||||
|
|
||||||
if self.buffer():
|
if self.buffer():
|
||||||
f = self.c._file
|
f = self.c._file
|
||||||
|
@ -233,38 +235,23 @@ class BTClientPlayer(xbmc.Player):
|
||||||
self.on_playback_paused = []
|
self.on_playback_paused = []
|
||||||
self.on_playback_stopped = []
|
self.on_playback_stopped = []
|
||||||
self.fullSize = 0
|
self.fullSize = 0
|
||||||
|
if self.__settings__.getSetting("upload_limit") == "":
|
||||||
|
self.upload_limit = 0.0
|
||||||
|
else:
|
||||||
|
self.upload_limit = float(self.__settings__.getSetting("upload_limit")) / 8 * 1024
|
||||||
|
if self.__settings__.getSetting("download_limit") == "":
|
||||||
|
self.download_limit = 0.0
|
||||||
|
else:
|
||||||
|
self.download_limit = float(self.__settings__.getSetting("download_limit")) / 8 * 1024
|
||||||
|
|
||||||
def setup_torrent(self):
|
def setup_torrent(self):
|
||||||
self.torrent.initSession()
|
|
||||||
if self.__settings__.getSetting('encryption') == 'true':
|
if self.__settings__.getSetting('encryption') == 'true':
|
||||||
self.torrent.encryptSession()
|
self.c.encrypt()
|
||||||
self.torrent.startSession()
|
#if self.subs_dl:
|
||||||
upload_limit = self.__settings__.getSetting("upload_limit") if self.__settings__.getSetting(
|
# subs = self.torrent.getSubsIds(os.path.basename(self.torrent.getFilePath(self.contentId)))
|
||||||
"upload_limit") != "" else 0
|
# if len(subs) > 0:
|
||||||
if 0 < int(upload_limit):
|
# for ind, title in subs:
|
||||||
self.torrent.setUploadLimit(int(upload_limit) * 1000000 / 8) # MBits/second
|
# self.torrent.continueSession(ind)
|
||||||
download_limit = self.__settings__.getSetting("download_limit") if self.__settings__.getSetting(
|
|
||||||
"download_limit") != "" else 0
|
|
||||||
if 0 < int(download_limit):
|
|
||||||
self.torrent.setDownloadLimit(
|
|
||||||
int(download_limit) * 1000000 / 8) # MBits/second
|
|
||||||
self.torrent.status = False
|
|
||||||
self.fullSize = self.torrent.getFileSize(self.contentId)
|
|
||||||
Offset = calculate(self.fullSize)
|
|
||||||
debug('Offset: '+str(Offset))
|
|
||||||
if self.subs_dl:
|
|
||||||
subs = self.torrent.getSubsIds(os.path.basename(self.torrent.getFilePath(self.contentId)))
|
|
||||||
if len(subs) > 0:
|
|
||||||
for ind, title in subs:
|
|
||||||
self.torrent.continueSession(ind)
|
|
||||||
|
|
||||||
# mp4 fix
|
|
||||||
label = os.path.basename(self.torrent.getFilePath(self.contentId))
|
|
||||||
isMP4 = False
|
|
||||||
if '.' in label and str(label.split('.')[-1]).lower() == 'mp4':
|
|
||||||
isMP4 = True
|
|
||||||
debug('setup_torrent: '+str((self.contentId, Offset, isMP4, label)))
|
|
||||||
self.torrent.continueSession(self.contentId, Offset=Offset, isMP4=isMP4)
|
|
||||||
|
|
||||||
def buffer(self):
|
def buffer(self):
|
||||||
#iterator = 0
|
#iterator = 0
|
||||||
|
@ -455,8 +442,8 @@ class BTClientPlayer(xbmc.Player):
|
||||||
return [
|
return [
|
||||||
self.display_name.decode('utf-8'),
|
self.display_name.decode('utf-8'),
|
||||||
"%.2f%% %s" % (s.progress * 100, self.localize(STATE_STRS[s.state]).decode('utf-8')),
|
"%.2f%% %s" % (s.progress * 100, self.localize(STATE_STRS[s.state]).decode('utf-8')),
|
||||||
"D:%.2f%s U:%.2f%s S:%d P:%d" % (s.download_rate / 1000, self.localize('kb/s').decode('utf-8'),
|
"D:%.2f%s U:%.2f%s S:%d P:%d" % (s.download_rate / 1024, self.localize('kb/s').decode('utf-8'),
|
||||||
s.upload_rate / 1000, self.localize('kb/s').decode('utf-8'),
|
s.upload_rate / 1024, self.localize('kb/s').decode('utf-8'),
|
||||||
s.num_seeds, s.num_peers)
|
s.num_seeds, s.num_peers)
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
@ -20,13 +20,13 @@
|
||||||
<setting id="storage" type="folder" label="30004" default=""/>
|
<setting id="storage" type="folder" label="30004" default=""/>
|
||||||
<setting id="keep_files" type="enum" label="30008" default="1" lvalues="30043|30044|30045"/>
|
<setting id="keep_files" type="enum" label="30008" default="1" lvalues="30043|30044|30045"/>
|
||||||
<setting id="ask_dir" type="bool" label="30031" default="false" enable="!eq(-1,0)" />
|
<setting id="ask_dir" type="bool" label="30031" default="false" enable="!eq(-1,0)" />
|
||||||
<setting id="next_dl" type="bool" label="30013" default="true" visible="eq(-4,0)"/>
|
<setting id="next_dl" type="bool" label="30013" default="true" visible="!eq(-4,1)+"/>
|
||||||
<setting id="upload_limit" type="number" label="30010" default="0" visible="eq(-5,0)"/>
|
<setting id="upload_limit" type="number" label="30010" default="0" visible="!eq(-5,1)"/>
|
||||||
<setting id="download_limit" type="number" label="30011" default="0" visible="eq(-6,0)"/>
|
<setting id="download_limit" type="number" label="30011" default="0" visible="!eq(-6,1)"/>
|
||||||
<setting id="blank" type="text" label="30024" default="" visible="eq(-7,1)"/>
|
<setting id="blank" type="text" label="30024" default="" visible="eq(-7,1)"/>
|
||||||
<setting id="subs_dl" type="bool" label="30029" default="true" visible="eq(-8,0)"/>
|
<setting id="subs_dl" type="bool" label="30029" default="true" visible="!eq(-8,1)"/>
|
||||||
<setting id="keep_seeding" type="bool" label="30030" default="false" visible="eq(-9,0)" enable="eq(-7,1)"/>
|
<setting id="keep_seeding" type="bool" label="30030" default="false" visible="!eq(-9,1)" enable="eq(-7,1)"/>
|
||||||
<setting id="encryption" type="bool" label="30041" default="true" visible="eq(-10,0)"/>
|
<setting id="encryption" type="bool" label="30041" default="true" visible="!eq(-10,1)"/>
|
||||||
</category>
|
</category>
|
||||||
<category label="Torrent-client">
|
<category label="Torrent-client">
|
||||||
<setting id="torrent_save" type="enum" label="50301" lvalues="50302|50303" default="0"/>
|
<setting id="torrent_save" type="enum" label="50301" lvalues="50302|50303" default="0"/>
|
||||||
|
|
Loading…
Reference in New Issue