threefive 3.0.77__tar.gz → 3.0.81__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {threefive-3.0.77 → threefive-3.0.81}/PKG-INFO +42 -15
- {threefive-3.0.77 → threefive-3.0.81}/README.md +41 -10
- {threefive-3.0.77 → threefive-3.0.81}/pyproject.toml +2 -5
- {threefive-3.0.77 → threefive-3.0.81}/threefive/new_reader.py +15 -2
- {threefive-3.0.77 → threefive-3.0.81}/threefive/segment.py +5 -4
- {threefive-3.0.77 → threefive-3.0.81}/threefive/version.py +1 -1
- {threefive-3.0.77 → threefive-3.0.81}/threefive.egg-info/PKG-INFO +42 -15
- {threefive-3.0.77 → threefive-3.0.81}/threefive.egg-info/SOURCES.txt +0 -1
- threefive-3.0.77/threefive.egg-info/requires.txt +0 -2
- {threefive-3.0.77 → threefive-3.0.81}/LICENSE +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/setup.cfg +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/__init__.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/aac.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/base.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/bitn.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/bump.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/cli.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/commands.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/crc.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/crctable.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/cue.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/descriptors.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/encode.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/gums.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/hls.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/hlsprofile.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/hlstags.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/iframes.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/packetdata.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/pmt.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/section.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/segmentation.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/sixfix.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/speedo.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/stream.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/streamtypes.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/stuff.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/superkabuki.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/throttle.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/udp.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/upids.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/uxp.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive/xml.py +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive.egg-info/dependency_links.txt +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive.egg-info/entry_points.txt +0 -0
- {threefive-3.0.77 → threefive-3.0.81}/threefive.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: threefive
|
|
3
|
-
Version: 3.0.
|
|
3
|
+
Version: 3.0.81
|
|
4
4
|
Summary: threefive is The #1 SCTE-35 Decoder and Encoder on the Planet.
|
|
5
5
|
Author-email: AdrianofDoom <spam@iodisco.com>
|
|
6
6
|
License-Expression: Sleepycat
|
|
@@ -8,8 +8,6 @@ Project-URL: Homepage, https://github.com/superkabuki/threefive
|
|
|
8
8
|
Project-URL: Issues, https://github.com/superkabuki/threefive/issues
|
|
9
9
|
Classifier: Environment :: Console
|
|
10
10
|
Classifier: Operating System :: OS Independent
|
|
11
|
-
Classifier: Operating System :: POSIX :: BSD :: OpenBSD
|
|
12
|
-
Classifier: Operating System :: POSIX :: Linux
|
|
13
11
|
Classifier: Topic :: Multimedia :: Video
|
|
14
12
|
Classifier: Programming Language :: Python :: 3.9
|
|
15
13
|
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
@@ -17,17 +15,19 @@ Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
|
17
15
|
Requires-Python: >=3.9
|
|
18
16
|
Description-Content-Type: text/markdown
|
|
19
17
|
License-File: LICENSE
|
|
20
|
-
Requires-Dist: pyaes
|
|
21
|
-
Requires-Dist: srtfu>=0.0.11
|
|
22
18
|
Dynamic: license-file
|
|
23
19
|
|
|
24
|
-
|
|
25
|
-
|
|
20
|
+
### It is now official, phase three of threefive's global domination has begun. Behold [threefive.js](https://github.com/keithah/threefive.js)
|
|
21
|
+
_(ominous music plays in the background)_
|
|
26
22
|
|
|
27
23
|
# [ threefive ]
|
|
24
|
+
|
|
25
|
+
> _... If someone says they don't use threefive for SCTE-35, they're either drunk or they're lying_. <BR> ~Adrian
|
|
26
|
+
|
|
28
27
|
## https://github.com/superkabuki/threefive
|
|
29
28
|
|
|
30
29
|
### threefive is the industry leading SCTE-35 tool.
|
|
30
|
+
#### Need to inject SCTE-35 into HLS? [X9k3.](https://github.com/superkabuki/x9k3)
|
|
31
31
|
|
|
32
32
|
* __Decodes SCTE-35__ from `MPEGTS`✔ `Base64`✔ `Bytes`✔ `DASH`✔ `Hex` ✔ `HLS`✔ `Integers`✔ `JSON`✔ `XML`✔ `XML+Binary`✔
|
|
33
33
|
|
|
@@ -43,9 +43,10 @@ Dynamic: license-file
|
|
|
43
43
|
|
|
44
44
|
___
|
|
45
45
|
|
|
46
|
+
|
|
47
|
+
|
|
46
48
|
### [ News ]
|
|
47
49
|
|
|
48
|
-
### Death to PEP 668.
|
|
49
50
|
|
|
50
51
|
* __threefive no longer uses setuptools for packaging__ and I know you don't care.
|
|
51
52
|
* __Python3 vs. Pypy3__ [__parsing SCTE35 with threefive__](https://github.com/superkabuki/threefive_is_scte35#python3-vs-pypy3-running-threefive) (watch the cool video)
|
|
@@ -53,10 +54,11 @@ ___
|
|
|
53
54
|
* I have been __trying to setup threefive on readthedocs__,it's not going very well, but I'm working on it.
|
|
54
55
|
___
|
|
55
56
|
|
|
56
|
-
## [ Latest version is v3.0.
|
|
57
|
-
|
|
58
|
-
*
|
|
59
|
-
*
|
|
57
|
+
## [ Latest version is v3.0.81 ]
|
|
58
|
+
|
|
59
|
+
* threefive cyclomatic complexity score is 1.9337094499294782 _( that's better than the Python standard library)_ .
|
|
60
|
+
* __threefive now has NO External Dependencies__
|
|
61
|
+
* SRT and AES support is now optional
|
|
60
62
|
* __threefive is fully python v3.14 compliant__
|
|
61
63
|
* I fixed everything they broke/changed between v3.09 and 3.14.
|
|
62
64
|
* 0 deprecation warnings.
|
|
@@ -105,20 +107,45 @@ ___
|
|
|
105
107
|
</samp>
|
|
106
108
|
|
|
107
109
|
## [Install]
|
|
108
|
-
*
|
|
110
|
+
* __python3 via pip__
|
|
109
111
|
```rebol
|
|
110
112
|
python3 -mpip install threefive
|
|
111
113
|
```
|
|
112
|
-
*
|
|
114
|
+
* __pypy3 via pip__
|
|
113
115
|
```rebol
|
|
114
116
|
pypy3 -mpip install threefive
|
|
115
117
|
```
|
|
116
|
-
*
|
|
118
|
+
* __To add SRT support__
|
|
119
|
+
```py3
|
|
120
|
+
python3 -m pip install srtfu
|
|
121
|
+
```
|
|
122
|
+
* __To add Automatic AES decryption__
|
|
123
|
+
```py3
|
|
124
|
+
python3 -mpip install pyaes
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
* __From the git repo__
|
|
128
|
+
|
|
117
129
|
```rebol
|
|
118
130
|
git clone https://github.com/superkabuki/scte35.git
|
|
119
131
|
cd threefive
|
|
120
132
|
make install
|
|
121
133
|
```
|
|
134
|
+
* I've jazzed up the makefile to make it easier to install for different python versions and pypy3
|
|
135
|
+
```rebol
|
|
136
|
+
git clone https://github.com/superkabuki/scte35.git
|
|
137
|
+
cd threefive
|
|
138
|
+
|
|
139
|
+
make install py3=pypy3
|
|
140
|
+
|
|
141
|
+
# OR
|
|
142
|
+
|
|
143
|
+
make install py3=python3.14
|
|
144
|
+
|
|
145
|
+
# works for any python in your path or use a full path if needed.
|
|
146
|
+
|
|
147
|
+
```
|
|
148
|
+
|
|
122
149
|
___
|
|
123
150
|
|
|
124
151
|
|
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
### It is now official, phase three of threefive's global domination has begun. Behold [threefive.js](https://github.com/keithah/threefive.js)
|
|
2
|
+
_(ominous music plays in the background)_
|
|
3
3
|
|
|
4
4
|
# [ threefive ]
|
|
5
|
+
|
|
6
|
+
> _... If someone says they don't use threefive for SCTE-35, they're either drunk or they're lying_. <BR> ~Adrian
|
|
7
|
+
|
|
5
8
|
## https://github.com/superkabuki/threefive
|
|
6
9
|
|
|
7
10
|
### threefive is the industry leading SCTE-35 tool.
|
|
11
|
+
#### Need to inject SCTE-35 into HLS? [X9k3.](https://github.com/superkabuki/x9k3)
|
|
8
12
|
|
|
9
13
|
* __Decodes SCTE-35__ from `MPEGTS`✔ `Base64`✔ `Bytes`✔ `DASH`✔ `Hex` ✔ `HLS`✔ `Integers`✔ `JSON`✔ `XML`✔ `XML+Binary`✔
|
|
10
14
|
|
|
@@ -20,9 +24,10 @@
|
|
|
20
24
|
|
|
21
25
|
___
|
|
22
26
|
|
|
27
|
+
|
|
28
|
+
|
|
23
29
|
### [ News ]
|
|
24
30
|
|
|
25
|
-
### Death to PEP 668.
|
|
26
31
|
|
|
27
32
|
* __threefive no longer uses setuptools for packaging__ and I know you don't care.
|
|
28
33
|
* __Python3 vs. Pypy3__ [__parsing SCTE35 with threefive__](https://github.com/superkabuki/threefive_is_scte35#python3-vs-pypy3-running-threefive) (watch the cool video)
|
|
@@ -30,10 +35,11 @@ ___
|
|
|
30
35
|
* I have been __trying to setup threefive on readthedocs__,it's not going very well, but I'm working on it.
|
|
31
36
|
___
|
|
32
37
|
|
|
33
|
-
## [ Latest version is v3.0.
|
|
34
|
-
|
|
35
|
-
*
|
|
36
|
-
*
|
|
38
|
+
## [ Latest version is v3.0.81 ]
|
|
39
|
+
|
|
40
|
+
* threefive cyclomatic complexity score is 1.9337094499294782 _( that's better than the Python standard library)_ .
|
|
41
|
+
* __threefive now has NO External Dependencies__
|
|
42
|
+
* SRT and AES support is now optional
|
|
37
43
|
* __threefive is fully python v3.14 compliant__
|
|
38
44
|
* I fixed everything they broke/changed between v3.09 and 3.14.
|
|
39
45
|
* 0 deprecation warnings.
|
|
@@ -82,20 +88,45 @@ ___
|
|
|
82
88
|
</samp>
|
|
83
89
|
|
|
84
90
|
## [Install]
|
|
85
|
-
*
|
|
91
|
+
* __python3 via pip__
|
|
86
92
|
```rebol
|
|
87
93
|
python3 -mpip install threefive
|
|
88
94
|
```
|
|
89
|
-
*
|
|
95
|
+
* __pypy3 via pip__
|
|
90
96
|
```rebol
|
|
91
97
|
pypy3 -mpip install threefive
|
|
92
98
|
```
|
|
93
|
-
*
|
|
99
|
+
* __To add SRT support__
|
|
100
|
+
```py3
|
|
101
|
+
python3 -m pip install srtfu
|
|
102
|
+
```
|
|
103
|
+
* __To add Automatic AES decryption__
|
|
104
|
+
```py3
|
|
105
|
+
python3 -mpip install pyaes
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
* __From the git repo__
|
|
109
|
+
|
|
94
110
|
```rebol
|
|
95
111
|
git clone https://github.com/superkabuki/scte35.git
|
|
96
112
|
cd threefive
|
|
97
113
|
make install
|
|
98
114
|
```
|
|
115
|
+
* I've jazzed up the makefile to make it easier to install for different python versions and pypy3
|
|
116
|
+
```rebol
|
|
117
|
+
git clone https://github.com/superkabuki/scte35.git
|
|
118
|
+
cd threefive
|
|
119
|
+
|
|
120
|
+
make install py3=pypy3
|
|
121
|
+
|
|
122
|
+
# OR
|
|
123
|
+
|
|
124
|
+
make install py3=python3.14
|
|
125
|
+
|
|
126
|
+
# works for any python in your path or use a full path if needed.
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
|
|
99
130
|
___
|
|
100
131
|
|
|
101
132
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
[project]
|
|
3
3
|
name = "threefive"
|
|
4
|
-
version = "3.0.
|
|
4
|
+
version = "3.0.81"
|
|
5
5
|
authors = [
|
|
6
6
|
{ name="AdrianofDoom", email="spam@iodisco.com" },
|
|
7
7
|
]
|
|
@@ -9,8 +9,7 @@ description = "threefive is The #1 SCTE-35 Decoder and Encoder on the Planet."
|
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.9"
|
|
11
11
|
dependencies=[
|
|
12
|
-
|
|
13
|
-
"srtfu >= 0.0.11",
|
|
12
|
+
|
|
14
13
|
]
|
|
15
14
|
|
|
16
15
|
|
|
@@ -18,8 +17,6 @@ dependencies=[
|
|
|
18
17
|
classifiers = [
|
|
19
18
|
"Environment :: Console",
|
|
20
19
|
"Operating System :: OS Independent",
|
|
21
|
-
"Operating System :: POSIX :: BSD :: OpenBSD",
|
|
22
|
-
"Operating System :: POSIX :: Linux",
|
|
23
20
|
"Topic :: Multimedia :: Video",
|
|
24
21
|
"Programming Language :: Python :: 3.9",
|
|
25
22
|
"Programming Language :: Python :: Implementation :: PyPy",
|
|
@@ -8,7 +8,12 @@ import socket
|
|
|
8
8
|
import sys
|
|
9
9
|
import urllib.request
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
try:
|
|
12
|
+
from srtfu import SRTfu, SRTO_TRANSTYPE, SRT_LIVE, SRTO_RCVSYN, SRTO_RCVBUF
|
|
13
|
+
|
|
14
|
+
HAS_SRT = True
|
|
15
|
+
except ImportError:
|
|
16
|
+
HAS_SRT = False
|
|
12
17
|
from .udp import udp_receiver, mcast_ttl
|
|
13
18
|
from .stuff import blue, ERR, pif, print2
|
|
14
19
|
|
|
@@ -32,6 +37,14 @@ def corsreader(uri, headers={}):
|
|
|
32
37
|
return reader(uri, headers=all_headers)
|
|
33
38
|
|
|
34
39
|
|
|
40
|
+
def try_srt(url, headers={}):
|
|
41
|
+
if HAS_SRT:
|
|
42
|
+
return _do_srt(uri, headers=headers)
|
|
43
|
+
else:
|
|
44
|
+
print2("pip install srtfu to add SRT support")
|
|
45
|
+
return False
|
|
46
|
+
|
|
47
|
+
|
|
35
48
|
def reader(uri, headers={}):
|
|
36
49
|
"""
|
|
37
50
|
|
|
@@ -74,7 +87,7 @@ def reader(uri, headers={}):
|
|
|
74
87
|
return urllib.request.urlopen(req)
|
|
75
88
|
# SRT
|
|
76
89
|
if uri.startswith("srt://"):
|
|
77
|
-
return
|
|
90
|
+
return try_srt(uri, headers=headers)
|
|
78
91
|
# File
|
|
79
92
|
return open(uri, "rb")
|
|
80
93
|
|
|
@@ -5,12 +5,13 @@ The threefive.Segment class
|
|
|
5
5
|
import os
|
|
6
6
|
from .new_reader import reader
|
|
7
7
|
from .stream import Stream
|
|
8
|
-
|
|
8
|
+
from .stuff import print2
|
|
9
9
|
|
|
10
10
|
AES = True
|
|
11
11
|
try:
|
|
12
|
-
import
|
|
12
|
+
import pyaesfu
|
|
13
13
|
except ImportError:
|
|
14
|
+
print2("pip install pyaes for AES support")
|
|
14
15
|
AES = False
|
|
15
16
|
|
|
16
17
|
|
|
@@ -83,10 +84,10 @@ class Segment(Stream):
|
|
|
83
84
|
self.key = quay.read()
|
|
84
85
|
|
|
85
86
|
def _aes_decrypt(self):
|
|
86
|
-
mode =
|
|
87
|
+
mode = pyaesfu.AESModeOfOperationCBC(self.key, iv=self.iv)
|
|
87
88
|
self._mk_tmp()
|
|
88
89
|
with open(self.tmp, "wb") as outfile, reader(self.seg_uri) as infile:
|
|
89
|
-
|
|
90
|
+
pyaesfu.decrypt_stream(mode, infile, outfile)
|
|
90
91
|
self.seg_uri = self.tmp
|
|
91
92
|
|
|
92
93
|
def _add_cue(self, cue):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: threefive
|
|
3
|
-
Version: 3.0.
|
|
3
|
+
Version: 3.0.81
|
|
4
4
|
Summary: threefive is The #1 SCTE-35 Decoder and Encoder on the Planet.
|
|
5
5
|
Author-email: AdrianofDoom <spam@iodisco.com>
|
|
6
6
|
License-Expression: Sleepycat
|
|
@@ -8,8 +8,6 @@ Project-URL: Homepage, https://github.com/superkabuki/threefive
|
|
|
8
8
|
Project-URL: Issues, https://github.com/superkabuki/threefive/issues
|
|
9
9
|
Classifier: Environment :: Console
|
|
10
10
|
Classifier: Operating System :: OS Independent
|
|
11
|
-
Classifier: Operating System :: POSIX :: BSD :: OpenBSD
|
|
12
|
-
Classifier: Operating System :: POSIX :: Linux
|
|
13
11
|
Classifier: Topic :: Multimedia :: Video
|
|
14
12
|
Classifier: Programming Language :: Python :: 3.9
|
|
15
13
|
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
@@ -17,17 +15,19 @@ Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
|
17
15
|
Requires-Python: >=3.9
|
|
18
16
|
Description-Content-Type: text/markdown
|
|
19
17
|
License-File: LICENSE
|
|
20
|
-
Requires-Dist: pyaes
|
|
21
|
-
Requires-Dist: srtfu>=0.0.11
|
|
22
18
|
Dynamic: license-file
|
|
23
19
|
|
|
24
|
-
|
|
25
|
-
|
|
20
|
+
### It is now official, phase three of threefive's global domination has begun. Behold [threefive.js](https://github.com/keithah/threefive.js)
|
|
21
|
+
_(ominous music plays in the background)_
|
|
26
22
|
|
|
27
23
|
# [ threefive ]
|
|
24
|
+
|
|
25
|
+
> _... If someone says they don't use threefive for SCTE-35, they're either drunk or they're lying_. <BR> ~Adrian
|
|
26
|
+
|
|
28
27
|
## https://github.com/superkabuki/threefive
|
|
29
28
|
|
|
30
29
|
### threefive is the industry leading SCTE-35 tool.
|
|
30
|
+
#### Need to inject SCTE-35 into HLS? [X9k3.](https://github.com/superkabuki/x9k3)
|
|
31
31
|
|
|
32
32
|
* __Decodes SCTE-35__ from `MPEGTS`✔ `Base64`✔ `Bytes`✔ `DASH`✔ `Hex` ✔ `HLS`✔ `Integers`✔ `JSON`✔ `XML`✔ `XML+Binary`✔
|
|
33
33
|
|
|
@@ -43,9 +43,10 @@ Dynamic: license-file
|
|
|
43
43
|
|
|
44
44
|
___
|
|
45
45
|
|
|
46
|
+
|
|
47
|
+
|
|
46
48
|
### [ News ]
|
|
47
49
|
|
|
48
|
-
### Death to PEP 668.
|
|
49
50
|
|
|
50
51
|
* __threefive no longer uses setuptools for packaging__ and I know you don't care.
|
|
51
52
|
* __Python3 vs. Pypy3__ [__parsing SCTE35 with threefive__](https://github.com/superkabuki/threefive_is_scte35#python3-vs-pypy3-running-threefive) (watch the cool video)
|
|
@@ -53,10 +54,11 @@ ___
|
|
|
53
54
|
* I have been __trying to setup threefive on readthedocs__,it's not going very well, but I'm working on it.
|
|
54
55
|
___
|
|
55
56
|
|
|
56
|
-
## [ Latest version is v3.0.
|
|
57
|
-
|
|
58
|
-
*
|
|
59
|
-
*
|
|
57
|
+
## [ Latest version is v3.0.81 ]
|
|
58
|
+
|
|
59
|
+
* threefive cyclomatic complexity score is 1.9337094499294782 _( that's better than the Python standard library)_ .
|
|
60
|
+
* __threefive now has NO External Dependencies__
|
|
61
|
+
* SRT and AES support is now optional
|
|
60
62
|
* __threefive is fully python v3.14 compliant__
|
|
61
63
|
* I fixed everything they broke/changed between v3.09 and 3.14.
|
|
62
64
|
* 0 deprecation warnings.
|
|
@@ -105,20 +107,45 @@ ___
|
|
|
105
107
|
</samp>
|
|
106
108
|
|
|
107
109
|
## [Install]
|
|
108
|
-
*
|
|
110
|
+
* __python3 via pip__
|
|
109
111
|
```rebol
|
|
110
112
|
python3 -mpip install threefive
|
|
111
113
|
```
|
|
112
|
-
*
|
|
114
|
+
* __pypy3 via pip__
|
|
113
115
|
```rebol
|
|
114
116
|
pypy3 -mpip install threefive
|
|
115
117
|
```
|
|
116
|
-
*
|
|
118
|
+
* __To add SRT support__
|
|
119
|
+
```py3
|
|
120
|
+
python3 -m pip install srtfu
|
|
121
|
+
```
|
|
122
|
+
* __To add Automatic AES decryption__
|
|
123
|
+
```py3
|
|
124
|
+
python3 -mpip install pyaes
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
* __From the git repo__
|
|
128
|
+
|
|
117
129
|
```rebol
|
|
118
130
|
git clone https://github.com/superkabuki/scte35.git
|
|
119
131
|
cd threefive
|
|
120
132
|
make install
|
|
121
133
|
```
|
|
134
|
+
* I've jazzed up the makefile to make it easier to install for different python versions and pypy3
|
|
135
|
+
```rebol
|
|
136
|
+
git clone https://github.com/superkabuki/scte35.git
|
|
137
|
+
cd threefive
|
|
138
|
+
|
|
139
|
+
make install py3=pypy3
|
|
140
|
+
|
|
141
|
+
# OR
|
|
142
|
+
|
|
143
|
+
make install py3=python3.14
|
|
144
|
+
|
|
145
|
+
# works for any python in your path or use a full path if needed.
|
|
146
|
+
|
|
147
|
+
```
|
|
148
|
+
|
|
122
149
|
___
|
|
123
150
|
|
|
124
151
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|