Ivars преди 8 години
родител
ревизия
2d2b424345
променени са 6 файла, в които са добавени 410 реда и са изтрити 274 реда
  1. 387
    267
      PlayStream.wpr
  2. 12
    2
      imake.bat
  3. 8
    2
      readme.md
  4. Двоични данни
      release/enigma2-plugin-extensions-playstream_0.5k.ipk
  5. 1
    2
      sources/filmix.py
  6. 2
    1
      sources/ustvnow.py

+ 387
- 267
PlayStream.wpr Целия файл

@@ -12,7 +12,7 @@ proj.directory-list = [{'dirloc': loc('.'),
12 12
                         'watch_for_changes': True}]
13 13
 proj.file-type = 'normal'
14 14
 proj.launch-config = {loc('ContentSources.py'): ('project',
15
-        (u'ltc::home',
15
+        (u'config::home',
16 16
          '')),
17 17
                       loc('filmix_decode2.py'): ('project',
18 18
         (u'XRHzQZe3yvH32Z5ly1b3XakY7RUw7LYl7L60yM2n2ZQLOZtlfZUT2mUW2jkw2xtv2W20fxEMOZcLfW50yM=Va02lynHeDSYPDWDwQWwgDLsL2ZEMyVnmizlgkzkCHEGSXabNmLlzOZA4205laSYIQZch',
@@ -128,7 +128,7 @@ debug.breakpoints = {loc('gstreamer/player-minimal.py'): {12: (0,
128 128
               None,
129 129
               1,
130 130
               0),
131
-        284: (0,
131
+        283: (0,
132 132
               None,
133 133
               1,
134 134
               0)},
@@ -136,10 +136,14 @@ debug.breakpoints = {loc('gstreamer/player-minimal.py'): {12: (0,
136 136
         None,
137 137
         1,
138 138
         0)},
139
-                     loc('sources/kinofilmnet.py'): {172: (0,
139
+                     loc('sources/kinofilmnet.py'): {151: (0,
140 140
         None,
141 141
         1,
142
-        0)},
142
+        0),
143
+        172: (0,
144
+              None,
145
+              1,
146
+              0)},
143 147
                      loc('sources/ltc.py'): {73: (0,
144 148
         None,
145 149
         1,
@@ -288,7 +292,7 @@ debug.breakpoints = {loc('gstreamer/player-minimal.py'): {12: (0,
288 292
               None,
289 293
               1,
290 294
               0)},
291
-                     loc('sources/ustvnow.py'): {58: (0,
295
+                     loc('sources/ustvnow.py'): {59: (0,
292 296
         None,
293 297
         1,
294 298
         0)},
@@ -339,6 +343,10 @@ debug.breakpoints = {loc('gstreamer/player-minimal.py'): {12: (0,
339 343
                      loc('util.py'): {51: (0,
340 344
         None,
341 345
         1,
346
+        0),
347
+                                      85: (0,
348
+        None,
349
+        1,
342 350
         0)},
343 351
                      loc('viaplay/vialib.py'): {84: (0,
344 352
         None,
@@ -4949,9 +4957,10 @@ debug.err-values = {None: {},
4949 4957
                                     0)},
4950 4958
                     loc('test_sources.py'): {},
4951 4959
                     loc('viaplay/vialib.py'): {}}
4952
-debug.recent-run-args = {loc('ContentSources.py'): [u'ltc::home',
4960
+debug.recent-run-args = {loc('ContentSources.py'): [u'config::home',
4961
+        u'filmix::home',
4962
+        u'ltc::home',
4953 4963
         u'ltc::videonoma/raidijumi/littlest_pet_shop_s1e26?series',
4954
-        u'config::home',
4955 4964
         u'viaplay::home',
4956 4965
         u'kinofilmnet::home',
4957 4966
         u'viaplay::kids',
@@ -4962,7 +4971,6 @@ debug.recent-run-args = {loc('ContentSources.py'): [u'ltc::home',
4962 4971
         u'filmix::series',
4963 4972
         u'filmix::films',
4964 4973
         u'filmix::play/109175',
4965
-        u'filmix::home',
4966 4974
         u'replay::home',
4967 4975
         u'tvdom::home',
4968 4976
         u'replay::search/?term=rondo\n',
@@ -5056,23 +5064,24 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5056 5064
         'type': 'dock',
5057 5065
         'view': {'area': 'tall',
5058 5066
                  'constraint': None,
5059
-                 'current_pages': [1,
5067
+                 'current_pages': [0,
5060 5068
                                    0],
5061 5069
                  'full-screen': False,
5062 5070
                  'notebook_display': 'normal',
5063
-                 'notebook_percent': 0.18907736863880842,
5071
+                 'notebook_percent': 0.23133716160787532,
5064 5072
                  'override_title': None,
5065 5073
                  'pagelist': [('project',
5066 5074
                                'tall',
5067 5075
                                0,
5068 5076
                                {'tree-state': {'file-sort-method': 'by name',
5069 5077
         'list-files-first': False,
5070
-        'tree-states': {'deep': {'expanded-nodes': [(9,),
5071
-        (17,),
5072
-        (75,),
5073
-        (110,)],
5074
-                                 'selected-nodes': [(27,)],
5075
-                                 'top-node': (0,)}},
5078
+        'tree-states': {'deep': {'expanded-nodes': [(17,),
5079
+        (74,),
5080
+        (108,)],
5081
+                                 'selected-nodes': [(17,
5082
+        8)],
5083
+                                 'top-node': (17,
5084
+        1)}},
5076 5085
         'tree-style': 'deep'}}),
5077 5086
                               ('snippets',
5078 5087
                                'tall',
@@ -5108,7 +5117,7 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5108 5117
                                {'tree-state': []})],
5109 5118
                  'primary_view_state': {'area': 'wide',
5110 5119
         'constraint': None,
5111
-        'current_pages': [7,
5120
+        'current_pages': [1,
5112 5121
                           1],
5113 5122
         'notebook_display': 'normal',
5114 5123
         'notebook_percent': 0.40625,
@@ -5159,7 +5168,7 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5159 5168
                                        'fRegexFlags': 46,
5160 5169
                                        'fReplaceText': u'self.',
5161 5170
                                        'fReverse': False,
5162
-                                       'fSearchText': u'timer',
5171
+                                       'fSearchText': u'gst-',
5163 5172
                                        'fStartPos': 0,
5164 5173
                                        'fStyle': 'text',
5165 5174
                                        'fWholeWords': False,
@@ -5216,20 +5225,17 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5216 5225
         -1,
5217 5226
         -1),
5218 5227
                        'attrib-starts': [],
5219
-                       'first-line': 82,
5228
+                       'first-line': 1215,
5220 5229
                        'folded-linenos': [],
5221 5230
                        'history': {u'file:C:/Data/Programming/enigma2/PlayStream2/ContentSources.py': ['u'\
5222 5231
         'rl\n',
5223
-        'print url\n',
5224
-        'self\n',
5225
-        'self.api_url\n',
5226
-        'dir(self)\n',
5227
-        '"api_url" in dir(self)\n']},
5232
+        'print r\n',
5233
+        'print url\n']},
5228 5234
                        'launch-id': None,
5229
-                       'sel-line': 93,
5230
-                       'sel-line-start': 1439,
5231
-                       'selection_end': 1439,
5232
-                       'selection_start': 1439}),
5235
+                       'sel-line': 1225,
5236
+                       'sel-line-start': 82159,
5237
+                       'selection_end': 82269,
5238
+                       'selection_start': 82159}),
5233 5239
                      ('debug-watch',
5234 5240
                       'wide',
5235 5241
                       1,
@@ -5245,7 +5251,9 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5245 5251
         u'tracks'),
5246 5252
                                        ('eval',
5247 5253
         u't')],
5248
-                       'tree-state': {'expanded-nodes': [],
5254
+                       'tree-state': {'expanded-nodes': [(3,),
5255
+        (3,
5256
+         0)],
5249 5257
                                       'selected-nodes': [(0,)],
5250 5258
                                       'top-node': (0,)}}),
5251 5259
                      ('debug-modules',
@@ -5281,216 +5289,240 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5281 5289
                       {})],
5282 5290
         'primary_view_state': {'editor_states': ('vertical',
5283 5291
         1.0,
5284
-        ({'bookmarks': ([[loc('PlayStream.py'),
5285
-                          {'attrib-starts': [('PSPlayer',
5286
-        91),
5287
-        ('PSPlayer.service_info',
5288
-         225)],
5289
-                           'first-line': 215,
5290
-                           'folded-linenos': [],
5291
-                           'sel-line': 232,
5292
-                           'sel-line-start': 9024,
5293
-                           'selection_end': 9077,
5294
-                           'selection_start': 9072},
5295
-                          1480756796.863],
5296
-                         [loc('PlayStream.py'),
5297
-                          {'attrib-starts': [('MainScreen',
5298
-        318)],
5299
-                           'first-line': 311,
5292
+        ({'bookmarks': ([[loc('util.py'),
5293
+                          {'attrib-starts': [('play_video',
5294
+        49)],
5295
+                           'first-line': 0,
5300 5296
                            'folded-linenos': [],
5301
-                           'sel-line': 328,
5302
-                           'sel-line-start': 12826,
5303
-                           'selection_end': 12897,
5304
-                           'selection_start': 12892},
5305
-                          1480756797.782],
5306
-                         [loc('PlayStream.py'),
5307
-                          {'attrib-starts': [('MainScreen',
5308
-        318),
5309
-        ('MainScreen.Ok',
5310
-         491)],
5311
-                           'first-line': 526,
5297
+                           'sel-line': 70,
5298
+                           'sel-line-start': 1928,
5299
+                           'selection_end': 1928,
5300
+                           'selection_start': 1928},
5301
+                          1481149538.99],
5302
+                         [loc('util.py'),
5303
+                          {'attrib-starts': [('play_video',
5304
+        49)],
5305
+                           'first-line': 66,
5312 5306
                            'folded-linenos': [],
5313
-                           'sel-line': 532,
5314
-                           'sel-line-start': 22660,
5315
-                           'selection_end': 22728,
5316
-                           'selection_start': 22728},
5317
-                          1480756800.912],
5318
-                         [loc('PlayStream.py'),
5319
-                          {'attrib-starts': [('MainScreen',
5320
-        318),
5321
-        ('MainScreen.Ok',
5322
-         491)],
5323
-                           'first-line': 526,
5307
+                           'sel-line': 83,
5308
+                           'sel-line-start': 2447,
5309
+                           'selection_end': 2486,
5310
+                           'selection_start': 2485},
5311
+                          1481149540.094],
5312
+                         [loc('util.py'),
5313
+                          {'attrib-starts': [('player',
5314
+        86)],
5315
+                           'first-line': 76,
5324 5316
                            'folded-linenos': [],
5325
-                           'sel-line': 534,
5326
-                           'sel-line-start': 22746,
5327
-                           'selection_end': 22766,
5328
-                           'selection_start': 22765},
5329
-                          1480756802.509],
5330
-                         [loc('PlayStream.py'),
5331
-                          {'attrib-starts': [],
5332
-                           'first-line': 9,
5317
+                           'sel-line': 97,
5318
+                           'sel-line-start': 3194,
5319
+                           'selection_end': 3215,
5320
+                           'selection_start': 3204},
5321
+                          1481371034.176],
5322
+                         [loc('ContentSources.py'),
5323
+                          {'attrib-starts': [('ContentSources',
5324
+        15),
5325
+        ('ContentSources.get_streams',
5326
+         74)],
5327
+                           'first-line': 87,
5333 5328
                            'folded-linenos': [],
5334
-                           'sel-line': 14,
5335
-                           'sel-line-start': 466,
5336
-                           'selection_end': 513,
5337
-                           'selection_start': 513},
5338
-                          1480756808.806],
5339
-                         [loc('PlayStream.py'),
5340
-                          {'attrib-starts': [],
5341
-                           'first-line': 9,
5329
+                           'sel-line': 94,
5330
+                           'sel-line-start': 3796,
5331
+                           'selection_end': 3829,
5332
+                           'selection_start': 3829},
5333
+                          1481371054.748],
5334
+                         [loc('sources/replay.py'),
5335
+                          {'attrib-starts': [('Source',
5336
+        25),
5337
+        ('Source.get_content',
5338
+         36)],
5339
+                           'first-line': 233,
5342 5340
                            'folded-linenos': [],
5343
-                           'sel-line': 14,
5344
-                           'sel-line-start': 466,
5345
-                           'selection_end': 520,
5346
-                           'selection_start': 514},
5347
-                          1480756809.501],
5348
-                         [loc('PlayStream.py'),
5349
-                          {'attrib-starts': [('PSPlayer',
5350
-        91),
5351
-        ('PSPlayer.__init__',
5352
-         92)],
5353
-                           'first-line': 104,
5341
+                           'sel-line': 245,
5342
+                           'sel-line-start': 13416,
5343
+                           'selection_end': 13416,
5344
+                           'selection_start': 13416},
5345
+                          1481371071.983],
5346
+                         [loc('sources/SourceBase.py'),
5347
+                          {'attrib-starts': [('SourceBase',
5348
+        18),
5349
+        ('SourceBase.get_streams',
5350
+         47)],
5351
+                           'first-line': 42,
5354 5352
                            'folded-linenos': [],
5355
-                           'sel-line': 121,
5356
-                           'sel-line-start': 4996,
5357
-                           'selection_end': 5024,
5358
-                           'selection_start': 5018},
5359
-                          1480758158.263],
5360
-                         [loc('sniplets.py'),
5361
-                          {'attrib-starts': [],
5362
-                           'first-line': 0,
5353
+                           'sel-line': 59,
5354
+                           'sel-line-start': 2232,
5355
+                           'selection_end': 2232,
5356
+                           'selection_start': 2232},
5357
+                          1481371086.367],
5358
+                         [loc('ContentSources.py'),
5359
+                          {'attrib-starts': [('ContentSources',
5360
+        15),
5361
+        ('ContentSources.get_streams',
5362
+         74)],
5363
+                           'first-line': 87,
5363 5364
                            'folded-linenos': [],
5364
-                           'sel-line': 0,
5365
-                           'sel-line-start': 0,
5366
-                           'selection_end': 0,
5367
-                           'selection_start': 0},
5368
-                          1480758171.285],
5369
-                         [loc('sniplets.py'),
5370
-                          {'attrib-starts': [],
5371
-                           'first-line': 0,
5365
+                           'sel-line': 94,
5366
+                           'sel-line-start': 3796,
5367
+                           'selection_end': 3796,
5368
+                           'selection_start': 3796},
5369
+                          1481371095.354],
5370
+                         [loc('util.py'),
5371
+                          {'attrib-starts': [('play_video',
5372
+        49)],
5373
+                           'first-line': 67,
5372 5374
                            'folded-linenos': [],
5373
-                           'sel-line': 4,
5374
-                           'sel-line-start': 124,
5375
-                           'selection_end': 143,
5376
-                           'selection_start': 135},
5377
-                          1480758572.581],
5375
+                           'sel-line': 84,
5376
+                           'sel-line-start': 2507,
5377
+                           'selection_end': 2507,
5378
+                           'selection_start': 2507},
5379
+                          1481414443.715],
5378 5380
                          [loc('ContentSources.py'),
5379
-                          {'attrib-starts': [],
5380
-                           'first-line': 173,
5381
+                          {'attrib-starts': [('ContentSources',
5382
+        15),
5383
+        ('ContentSources.get_streams',
5384
+         74)],
5385
+                           'first-line': 87,
5381 5386
                            'folded-linenos': [],
5382
-                           'sel-line': 192,
5383
-                           'sel-line-start': 6829,
5384
-                           'selection_end': 6829,
5385
-                           'selection_start': 6829},
5386
-                          1480758581.095],
5387
-                         [loc('sources/ltc.py'),
5387
+                           'sel-line': 94,
5388
+                           'sel-line-start': 3796,
5389
+                           'selection_end': 3796,
5390
+                           'selection_start': 3796},
5391
+                          1481414529.33],
5392
+                         [loc('sources/kinofilmnet.py'),
5388 5393
                           {'attrib-starts': [('Source',
5389
-        24),
5390
-        ('Source.get_content',
5391
-         71)],
5392
-                           'first-line': 67,
5394
+        23),
5395
+        ('Source.get_streams',
5396
+         149)],
5397
+                           'first-line': 154,
5393 5398
                            'folded-linenos': [],
5394
-                           'sel-line': 72,
5395
-                           'sel-line-start': 2705,
5396
-                           'selection_end': 2705,
5397
-                           'selection_start': 2705},
5398
-                          1480758647.62],
5399
-                         [loc('PlayStream.py'),
5400
-                          {'attrib-starts': [('PSPlayer',
5401
-        91),
5402
-        ('PSPlayer.__init__',
5403
-         92)],
5404
-                           'first-line': 109,
5399
+                           'sel-line': 166,
5400
+                           'sel-line-start': 7521,
5401
+                           'selection_end': 7521,
5402
+                           'selection_start': 7521},
5403
+                          1481415143.712],
5404
+                         [loc('ContentSources.py'),
5405
+                          {'attrib-starts': [('ContentSources',
5406
+        15),
5407
+        ('ContentSources.get_streams',
5408
+         74)],
5409
+                           'first-line': 87,
5405 5410
                            'folded-linenos': [],
5406
-                           'sel-line': 124,
5407
-                           'sel-line-start': 5133,
5408
-                           'selection_end': 5147,
5409
-                           'selection_start': 5147},
5410
-                          1480758789.926],
5411
-                         [loc('sniplets.py'),
5412
-                          {'attrib-starts': [],
5413
-                           'first-line': 0,
5411
+                           'sel-line': 94,
5412
+                           'sel-line-start': 3796,
5413
+                           'selection_end': 3796,
5414
+                           'selection_start': 3796},
5415
+                          1481415159.443],
5416
+                         [loc('sources/ustvnow.py'),
5417
+                          {'attrib-starts': [('Source',
5418
+        28),
5419
+        ('Source.login',
5420
+         44)],
5421
+                           'first-line': 55,
5414 5422
                            'folded-linenos': [],
5415
-                           'sel-line': 1,
5416
-                           'sel-line-start': 28,
5417
-                           'selection_end': 74,
5418
-                           'selection_start': 67},
5419
-                          1480758809.125],
5420
-                         [loc('PlayStream.py'),
5421
-                          {'attrib-starts': [('PSPlayer',
5422
-        91),
5423
-        ('PSPlayer.__init__',
5424
-         92)],
5425
-                           'first-line': 109,
5423
+                           'sel-line': 57,
5424
+                           'sel-line-start': 2180,
5425
+                           'selection_end': 2223,
5426
+                           'selection_start': 2223},
5427
+                          1481416133.375],
5428
+                         [loc('ContentSources.py'),
5429
+                          {'attrib-starts': [('ContentSources',
5430
+        15),
5431
+        ('ContentSources.get_streams',
5432
+         74)],
5433
+                           'first-line': 87,
5426 5434
                            'folded-linenos': [],
5427
-                           'sel-line': 125,
5428
-                           'sel-line-start': 5157,
5429
-                           'selection_end': 5219,
5430
-                           'selection_start': 5219},
5431
-                          1480758825.135],
5432
-                         [loc('sniplets.py'),
5433
-                          {'attrib-starts': [],
5434
-                           'first-line': 0,
5435
+                           'sel-line': 94,
5436
+                           'sel-line-start': 3796,
5437
+                           'selection_end': 3796,
5438
+                           'selection_start': 3796},
5439
+                          1481416147.512],
5440
+                         [loc('sources/ustvnow.py'),
5441
+                          {'attrib-starts': [('Source',
5442
+        28),
5443
+        ('Source.login',
5444
+         44)],
5445
+                           'first-line': 47,
5435 5446
                            'folded-linenos': [],
5436
-                           'sel-line': 1,
5437
-                           'sel-line-start': 28,
5438
-                           'selection_end': 82,
5439
-                           'selection_start': 51},
5440
-                          1480758835.647],
5441
-                         [loc('PlayStream.py'),
5442
-                          {'attrib-starts': [('PSPlayer',
5443
-        91),
5444
-        ('PSPlayer.__init__',
5445
-         92)],
5446
-                           'first-line': 131,
5447
+                           'sel-line': 63,
5448
+                           'sel-line-start': 2478,
5449
+                           'selection_end': 2478,
5450
+                           'selection_start': 2478},
5451
+                          1481416278.649],
5452
+                         [loc('ContentSources.py'),
5453
+                          {'attrib-starts': [('ContentSources',
5454
+        15),
5455
+        ('ContentSources.get_streams',
5456
+         74)],
5457
+                           'first-line': 87,
5458
+                           'folded-linenos': [],
5459
+                           'sel-line': 94,
5460
+                           'sel-line-start': 3796,
5461
+                           'selection_end': 3796,
5462
+                           'selection_start': 3796},
5463
+                          1481416290.17],
5464
+                         [loc('sources/ustvnow.py'),
5465
+                          {'attrib-starts': [('Source',
5466
+        28),
5467
+        ('Source.login',
5468
+         44)],
5469
+                           'first-line': 41,
5447 5470
                            'folded-linenos': [],
5448
-                           'sel-line': 138,
5449
-                           'sel-line-start': 5629,
5450
-                           'selection_end': 5663,
5451
-                           'selection_start': 5663},
5452
-                          1480759343.704],
5453
-                         [loc('PlayStream.py'),
5454
-                          {'attrib-starts': [('MainScreen',
5455
-        324)],
5456
-                           'first-line': 327,
5471
+                           'sel-line': 53,
5472
+                           'sel-line-start': 2010,
5473
+                           'selection_end': 2040,
5474
+                           'selection_start': 2040},
5475
+                          1481416344.922],
5476
+                         [loc('ContentSources.py'),
5477
+                          {'attrib-starts': [('ContentSources',
5478
+        15),
5479
+        ('ContentSources.get_streams',
5480
+         74)],
5481
+                           'first-line': 87,
5457 5482
                            'folded-linenos': [],
5458
-                           'sel-line': 331,
5459
-                           'sel-line-start': 12889,
5460
-                           'selection_end': 12909,
5461
-                           'selection_start': 12909},
5462
-                          1480761919.893],
5463
-                         [loc('PlayStream.py'),
5464
-                          {'attrib-starts': [('MainScreen',
5465
-        324)],
5466
-                           'first-line': 320,
5483
+                           'sel-line': 94,
5484
+                           'sel-line-start': 3796,
5485
+                           'selection_end': 3796,
5486
+                           'selection_start': 3796},
5487
+                          1481416358.672],
5488
+                         [loc('sources/ustvnow.py'),
5489
+                          {'attrib-starts': [('Source',
5490
+        28),
5491
+        ('Source.login',
5492
+         44)],
5493
+                           'first-line': 48,
5467 5494
                            'folded-linenos': [],
5468
-                           'sel-line': 331,
5469
-                           'sel-line-start': 12889,
5470
-                           'selection_end': 12911,
5471
-                           'selection_start': 12910},
5472
-                          1480761920.764],
5473
-                         [loc('PlayStream.py'),
5474
-                          {'attrib-starts': [('MainScreen',
5475
-        324)],
5476
-                           'first-line': 320,
5495
+                           'sel-line': 56,
5496
+                           'sel-line-start': 2058,
5497
+                           'selection_end': 2066,
5498
+                           'selection_start': 2066},
5499
+                          1481416411.631],
5500
+                         [loc('ContentSources.py'),
5501
+                          {'attrib-starts': [('ContentSources',
5502
+        15),
5503
+        ('ContentSources.get_streams',
5504
+         74)],
5505
+                           'first-line': 87,
5477 5506
                            'folded-linenos': [],
5478
-                           'sel-line': 331,
5479
-                           'sel-line-start': 12889,
5480
-                           'selection_end': 12930,
5481
-                           'selection_start': 12928},
5482
-                          1480761921.605],
5483
-                         [loc('PlayStream.py'),
5484
-                          {'attrib-starts': [],
5485
-                           'first-line': 9,
5507
+                           'sel-line': 94,
5508
+                           'sel-line-start': 3796,
5509
+                           'selection_end': 3796,
5510
+                           'selection_start': 3796},
5511
+                          1481416424.704],
5512
+                         [loc('sources/ustvnow.py'),
5513
+                          {'attrib-starts': [('Source',
5514
+        28),
5515
+        ('Source.login',
5516
+         44)],
5517
+                           'first-line': 48,
5486 5518
                            'folded-linenos': [],
5487
-                           'sel-line': 14,
5488
-                           'sel-line-start': 466,
5489
-                           'selection_end': 520,
5490
-                           'selection_start': 515},
5491
-                          1480761922.368]],
5519
+                           'sel-line': 59,
5520
+                           'sel-line-start': 2351,
5521
+                           'selection_end': 2351,
5522
+                           'selection_start': 2351},
5523
+                          1481416464.308]],
5492 5524
                         20),
5493
-          'current-loc': loc('PlayStream.py'),
5525
+          'current-loc': loc('ContentSources.py'),
5494 5526
           'editor-state-list': [(loc('plugin.py'),
5495 5527
                                  {'attrib-starts': [('main',
5496 5528
         4)],
@@ -5505,29 +5537,32 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5505 5537
         91),
5506 5538
         ('PSPlayer.__init__',
5507 5539
          92)],
5508
-                                  'first-line': 104,
5540
+                                  'first-line': 94,
5509 5541
                                   'folded-linenos': [],
5510
-                                  'sel-line': 125,
5511
-                                  'sel-line-start': 5157,
5512
-                                  'selection_end': 5188,
5513
-                                  'selection_start': 5188}),
5542
+                                  'sel-line': 100,
5543
+                                  'sel-line-start': 4102,
5544
+                                  'selection_end': 4110,
5545
+                                  'selection_start': 4110}),
5514 5546
                                 (loc('util.py'),
5515 5547
                                  {'attrib-starts': [('play_video',
5516 5548
         49)],
5517
-                                  'first-line': 45,
5549
+                                  'first-line': 67,
5518 5550
                                   'folded-linenos': [],
5519
-                                  'sel-line': 50,
5520
-                                  'sel-line-start': 1408,
5521
-                                  'selection_end': 1408,
5522
-                                  'selection_start': 1408}),
5551
+                                  'sel-line': 84,
5552
+                                  'sel-line-start': 2507,
5553
+                                  'selection_end': 2507,
5554
+                                  'selection_start': 2507}),
5523 5555
                                 (loc('ContentSources.py'),
5524
-                                 {'attrib-starts': [],
5525
-                                  'first-line': 173,
5556
+                                 {'attrib-starts': [('ContentSources',
5557
+        15),
5558
+        ('ContentSources.get_streams',
5559
+         74)],
5560
+                                  'first-line': 87,
5526 5561
                                   'folded-linenos': [],
5527
-                                  'sel-line': 192,
5528
-                                  'sel-line-start': 6829,
5529
-                                  'selection_end': 6829,
5530
-                                  'selection_start': 6829}),
5562
+                                  'sel-line': 94,
5563
+                                  'sel-line-start': 3796,
5564
+                                  'selection_end': 3796,
5565
+                                  'selection_start': 3796}),
5531 5566
                                 (loc('sources/viaplay.py'),
5532 5567
                                  {'attrib-starts': [('Source',
5533 5568
         26),
@@ -5566,12 +5601,12 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5566 5601
         23),
5567 5602
         ('Source.get_streams',
5568 5603
          149)],
5569
-                                  'first-line': 162,
5604
+                                  'first-line': 154,
5570 5605
                                   'folded-linenos': [],
5571
-                                  'sel-line': 172,
5572
-                                  'sel-line-start': 7708,
5573
-                                  'selection_end': 7732,
5574
-                                  'selection_start': 7724}),
5606
+                                  'sel-line': 166,
5607
+                                  'sel-line-start': 7521,
5608
+                                  'selection_end': 7521,
5609
+                                  'selection_start': 7521}),
5575 5610
                                 (loc('sources/ltc.py'),
5576 5611
                                  {'attrib-starts': [('Source',
5577 5612
         24),
@@ -5621,8 +5656,41 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5621 5656
                                   'sel-line': 1,
5622 5657
                                   'sel-line-start': 28,
5623 5658
                                   'selection_end': 82,
5624
-                                  'selection_start': 51})],
5625
-          'has-focus': False,
5659
+                                  'selection_start': 51}),
5660
+                                (loc('sources/filmix.py'),
5661
+                                 {'attrib-starts': [('Source',
5662
+        24),
5663
+        ('Source.get_content',
5664
+         49)],
5665
+                                  'first-line': 106,
5666
+                                  'folded-linenos': [],
5667
+                                  'sel-line': 117,
5668
+                                  'sel-line-start': 4649,
5669
+                                  'selection_end': 4649,
5670
+                                  'selection_start': 4649}),
5671
+                                (loc('sources/replay.py'),
5672
+                                 {'attrib-starts': [('Source',
5673
+        25),
5674
+        ('Source.get_content',
5675
+         36)],
5676
+                                  'first-line': 233,
5677
+                                  'folded-linenos': [],
5678
+                                  'sel-line': 245,
5679
+                                  'sel-line-start': 13416,
5680
+                                  'selection_end': 13416,
5681
+                                  'selection_start': 13416}),
5682
+                                (loc('sources/ustvnow.py'),
5683
+                                 {'attrib-starts': [('Source',
5684
+        28),
5685
+        ('Source.login',
5686
+         44)],
5687
+                                  'first-line': 48,
5688
+                                  'folded-linenos': [],
5689
+                                  'sel-line': 59,
5690
+                                  'sel-line-start': 2351,
5691
+                                  'selection_end': 2351,
5692
+                                  'selection_start': 2351})],
5693
+          'has-focus': True,
5626 5694
           'locked': False},
5627 5695
          [loc('plugin.py'),
5628 5696
           loc('PlayStream.py'),
@@ -5636,7 +5704,10 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5636 5704
           loc('resolvers/hdgo.py'),
5637 5705
           loc('ChoiceBox.py'),
5638 5706
           loc('../python/Components/GUISkin.py'),
5639
-          loc('sniplets.py')]),
5707
+          loc('sniplets.py'),
5708
+          loc('sources/filmix.py'),
5709
+          loc('sources/replay.py'),
5710
+          loc('sources/ustvnow.py')]),
5640 5711
         ({'bookmarks': ([[loc('sources/viaplay.py'),
5641 5712
                           {'attrib-starts': [('Source',
5642 5713
         19),
@@ -5878,6 +5949,17 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5878 5949
                                   'selection_start': 2626}),
5879 5950
                                 (loc('sources/euronews.py'),
5880 5951
                                  {}),
5952
+                                (loc('sources/filmix.py'),
5953
+                                 {'attrib-starts': [('Source',
5954
+        24),
5955
+        ('Source.get_content',
5956
+         49)],
5957
+                                  'first-line': 97,
5958
+                                  'folded-linenos': [],
5959
+                                  'sel-line': 102,
5960
+                                  'sel-line-start': 3784,
5961
+                                  'selection_end': 3784,
5962
+                                  'selection_start': 3784}),
5881 5963
                                 (loc('resolvers/hdgo.py'),
5882 5964
                                  {'attrib-starts': [],
5883 5965
                                   'first-line': 74,
@@ -5928,6 +6010,17 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5928 6010
                                   'selection_start': 112}),
5929 6011
                                 (loc('sniplets.py'),
5930 6012
                                  {}),
6013
+                                (loc('sources/ustvnow.py'),
6014
+                                 {'attrib-starts': [('Source',
6015
+        28),
6016
+        ('Source.login',
6017
+         44)],
6018
+                                  'first-line': 18,
6019
+                                  'folded-linenos': [],
6020
+                                  'sel-line': 47,
6021
+                                  'sel-line-start': 1703,
6022
+                                  'selection_end': 1730,
6023
+                                  'selection_start': 1730}),
5931 6024
                                 (loc('util.py'),
5932 6025
                                  {'attrib-starts': [('player',
5933 6026
         86)],
@@ -5949,12 +6042,30 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5949 6042
                                   'selection_end': 5488,
5950 6043
                                   'selection_start': 5476}),
5951 6044
                                 (loc('../python/Components/GUISkin.py'),
5952
-                                 {})],
6045
+                                 {'attrib-starts': [],
6046
+                                  'first-line': 0,
6047
+                                  'folded-linenos': [],
6048
+                                  'sel-line': 0,
6049
+                                  'sel-line-start': 0,
6050
+                                  'selection_end': 0,
6051
+                                  'selection_start': 0}),
6052
+                                (loc('sources/replay.py'),
6053
+                                 {'attrib-starts': [('Source',
6054
+        25),
6055
+        ('Source.get_content',
6056
+         36)],
6057
+                                  'first-line': 224,
6058
+                                  'folded-linenos': [],
6059
+                                  'sel-line': 234,
6060
+                                  'sel-line-start': 12780,
6061
+                                  'selection_end': 12780,
6062
+                                  'selection_start': 12780})],
5953 6063
           'has-focus': False,
5954 6064
           'locked': False},
5955 6065
          [loc('ChoiceBox.py'),
5956 6066
           loc('ContentSources.py'),
5957 6067
           loc('sources/euronews.py'),
6068
+          loc('sources/filmix.py'),
5958 6069
           loc('resolvers/hdgo.py'),
5959 6070
           loc('sources/iplayer.py'),
5960 6071
           loc('sources/kinofilmnet.py'),
@@ -5962,24 +6073,29 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5962 6073
           loc('PlayStream.py'),
5963 6074
           loc('plugin.py'),
5964 6075
           loc('sniplets.py'),
6076
+          loc('sources/ustvnow.py'),
5965 6077
           loc('util.py'),
5966 6078
           loc('sources/viaplay.py'),
5967
-          loc('../python/Components/GUISkin.py')])),
6079
+          loc('../python/Components/GUISkin.py'),
6080
+          loc('sources/replay.py')])),
5968 6081
                                'open_files': [u'ChoiceBox.py',
6082
+        u'PlayStream.py',
5969 6083
         u'plugin.py',
5970 6084
         u'resolvers/hdgo.py',
6085
+        u'sniplets.py',
5971 6086
         u'sources/euronews.py',
6087
+        u'sources/filmix.py',
5972 6088
         u'sources/iplayer.py',
5973
-        u'sources/kinofilmnet.py',
6089
+        u'sources/ltc.py',
5974 6090
         u'sources/viaplay.py',
5975 6091
         u'../python/Components/GUISkin.py',
6092
+        u'sources/replay.py',
5976 6093
         u'util.py',
5977
-        u'ContentSources.py',
5978
-        u'sources/ltc.py',
5979
-        u'sniplets.py',
5980
-        u'PlayStream.py']},
6094
+        u'sources/kinofilmnet.py',
6095
+        u'sources/ustvnow.py',
6096
+        u'ContentSources.py']},
5981 6097
         'saved_notebook_display': None,
5982
-        'split_percents': {0: 0.2603027754415475},
6098
+        'split_percents': {0: 0.33756345177664976},
5983 6099
         'splits': 2,
5984 6100
         'tab_location': 'top',
5985 6101
         'user_data': {}},
@@ -5992,18 +6108,22 @@ guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
5992 6108
                          0,
5993 6109
                          2405,
5994 6110
                          1376)}]}
5995
-guimgr.recent-documents = [loc('PlayStream.py'),
5996
-                           loc('sniplets.py'),
5997
-                           loc('sources/ltc.py'),
5998
-                           loc('ContentSources.py'),
6111
+guimgr.recent-documents = [loc('ContentSources.py'),
6112
+                           loc('sources/ustvnow.py'),
6113
+                           loc('sources/kinofilmnet.py'),
5999 6114
                            loc('util.py'),
6115
+                           loc('sources/replay.py'),
6116
+                           loc('PlayStream.py'),
6117
+                           loc('../python/Components/GUISkin.py'),
6118
+                           loc('sources/filmix.py'),
6119
+                           loc('sources/ltc.py'),
6120
+                           loc('sniplets.py'),
6000 6121
                            loc('ChoiceBox.py'),
6001 6122
                            loc('resolvers/hdgo.py'),
6002 6123
                            loc('sources/viaplay.py'),
6003 6124
                            loc('sources/iplayer.py'),
6004 6125
                            loc('plugin.py'),
6005
-                           loc('sources/euronews.py'),
6006
-                           loc('sources/kinofilmnet.py')]
6126
+                           loc('sources/euronews.py')]
6007 6127
 guimgr.visual-state = {loc('../../Kodi/test2/plugin.video.aaa/addon.py'): {'a'\
6008 6128
         'ttrib-starts': [],
6009 6129
         'first-line': 0,
@@ -6664,15 +6784,6 @@ guimgr.visual-state = {loc('../../Kodi/test2/plugin.video.aaa/addon.py'): {'a'\
6664 6784
         'sel-line-start': 0,
6665 6785
         'selection_end': 0,
6666 6786
         'selection_start': 0},
6667
-                       loc('../../../../Python27/Lib/re.py'): {'attrib-start'\
6668
-        's': [('findall',
6669
-               172)],
6670
-        'first-line': 162,
6671
-        'folded-linenos': [],
6672
-        'sel-line': 180,
6673
-        'sel-line-start': 8708,
6674
-        'selection_end': 8708,
6675
-        'selection_start': 8708},
6676 6787
                        loc('../../../../Python27/Lib/site-packages/requests/adapters.py'): {'a'\
6677 6788
         'ttrib-starts': [('HTTPAdapter',
6678 6789
                           77),
@@ -6713,6 +6824,15 @@ guimgr.visual-state = {loc('../../Kodi/test2/plugin.video.aaa/addon.py'): {'a'\
6713 6824
         'sel-line-start': 2478,
6714 6825
         'selection_end': 2478,
6715 6826
         'selection_start': 2478},
6827
+                       loc('../../../../Python27/lib/re.py'): {'attrib-start'\
6828
+        's': [('findall',
6829
+               172)],
6830
+        'first-line': 162,
6831
+        'folded-linenos': [],
6832
+        'sel-line': 180,
6833
+        'sel-line-start': 8708,
6834
+        'selection_end': 8708,
6835
+        'selection_start': 8708},
6716 6836
                        loc('../../../../Python27/lib/site-packages/gi/__init__.py'): {'a'\
6717 6837
         'ttrib-starts': [],
6718 6838
         'first-line': 24,
@@ -6756,7 +6876,8 @@ proj.pypath = {None: ('custom',
6756 6876
                       u'c:\\Data\\Programming\\enigma2\\python;')}
6757 6877
 search.replace-history = [u'self',
6758 6878
                           u'current']
6759
-search.search-history = [u'timer',
6879
+search.search-history = [u'gst',
6880
+                         u'timer',
6760 6881
                          u'etimer',
6761 6882
                          u'text=',
6762 6883
                          u'OptionsScreen',
@@ -6774,8 +6895,7 @@ search.search-history = [u'timer',
6774 6895
                          u'ChoiceEntryComponent',
6775 6896
                          u'list',
6776 6897
                          u'content',
6777
-                         u'autoResize',
6778
-                         u'font']
6898
+                         u'autoResize']
6779 6899
 testing.stored-results = (1,
6780 6900
                           [],
6781 6901
                           {})

+ 12
- 2
imake.bat Целия файл

@@ -1,6 +1,15 @@
1 1
 @echo off
2 2
 :=== Parameters ===
3
-set ver=0.5j
3
+
4
+if ()==(%1%) (
5
+    set ver=0.5k
6
+	rem echo Please provide version
7
+	rem pause
8
+	rem GOTO:EOF
9
+) else (
10
+    set ver=%1
11
+)
12
+
4 13
 set prog=PlayStream
5 14
 set pack_name=enigma2-plugin-extensions-playstream
6 15
 set desc=Play online streams from various sources, mostly Latvian
@@ -18,7 +27,8 @@ set TAR=\MinGW\msys\1.0\bin\tar.exe
18 27
 if exist %ipk_dir% rm -r -f %ipk_dir% 
19 28
 mkdir %ipk_dir%
20 29
 for %%f in (
21
-readme.txt
30
+readme.md
31
+changelog.md
22 32
 __init__.py
23 33
 plugin.py
24 34
 plugin.png

+ 8
- 2
readme.md Целия файл

@@ -10,7 +10,11 @@ Currently implemented:
10 10
 - **lattelecom.tv(shortcut.lv)** media portal content
11 11
 - **play24.lv** media portal content
12 12
 - **viaplay.lv**
13
+- **cinemalive.tv**
14
+- **kinofilmnet.lv**
13 15
 - **dom.tv**
16
+- **BBC iPlayer**
17
+- **Euronews**
14 18
 - **filmon.tv** media portal content
15 19
 - **ustvnow.tv**
16 20
 - **serialguru.ru**
@@ -19,8 +23,10 @@ Currently implemented:
19 23
 ---
20 24
 Copyright (c) 2016 ivars777 (ivars777@gmail.com)  
21 25
 Distributed under the GNU GPL v3. For full terms see http://www.gnu.org/licenses/gpl-3.0.en.html  
22
-Used fragments of code from enigma2-plugin-tv3play by Taapat (https://github.com/Taapat/enigma2-plugin-tv3play)  
23
-Contains files from enigma2-plugin-youtube by Taapat (https://github.com/Taapat/enigma2-plugin-youtube), originally from https://github.com/rg3/youtube-dl/blob/master/youtube_dl  
26
+Used fragments of code from 
27
+- enigma2-plugin-tv3play by Taapat (https://github.com/Taapat/enigma2-plugin-tv3play)
28
+- Kodi plugin script.module.stream.resolver (https://github.com/kodi-czsk/script.module.stream.resolver)  
29
+- enigma2-plugin-youtube by Taapat (https://github.com/Taapat/enigma2-plugin-youtube), originally from https://github.com/rg3/youtube-dl/blob/master/youtube_dl  
24 30
 
25 31
 
26 32
 

Двоични данни
release/enigma2-plugin-extensions-playstream_0.5k.ipk Целия файл


+ 1
- 2
sources/filmix.py Целия файл

@@ -236,8 +236,7 @@ Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
236 236
         result = self._http_request(url,params,headers=headers)
237 237
         return result
238 238
 
239
-
240
-        
239
+    
241 240
     def decode_uppod_text(self, text): 
242 241
         Client_codec_a = ["l", "u", "T", "D", "Q", "H", "0", "3", "G", "1", "f", "M", "p", "U", "a", "I", "6", "k", "d", "s", "b", "W", "5", "e", "y", "="]
243 242
         Client_codec_b = ["w", "g", "i", "Z", "c", "R", "z", "v", "x", "n", "N", "2", "8", "J", "X", "t", "9", "V", "7", "4", "B", "m", "Y", "o", "L", "h"]    

+ 2
- 1
sources/ustvnow.py Целия файл

@@ -55,7 +55,8 @@ class Source(SourceBase):
55 55
         """)
56 56
 
57 57
         url = "http://m-api.ustvnow.com/iphone/1/live/login?username=%s&password=%s&device=gtv&redir=0"%(user,password)
58
-        r = self._http_request(url,headers)
58
+        #url = "http://m-api.ustvnow.com/gtv/1/live/login?username=%s&password=%s&device=gtv&redir=0"%(user,password)
59
+        r = self._http_request(url,headers=headers)
59 60
         if 'success' in r:
60 61
             self.token = re.search('"token":"([^"]+)',r).group(1)
61 62
             return True