tiny-dlna 0.2.0__tar.gz → 0.3.0__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.
- {tiny-dlna-0.2.0 → tiny-dlna-0.3.0}/PKG-INFO +1 -1
- tiny-dlna-0.3.0/README.md +30 -0
- {tiny-dlna-0.2.0 → tiny-dlna-0.3.0}/setup.py +1 -1
- {tiny-dlna-0.2.0 → tiny-dlna-0.3.0}/tiny_dlna.egg-info/PKG-INFO +1 -1
- {tiny-dlna-0.2.0 → tiny-dlna-0.3.0}/tiny_render.py +49 -41
- tiny-dlna-0.2.0/README.md +0 -13
- {tiny-dlna-0.2.0 → tiny-dlna-0.3.0}/setup.cfg +0 -0
- {tiny-dlna-0.2.0 → tiny-dlna-0.3.0}/ssdp.py +0 -0
- {tiny-dlna-0.2.0 → tiny-dlna-0.3.0}/tiny_dlna.egg-info/SOURCES.txt +0 -0
- {tiny-dlna-0.2.0 → tiny-dlna-0.3.0}/tiny_dlna.egg-info/dependency_links.txt +0 -0
- {tiny-dlna-0.2.0 → tiny-dlna-0.3.0}/tiny_dlna.egg-info/entry_points.txt +0 -0
- {tiny-dlna-0.2.0 → tiny-dlna-0.3.0}/tiny_dlna.egg-info/requires.txt +0 -0
- {tiny-dlna-0.2.0 → tiny-dlna-0.3.0}/tiny_dlna.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Tiny DLNA
|
|
2
|
+
|
|
3
|
+
## Install
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
$ pip install tiny-dlna
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
## Tiny DLNA Render
|
|
10
|
+
|
|
11
|
+
Just to support subtitles.
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
$ tiny-render
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
This will activate a DLNA receiver named "Tiny Render", which can stream videos
|
|
18
|
+
from apps like 虎牙直播, Bilibili, and other video platforms. Additionally, you
|
|
19
|
+
can also use `nano-dlna` to play local videos (like in your RaspberryPi) on it.
|
|
20
|
+
|
|
21
|
+
> Note: [mpv](https://mpv.io/) needs to be installed on your system.
|
|
22
|
+
|
|
23
|
+
## Tiny DLNA Cli
|
|
24
|
+
|
|
25
|
+
To do.
|
|
26
|
+
|
|
27
|
+
## Related projects
|
|
28
|
+
|
|
29
|
+
- https://github.com/xfangfang/Macast
|
|
30
|
+
- https://github.com/gabrielmagno/nano-dlna
|
|
@@ -95,44 +95,47 @@ _DATA = {
|
|
|
95
95
|
|
|
96
96
|
@app.route('/description.xml')
|
|
97
97
|
def description():
|
|
98
|
-
|
|
99
|
-
<root xmlns="urn:schemas-upnp-org:device-1-0" xmlns:dlna="urn:schemas-dlna-org:device-1-0">
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
</root>"""
|
|
98
|
+
desc_ptn = """<?xml version="1.0"?>
|
|
99
|
+
<root xmlns="urn:schemas-upnp-org:device-1-0" xmlns:dlna="urn:schemas-dlna-org:device-1-0">
|
|
100
|
+
<specVersion>
|
|
101
|
+
<major>1</major>
|
|
102
|
+
<minor>0</minor>
|
|
103
|
+
</specVersion>
|
|
104
|
+
<device>
|
|
105
|
+
<deviceType>urn:schemas-upnp-org:device:MediaRenderer:1</deviceType>
|
|
106
|
+
<friendlyName>{}</friendlyName>
|
|
107
|
+
<manufacturer>mitnk</manufacturer>
|
|
108
|
+
<modelName>T001</modelName>
|
|
109
|
+
<UDN>uuid:dlna-tiny-render-t001</UDN>
|
|
110
|
+
<dlna:X_DLNADOC xmlns:dlna="urn:schemas-dlna-org:device-1-0">DMR-1.50</dlna:X_DLNADOC>
|
|
111
|
+
<serviceList>
|
|
112
|
+
<service>
|
|
113
|
+
<serviceType>urn:schemas-upnp-org:service:AVTransport:1</serviceType>
|
|
114
|
+
<serviceId>urn:upnp-org:serviceId:AVTransport</serviceId>
|
|
115
|
+
<SCPDURL>AVTransport/82d8-eb72-b097/scpd.xml</SCPDURL>
|
|
116
|
+
<controlURL>AVTransport/82d8-eb72-b097/control</controlURL>
|
|
117
|
+
<eventSubURL>AVTransport/82d8-eb72-b097/event</eventSubURL>
|
|
118
|
+
</service>
|
|
119
|
+
<service>
|
|
120
|
+
<serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
|
|
121
|
+
<serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId>
|
|
122
|
+
<SCPDURL>ConnectionManager/82d8-eb72-b097/scpd.xml</SCPDURL>
|
|
123
|
+
<controlURL>ConnectionManager/82d8-eb72-b097/control</controlURL>
|
|
124
|
+
<eventSubURL>ConnectionManager/82d8-eb72-b097/event</eventSubURL>
|
|
125
|
+
</service>
|
|
126
|
+
<service>
|
|
127
|
+
<serviceType>urn:schemas-upnp-org:service:RenderingControl:1</serviceType>
|
|
128
|
+
<serviceId>urn:upnp-org:serviceId:RenderingControl</serviceId>
|
|
129
|
+
<SCPDURL>RenderingControl/82d8-eb72-b097/scpd.xml</SCPDURL>
|
|
130
|
+
<controlURL>RenderingControl/82d8-eb72-b097/control</controlURL>
|
|
131
|
+
<eventSubURL>RenderingControl/82d8-eb72-b097/event</eventSubURL>
|
|
132
|
+
</service>
|
|
133
|
+
</serviceList>
|
|
134
|
+
</device>
|
|
135
|
+
</root>"""
|
|
136
|
+
|
|
137
|
+
friendly_name = app.config['FRIENDLY_NAME']
|
|
138
|
+
xml = desc_ptn.format(friendly_name)
|
|
136
139
|
return Response(xml, mimetype="text/xml")
|
|
137
140
|
|
|
138
141
|
def to_track_time(seconds):
|
|
@@ -260,9 +263,10 @@ class SSDPServer(threading.Thread):
|
|
|
260
263
|
def main():
|
|
261
264
|
import argparse
|
|
262
265
|
|
|
263
|
-
parser = argparse.ArgumentParser(prog='tiny-
|
|
264
|
-
parser.add_argument('--http-log', action='store_true')
|
|
265
|
-
parser.add_argument('--verbose', '-v', action='store_true')
|
|
266
|
+
parser = argparse.ArgumentParser(prog='tiny-render')
|
|
267
|
+
parser.add_argument('--http-log', action='store_true', help='Enable server logs')
|
|
268
|
+
parser.add_argument('--verbose', '-v', action='store_true', help='Enable debug logs')
|
|
269
|
+
parser.add_argument('--name', type=str, default='Tiny Render', help='Change render name')
|
|
266
270
|
|
|
267
271
|
args = parser.parse_args()
|
|
268
272
|
|
|
@@ -280,6 +284,10 @@ def main():
|
|
|
280
284
|
|
|
281
285
|
ssdp = SSDPServer()
|
|
282
286
|
ssdp.start()
|
|
287
|
+
|
|
288
|
+
friendly_name = args.name
|
|
289
|
+
app.config['FRIENDLY_NAME'] = friendly_name
|
|
290
|
+
logging.info(f'Starting DLNA Receiver: {friendly_name}')
|
|
283
291
|
app.run(host="0.0.0.0", port=5000, debug=False)
|
|
284
292
|
|
|
285
293
|
|
tiny-dlna-0.2.0/README.md
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|