From 4b31e83f5460f764878628a23a1037f633a437e1 Mon Sep 17 00:00:00 2001
From: rols1
Date: Fri, 7 Aug 2020 15:21:31 +0200
Subject: [PATCH] =?UTF-8?q?=C3=84nderungen=20/=20Korrekturen=20siehe=20cha?=
=?UTF-8?q?ngelog.txt?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 3 +++
addon.xml | 2 +-
ardundzdf.py | 6 +++---
changelog.txt | 9 ++++++++-
resources/lib/m3u8.py | 18 ++++++++++++------
resources/lib/my3Sat.py | 1 +
resources/livesenderTV.xml | 5 +++--
7 files changed, 31 insertions(+), 13 deletions(-)
diff --git a/README.md b/README.md
index e2ea343..4fb0dd2 100644
--- a/README.md
+++ b/README.md
@@ -178,5 +178,8 @@ Podcast-Favoriten:
===================
![img](https://github.com/rols1/PluginPictures/blob/master/Kodi/ARDundZDF/Podcast-Favoriten.png)
+Aufnahmemöglichkeiten:
+===================
+![img](https://github.com/rols1/PluginPictures/blob/master/Kodi/ARDundZDF/Settings/Menu_TV-Livestreams.png)
#### weitere Screenshots: https://github.com/rols1/PluginPictures/tree/master/Kodi/ARDundZDF
diff --git a/addon.xml b/addon.xml
index 1418d5e..51489e1 100644
--- a/addon.xml
+++ b/addon.xml
@@ -1,5 +1,5 @@
-
+
diff --git a/ardundzdf.py b/ardundzdf.py
index 6cc8b20..e1974d1 100644
--- a/ardundzdf.py
+++ b/ardundzdf.py
@@ -43,8 +43,8 @@
# +++++ ARDundZDF - Addon Kodi-Version, migriert von der Plexmediaserver-Version +++++
# VERSION -> addon.xml aktualisieren
-VERSION = '3.2.5'
-VDATE = '04.08.2020'
+VERSION = '3.2.6'
+VDATE = '07.08.2020'
#
#
@@ -4645,7 +4645,7 @@ def DownloadTools():
if os.path.exists(MONITOR_ALIVE): # JobMonitor?
title = 'Aufnahme-Monitor stoppen'
- tag = u'stoppt das Monitoring für EPG-Aufnahmen'
+ tag = u'stoppt das Monitoring für EPG-Aufnahmen (aber keine laufenden Aufnahmen)'
summ = 'das Setting "Aufnehmen Menü: EPG Sender einzeln" wird ausgeschaltet'
summ = '%s\n\nZum Restart dieses Menü erneut aufrufen oder das Aufnehmen im Setting wieder einschalten' % summ
fparams="&fparams={'action': 'stop', 'setSetting': 'true'}"
diff --git a/changelog.txt b/changelog.txt
index 900e619..f2f8bbd 100644
--- a/changelog.txt
+++ b/changelog.txt
@@ -13,10 +13,17 @@ CHANGE HISTORY
--------------
+07.08.2020 3.2.6
+ Sendereihe_Sendungen (3sat): unescape title.
+ Main_m3u8 (Modul m3u8): Logausgabe SESSION_TS_URL verlegt (Error
+ falls '#EXT-X-TARGETDURATION' nicht in master.m3u8)
+ get_ts_startpos (Modul m3u8): zusätzl. Logausgabe für Index 0 in
+ neuer ts-Liste.
+
04.08.2020 3.2.5
JobMonitor: Vorlauf auf JOBDELAY gesetzt, falls 0 (Ausgleich Intervall).
Main_m3u8 (Modul m3u8): SESSION_TS_URL für reclink-Url ergänzt (fehlt zum
- Nachladen der TS-Datein für DasErste).
+ Nachladen der TS-Dateien für DasErste).
AudioStart_AZ + AudioStart_AZ_content: Cache-Nutzung für A-Z-Seiten (1 x html,
1 x json).
Bilder3sat (3sat): Anpassungen an Webänderungen (Titel, Subtitel).
diff --git a/resources/lib/m3u8.py b/resources/lib/m3u8.py
index f5eb35d..1ef7b10 100644
--- a/resources/lib/m3u8.py
+++ b/resources/lib/m3u8.py
@@ -8,7 +8,7 @@
#
####################################################################################################
# Start 16.07.2020
-# Stand 27.07.2020
+# Stand 06.08.2020
# Python3-Kompatibilität:
@@ -46,7 +46,10 @@
ADDON_DATA = os.path.join("%s", "%s", "%s") % (USERDATA, "addon_data", ADDON_ID)
DICTSTORE = os.path.join("%s/Dict") % ADDON_DATA
-
+# Hinw.: auch bei exakten ts-Reihenfolgen können im zusammengesetzten Video Zeitfehler
+# auftauchen (Bsp.: AddData - messy timestamps, increasing interval for measuring
+# average error to 6000 ms). Kodi "glättet die Ausgabe, VLC 3.0.11 nicht.
+#
#----------------------------------------------------------------
def get_m3u8_body(m3u8_url): # Master m3u8
PLog('hole Inhalt m3u8-Datei: ' + m3u8_url)
@@ -134,6 +137,7 @@ def get_ts_startpos(ts_list, last_ts_path, ts_dur): # neue Startpos. (von unte
cnt = cnt+1
if found == False: # neue Liste startet vermutl. direkt mit Folgepfad
PLog("last_ts_path fehlt in neuer ts-list: %s" % last_ts_path)
+ PLog("verwende Index 0: %s" % ts_list[0])
# PLog(ts_list) # Debug
ts_startpos = 0
return ts_startpos
@@ -256,7 +260,7 @@ def download_ts(host, ts_page, dest_video, duration, ts_dur, JobID):
return
#-----------------------------------------------------------------------
# nur in Testumgebung (ohne ZDF-Sender) - holt die ts-Listen
-# aller Sender in ../resources/livesenderTV.xml:
+# aller Sender, Code in ../resources/livesenderTV.xml:
# def get_all_tsfiles():
#-----------------------------------------------------------------------
# threadID: "%Y%m%d_%H%M%S" aus LiveRecord - in download_ts
@@ -266,7 +270,9 @@ def Main_m3u8(m3u8_url, dest_video, duration, JobID):
PLog("Main_m3u8:")
PLog(m3u8_url); PLog(dest_video);PLog(duration);
- global SESSION_TS_URL
+ global SESSION_TS_URL
+ SESSION_TS_URL=''
+
body, new_url = get_m3u8_body(m3u8_url) # gesamte m3u8-Seite
# PLog(body)
if '#EXT-X-TARGETDURATION' in body: # reclink in livesenderTV.xml (DasErste)
@@ -282,7 +288,7 @@ def Main_m3u8(m3u8_url, dest_video, duration, JobID):
# ts_url = ts_url_list[0] # Debug kleinste Qual.
bw, ts_url = ts_url.split('|')
PLog('Anzahl ts-Quellen: %d' % len(ts_url_list))
- PLog("BANDWIDTH: %s, SESSION_TS_URL: %s" % (bw, SESSION_TS_URL))
+ PLog("BANDWIDTH: %s" % bw)
ts_page = download_ts_file(ts_url) # nur 1. Liste (höchste Qual.)
SESSION_TS_URL= ts_url # zum Nachladen ts_file in download_ts
@@ -292,7 +298,7 @@ def Main_m3u8(m3u8_url, dest_video, duration, JobID):
except Exception as exception:
PLog(str(exception))
ts_dur=4 # Default ARD & Co
- PLog("TARGETDURATION: %s" % (ts_dur))
+ PLog("TARGETDURATION: %s, SESSION_TS_URL: %s" % (ts_dur, SESSION_TS_URL))
#with open("/tmp/ts_liste.txt",'w') as f: # Debug
# f.write(ts_page)
diff --git a/resources/lib/my3Sat.py b/resources/lib/my3Sat.py
index 892382e..12ef218 100644
--- a/resources/lib/my3Sat.py
+++ b/resources/lib/my3Sat.py
@@ -811,6 +811,7 @@ def Sendereihe_Sendungen(li, path, title, img='', page=''): # Liste der Einzels
title = stringextract('clickarea-link">', '
', rec)
if title == '':
title = stringextract('title="', '"', rec)
+ title = unescape(title)
href = stringextract('href="', '"', rec)
if href.startswith('http') == False:
diff --git a/resources/livesenderTV.xml b/resources/livesenderTV.xml
index 2835507..b4bf454 100644
--- a/resources/livesenderTV.xml
+++ b/resources/livesenderTV.xml
@@ -5,13 +5,14 @@
Livestreams http://www.ardmediathek.de/tv/live
Grafiken @Arauco (Plex-Forum)
- 24.06.2020 rols1
+ 07.08.2020 rols1
https://www.zdf.de/live-tv
Senderübersicht TVToday: https://www.tvtoday.de/programm/standard/sender/ Button:Alle Sender
das &-Zeichen verstößt zwar gegen den xml-Standard, ist aber kompatibel mit den String-Funktionen im PRG
hrefsender enthält Sendernamen passend zu www.ardmediathek.de (ARD-Neu)
-
+ link: Kennung statt Streamurl möglich, z.B. ZDFsource -> get_ZDFstreamlinks
+
Überregional