Jump to content
Prinz

DVBViewerTimerImportTool

Recommended Posts

Prinz

Zuletzt geändert: 31.05.2013 20:53

Neueste Versionen:

 

Version 1.03.04 (beta):

 

DVBViewerTimerImport V 01_03_04.zip

 

BugFix:

  • TVInfo: Durch unerwartete Steuerzeichen im XML-File von TV-Info konnte es zu einem Abbruch des Import-Vorgangs kommen.

Bekannte Probleme:

  • 64-Bit-Java-Runtime-Environment wird noch nicht unterstützt.

Version 1.03.03 (beta):

 

DVBViewerTimerImport V 01_03_03.zip

DVBViewerTimerImport V 01_03_03 _Sources.zip

 

Neue Feature:

  • TV-Movie (Clickfinder): TV-Movie-Kanäle werden direkt aus der TV-Movie-Datenbank importiert

BugFix:

  • DVBViewer-XML-Datei gefixed (letzter Timereintrag wird nicht übernommen)
  • TVInfo: Anpassung an das neue HTML-Seitendesign
  • TV-Browser: "Kanal wählen" geht seit Java-Version 1.7.0_21 nicht mehr, gefixt

Bekannte Probleme:

  • 64-Bit-Java-Runtime-Environment wird noch nicht unterstützt.

 

 

 

Beta Version:


Hier ist folgendes zu beachten:
Unter dem Reiter "Anbieter-Zuordnung" müssen bei ausgewähltem TV-Browser die Kanäle importiert werden.


Version 1.03.01 (beta):

 

 

 

Neue Feature:

  • TV-Browser: Werden mit einem TV-Browser-Update die Sendezeiten von programmierten Sendungen verschoben, erfolgt nun eine automatische Timer-Anpassung
  • Allgemein: Algorithmus zum Verbinden nochmals komplett überarbeitet und vereinfacht (daher Beta)
  • Allgemein: Die xml-Dateien der alten Version werden beim Starten der neuen automatisch gesichert und gepackt.

BugFix:

  • TV-Browser-Bug gefixt: Runtime-Error bei nicht eindeutigen Sendernamen

Bekannte Probleme:

  • 64-Bit-Java-Runtime-Environment wird noch nicht unterstützt.

 

Neue Version 1.02.09.

 

DVBViewerTimerImport V 01_02_09.zip


BugFix:

  • TV-Browser-Bug gefixt: Sendungen von anderen Plugins wurden nicht programmiert
  • TVInfo-Bug gefixt: Die automatische Korrektur von leeren Kanal-Einträgen der TVInfo-XML-Datei funktioniert nicht für Sendungen, welche aktuell schon laufen.
  • Allgemeiner Bug gefixt: Laufende Aufnahme wird jetzt von dem Tool richtig unterstützt (Merge-Problem)

Bekannte Probleme:

  • 64-Bit-Java-Runtime-Environment wird noch nicht unterstützt.
  • TV-Browser: bei nicht eindeutigen Sendernamen aktuell noch ein Runtime-Error. (Muss noch untersucht werden)

Neue Version 1.02.08.
BugFix:

  • Nun wieder ohne Microsoft C++ Run Time Library ablauffähig

Bekannte Probleme:

  • 64-Bit-Java-Runtime-Environment wird noch nicht unterstützt.
  • TV-Info: Die automatische Korrektur von leeren Kanal-Einträgen der TVInfo-XML-Datei funktioniert nicht für Sendungen, welche aktuell schon laufen.
  • TV-Browser: bei nicht eindeutigen sendernamen aktuell noch ein Runtime-Error. (Muss noch untersucht werden)

Neue Version 1.02.07.
BugFix:

  • TVInfo: die automatische Kanalzuordnung und die Korrektur von leeren Kanal-Einträgen der TVInfo-XML-Datei ist wieder funktionsfähigt (bei ZDF_neo u.a.)
  • TVGenial-Channel-ID wurde fälschlicherweise in das XML-File auch bei den anderen Providern geschrieben
  • Uneindeutige Kanallisten von Providern werden nun erkannt und nur einer von beiden Kanälen zugewisen

Bekannte Probleme:

  • 64-Bit-Java-Runtime-Environment wird noch nicht unterstützt.

Neue Version 1.02.06.
neue Feature:


  • Modifikation der Timer nun auch über das Tool möglich
  • TVBrowser: Anstelle des DVBViewers kann nun auch ein externes Programm bei Kanal wählen, gestartet werden

BugFix:

  • Neuer Algorithmus für die Zuordnung der Timer-Einträge
  • Support des 64Bit-Channel-Format des DVBViewers
  • weitere

Bekannte Probleme:

  • TVInfo: Leider hat TVInfo den Zugriff auf seine Seiten geändert, so dass momentan die automatische Kanalzuordnung und die Korrektur von leeren Kanal-Einträgen der TVInfo-XML-Datei nicht mehr funktioniert (bei ZDF_neo u.a.). Ich arbeite an einer Lösung
  • 64-Bit-Java-Runtime-Environment wird noch nicht unterstützt.

Neue Version 1.01.00.
neue Feature:


  • TVInfo: Fehler in der TVInfo-XML-Datei (leere Channel-Entries) werden nun durch Parsen des Merkzettels korrigiert
  • TVInfo: Importieren der Kanäle ist jetzt möglich (TVInfo-Internet-Seite wird geparst)
  • TVInfo: Automatische Kanalzuordnung ist nun auch bei TVInfo möglich (Nur die in TVInfo definierten User-Kanäle werden zugeordnet)

BugFix:

  • NullPointer-Exception bei der DVBViewer-Kanal-Zuordnung behoben.

Neue Version 1.00.07.
BugFix:


  • GUI: Der Import ist jetzt entsprechend der Funktion in die DVBViewer-Zuordnung verschoben worden

Neue Version 1.00.06.
neues Feature:


  • Es können nun auch die Radio-Kanäle eingelesen werden (Über CheckBox wählbar)

BugFix:

  • Die Sprachauswahl hatte noch ein Problem mit Sprachen != Deutsch
  • GUI-Update-Problem behoben, neu importierte TVBrowser-Kanäle konnten erst nach Neustart den DVBViewer-Kanälen zugewiesen werden

Neue Version 1.00.05.
Bugfix:[/b]


  • TVInfo: Da ich aus einem anderen Thread erfahren habe, dass bei TVInfo leider das Channel-Attribut für manche Sender leer ist (ZDF-Neo, Spiegel TV ...) und bis zur Version 1.00.04 das zu einem Abbruch des TVInfo-Imports mit einer Fehlermeldung führte, habe ich das jetzt so geändert, dass diese Einträge ignoriert werden und nur ein Log-File-Eintrag erfolgt.
    Anderer Workaround ist schwierig, hier müsste man schon den Merkzettel selber scannen, um die fehlende Info zu erhalten, da das Problem nicht nur einen Sender betrifft. Aber vielleicht ändert das TVInfo selber noch, für die sollte es ja eigentlich kein großes Problem darstellen, aber da weiß man ja nie, ob die die Programmnamen direkt im Code haben.

Der SourceCode der DLL ist jetzt auch dabei.


Neue Version 1.00.04.
Bugfix:

  • Da der Start des DVBViewerTimerImport-Tools unter Vista im Admin-Mode nur über Tricks möglich ist (Javaw über Verknüpfung mit -jar-Parameter) habe ich das Tool entsprechend geändert, so dass die DVBViewerTimerImport.dll-Datei nicht mehr im Programmverzeichnis liegt.

Außerdem liegt - für den, den es interessiert - der Source-Code bei.[/b]

Neue Version 1.00.03.
Bugfix:

  • Wenn Anzahl der Zeichen eines Kanalnamens weniger als 2 Zeichen betrug, hing sich die Kanalzuordnung auf
  • TV-Browser: Nullpointer-Exception bei Umschaltung des DVBViewer-Kanals gefixt

Neue Version 1.00.02.
neue Feature:


  • TV-Browser: Nun kann auch der DVBViewer-Kanal direkt umgeschaltet werden
  • TV-Browser: Kanalliste in der DVBViewer-Zuordnung ist auf die im TV-Browser definierten Kanäle beschränkt
  • TV-Browser: Die Kanäle können automatisch zugewiesen werden

BugFix:

  • Die DVBViewerTimerImport.dll-Datei wurde immer nach jedem Programmstart neu erzeugt

Neue Version 1.00.01.
Bugfix:


  • Usermode = 0 wird nun richtig unterstützt

Hallo,

ich habe mich öfter ärgern müssen, da öffentliche Sender sehr häufig am Wochenende die vorgesehen Zeiten überschreiten und ich daher bei diesen Sendern anschließend nicht selten abgeschnittene Aufnahmen habe, da selbst eine Nachlaufzeit von 30 min nicht ausgereicht hat. Daher hatte ich mich entschlossen, ein Tool zu schreiben, was dieses Problem dadurch umgeht, in dem die Vor-und Nachlaufzeiten wochentags- und zeitabhängig einstellbar sind. Dadurch ist es möglich beispielsweise nur für die Sender ARD + ZDF die Nachlaufzeit am Wochenende nach 22:00 auf 60min oder mehr einzustellen.

Dies funktioniert mit folgenden Programmen/Anbietern

TVInfo
TV-Browser als Plugin
TV-Genial
Clickfinder

Die Vorzüge des neuen Tools sind:

  • Vorlauf-/Nachlaufzeiten können abhängig vom Wochentag, Uhrzeit und Kanal definiert werden
  • Mehrere aufeinanderfolgende Sendungen können zu einer verbunden werden. Verbindungen können manuell leicht wieder aufgelöst werden.
  • Kanalzuordnungen gelten automatisch für alle Programme/Anbieter
  • Import der Kanalzuordnung aus dem Vorgänger dieses Tools möglich (aus tvinfoDVBV.ini-Datei)

Das Programm ist in Java und C++ (wegen der COM-Schnittstelle) geschrieben und benötigt daher ein JRE.

Als Anhang das Tool mit der dazugehörigen Doku.

Viel Spaß beim Testen

Gruß
Prinz

Edited by Prinz

Share this post


Link to post
Lars_MQ

Sehr nett. :P

 

Kleiner Bug: Usermode=0, dann muss das verzeichniss in der usermode.ini ignoriert werden. Im moment kann ich das tool nicht mehr starten, weil es an einen fehler in der usermode.ini glaubt ;)

Share this post


Link to post
Prinz

Hallo Lars,

 

Kleiner Bug: Usermode=0, dann muss das verzeichniss in der usermode.ini ignoriert werden.

 

Vielen Dank für den Hinweis, hatte gedacht, dass auch im Usermode = 0 das Root-Verzeichnis der usermode.ini berücksichtigt werden muss. Habe es gefixt.

 

Die neue Version (1.00.01) liegt oben im Start-Thread.

 

Gruß

Prinz

Share this post


Link to post
Lars_MQ

Die Doku hast Du vergessen wieder mit einzupacken :P

Share this post


Link to post
Prinz
Die Doku hast Du vergessen wieder mit einzupacken :P

 

hatte ich auch gerade an der File-Größe gesehen.

 

Habe es nochmals reingelegt.

 

Gruß

Prinz

Share this post


Link to post
Siggi0904

Hi Prinz,

 

kannst du das auch im TV-Browser Forum posten? Oder soll ich das machen?

 

Cooles Feature, auch wenn ich nun im TV-Browser zwei Listen zur DVBViewer Anbindung pflegen muss.

 

Wenn ich mit deinem Plugin auch Sender über den TV-Browser im DVBViewer umschalten könnte, wäre es ein Plugin weniger. :P Bzw. wenn der DVBViewer noch nicht läuft diesen mit dem gewählten Sender starten.

 

Des Weiteren könntest du aus dem TV-Browser nur die Sender nehmen, die auch in der Programmtabelle sind?

Alle anderen sind ja nicht vorhanden, können somit auch nicht programmiert werden.

 

Wenn deine Java Kenntnisse so gut sind, kannst du im TV-Browser den Datenservice zum einlesen der DVBViewer Sender in den TV-Browser anpassen, sodass er wieder unter Version 3 des TV-Browser läuft.

 

Des Weiteren hakt ja das DVB Plugin im TV-Browser. Vielleicht kannst du ja dieses Plugin ablösen, da es auch nicht mehr weiterentwickelt wird.

 

Also wie du siehst kommt deine Hilfe und dein Super Tool mit Sicherheit gut an.

 

Danke und bis dann.

 

PS: Kann bitte ein Mod meinen älteren Beitrag löschen? Ich kann den nicht bearbeiten, deshalb neu. Danke.

Share this post


Link to post
Lars_MQ

Ich bin leider etwas der buhmann, aber nicht falsch verstehen. :P

Ich habe extreme probleme die Sender zuzuweisen. An "Graue" Sender komme ich nur ran, wenn ich vorher die Taps wechsel. Und dann wird dort ein völlig falscher verknüpfter sender angezeigt... das ist auf jeden fall reproduzierbar...

Share this post


Link to post
Prinz

Hallo,

 

kannst du das auch im TV-Browser Forum posten? Oder soll ich das machen?

 

werd ich noch machen.

 

 

Wenn ich mit deinem Plugin auch Sender über den TV-Browser im DVBViewer umschalten könnte, wäre es ein Plugin weniger. :P Bzw. wenn der DVBViewer noch nicht läuft diesen mit dem gewählten Sender starten.

 

Werd ich einbauen. Da ich einen eigenständigen HTPC habe, habe ich bisher darauf verzichtet. Aber kommt höchstwahrscheinlich in der nächsten Version. Sollte eigentlich kaum einen Aufwand bedeuten.

 

Des Weiteren könntest du aus dem TV-Browser nur die Sender nehmen, die auch in der Programmtabelle sind?

Du meinst vermutlich in der DVBViewer-Zuordnung.

 

Gute Idee, kann ich sowohl für den TV-Browser als auch für TV-Genial reinbringen.

 

 

Wenn deine Java Kenntnisse so gut sind, kannst du im TV-Browser den Datenservice zum einlesen der DVBViewer Sender in den TV-Browser anpassen, sodass er wieder unter Version 3 des TV-Browser läuft.

 

Werd ich mir mal anschauen, ob ich da was machen kann.

 

Des Weiteren hakt ja das DVB Plugin im TV-Browser. Vielleicht kannst du ja dieses Plugin ablösen, da es auch nicht mehr weiterentwickelt wird.

 

Wenn ich die Sache mit der Sendereinstellung und das zusätzliche Fenster reingebracht habe , mit dem man dann noch die Timer gezielt bearbeiten kann, sollte es ja eigentlich dann ein vollständiger Ersatz sein oder habe ich da noch etwas übersehen?

 

Also wie du siehst kommt deine Hilfe und dein Super Tool mit Sicherheit gut an.

 

Na da freut man sich immer, wenn man sieht, dass man nicht nur für sich allein etwas programmiert hat und man anderweitig positive Resonanz erhält.

 

Viele Grüße

Prinz

Share this post


Link to post
Siggi0904

Hi Prinz,

 

schön, dass du dir der Sachen annimmst. Bisher läuft alles super. Muss noch damit rumspielen.

 

Schön, dass es bald das Umschalten geben wird. Ja dann ersetzt es das alte DVBPlugin komplett.

 

Du meinst vermutlich in der DVBViewer-Zuordnung.

 

Gute Idee, kann ich sowohl für den TV-Browser als auch für TV-Genial reinbringen.

 

Ich meine die Sender im TV-Browser die ich abonniert habe, also die Sender, die in der Prgorammtabelle stehen und welche ich auch aktualisieren muss. Nicht alle Sender die der TV-Browser zur Verfügung stellt. Bitte versuch auch die Reihenfolge der Sender so wie in der TV-Browser Programmtabelle zu übernehmen, das macht das Zuordnen einfacher.

 

Hier wäre die Frage ob du die Zuordnung schon automatisch vorbelegen könntest? Dann bräuchte man nur einen kleinen Teil anpassen.

 

Wenn deine Java Kenntnisse so gut sind, kannst du im TV-Browser den Datenservice zum einlesen der DVBViewer Sender in den TV-Browser anpassen, sodass er wieder unter Version 3 des TV-Browser läuft.

 

Werd ich mir mal anschauen, ob ich da was machen kann.

 

Das wäre super, dann könnte man noch mehr Sender übernehmen, da ja nicht alle Sender im TV-Browser gelistet sind.

 

Aber ich muss dir nochmal Danke sagen, super Arbeit. Freu mich auf die neue Version.

 

 

Viele Grüße

 

Siggi0904

Edited by Siggi0904

Share this post


Link to post
Prinz

Hallo,

 

Ich meine die Sender im TV-Browser die ich abonniert habe, also die Sender, die in der Prgorammtabelle stehen und welche ich auch aktualisieren muss. Nicht alle Sender die der TV-Browser zur Verfügung stellt. Bitte versuch auch die Reihenfolge der Sender so wie in der TV-Browser Programmtabelle zu übernehmen, das macht das Zuordnen einfacher.

 

Gut, aber die Reihenfolge so umbiegen, dass sie der Kanaldefinition im Browser entspricht, sehe ich nicht unbedingt einen Sinn. Da die Kanäle des DVBViewers alphabetisch sortiert sind, macht doch auch eine alphabetische bei in der TV-Browser-Liste einen Sinn.

 

Hier wäre die Frage ob du die Zuordnung schon automatisch vorbelegen könntest? Dann bräuchte man nur einen kleinen Teil anpassen.

 

Ich werde dafür eine Button vorsehen und versuchen für dann automatisch zugeordneten Kanäle eine andere DVBViewer-Symbolfarbe zu geben, die bis zum Neustart des Tools erhalten bleibt. Dadurch kann man noch gezielt diese automatischen Zuordnungen überprüfen und evtl. korrigieren, da die Zuordnung meist nicht eindeutig ist.

 

 

Viele Grüße

Prinz

Share this post


Link to post
Prinz

Hallo,

 

Wenn ich mit deinem Plugin auch Sender über den TV-Browser im DVBViewer umschalten könnte, wäre es ein Plugin weniger. :biggrin: Bzw. wenn der DVBViewer noch nicht läuft diesen mit dem gewählten Sender starten.

 

Des Weiteren könntest du aus dem TV-Browser nur die Sender nehmen, die auch in der Programmtabelle sind?

Alle anderen sind ja nicht vorhanden, können somit auch nicht programmiert werden.

 

Hier wäre die Frage ob du die Zuordnung schon automatisch vorbelegen könntest? Dann bräuchte man nur einen kleinen Teil anpassen.

 

 

Diese drei Vorschläge habe ich in der Version jetzt implementiert.

 

 

@Lars:

 

Deinen Beitrag sehe ich erst jetzt.

 

Ich habe extreme probleme die Sender zuzuweisen. An "Graue" Sender komme ich nur ran, wenn ich vorher die Taps wechsel. Und dann wird dort ein völlig falscher verknüpfter sender angezeigt... das ist auf jeden fall reproduzierbar...

 

So wie Du's erklärst, sieht es irgendwie nach einem fehlenden oder fehlerhaften GUI-Update vielleicht nach einem Import aus.

 

Hast Du aus Deinem TVInfo-Import-Tool die Kanäle importieren wollen oder wie bist Du zu den grauen Einträgen gekommen?

 

Kannst Du mir da vielleicht die Reihenfolge nennen, wie Du vorgegangen bist?

 

Viele Grüße

Prinz

 

PS: Graue Einträge sollten eigentlich bedeuten, dass ich keine Zuordnungen zu den Kanälen in der channels.dat finde (jedenfalls nicht 1:1). Der DVBViewer-kanal, den er dann defaultmäßig für diesen angegrauten Kanal anzeigt, hat nicht mit der ursprünglichen Belegung zu tun sondern stammt von dem internen Auswahlalgorithmus, der den am besten passenden Namen sucht. Der muss nicht mit dem ursprünglichen Kanal zu tun haben. Der Algorithmus soll nur dazu dienen, dass man schon in der Nähe der richtigen Zuordnung ist und nicht von null an durch die ganze Liste gehen muss.

 

Grau werden die Einträge, wenn die der 1:1 Stringvergleich nicht erfolgreich ist. Dabei erfolgte der Stringvergleich über die komplette ID, also beispielsweise über folgenden String: "570442845|ProSieben". Vielleicht ist hier der Vergleich zu umfangreich, theoretisch brauch ich eigentlich nur die Ziffer vergleichen. Das "Anhängsel" ProSieben dürfte eigentlich überflüssig sein.

 

Lars, ist das vielleicht Dein Zuordnungsproblem?

 

Wenn ich nur die Ziffern beim importieren vergleiche, wäre es dann behoben?

Edited by Prinz

Share this post


Link to post
Siggi0904

Hallo Prinz,

 

schön das es so schnell geht. Coole Neue Featues. Das alte DVBPlugin ist nun gelöscht worden. Ich kann leider nur den TVBrowser Part testen.

 

Die automatische Zuordnung geht nicht. Er findet keine Zusammenhänge. Die Sendernamen unterscheiden sich wohl zu sehr. Z.B. nennt sich "Das Erste" beim TVBrowser "Das Erste (ARD)" und im DVBViewer "Das Erste (deu)" bzw. "Das Erste (AC3,deu)", ich weiß nicht ob du die zusammen bekommen kannst. Ich mach das erstmal per Hand.

 

Des Weiteren ist der Einstellungsdialog für die Senderzuordnung bei Aktivierung der automatischen Senderzuordnung solange blockiert bis ich einen anderen Reiter auswähle. Ich weiß nicht wann die Liste wieder freigegeben wird.

Vielleicht kannst du da ja ein paar Statusinfos zum testen ausgeben, die können ja später wieder raus.

 

Ich kann auch immer nur einen Sender per Hand zuweisen und muss dann einen anderen Tab anwählen, dann wieder zurück zum nächsten Sender zuweisen. Irgendwie wird nicht aktualisiert. Er weist auch einen Sender sofort zu, wenn ich ihn in der DVBViewer Liste auswähle.

 

Das Umschalten für zugeordnete Sender klappt bestens. Nur leider bietet das Plugin in der Programmtabelle das Umschalten für jeden Sender an, obwohl nicht zugeordnet. Dann kommt leider eine NullpointerExeption:

 

Das Plugin "DVBViewer-Import-Plugin" hat einen Fehler verursacht. Soll es deaktiviert werden?

----- Start of stacktrace -----
java.lang.NullPointerException
 at dvbviewertimerimport.DVBViewer.DVBViewer.startDVBViewerAndSelectChannel(DVBViewer.java:737)
 at dvbviewertimerimport.DVBViewerTimerImport$DVBViewerChannelChooseAction.actionPerformed(DVBViewerTimerImport.java:285)
 at tvbrowser.core.plugin.ActionProxy.actionPerformed(ActionProxy.java:83)
 at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
 at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
 at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
 at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
 at javax.swing.AbstractButton.doClick(Unknown Source)
 at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
 at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
 at java.awt.Component.processMouseEvent(Unknown Source)
 at javax.swing.JComponent.processMouseEvent(Unknown Source)
 at java.awt.Component.processEvent(Unknown Source)
 at java.awt.Container.processEvent(Unknown Source)
 at java.awt.Component.dispatchEventImpl(Unknown Source)
 at java.awt.Container.dispatchEventImpl(Unknown Source)
 at java.awt.Component.dispatchEvent(Unknown Source)
 at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
 at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
 at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
 at java.awt.Container.dispatchEventImpl(Unknown Source)
 at java.awt.Window.dispatchEventImpl(Unknown Source)
 at java.awt.Component.dispatchEvent(Unknown Source)
 at java.awt.EventQueue.dispatchEvent(Unknown Source)
 at util.ui.textcomponentpopup.TextComponentPopupEventQueue.dispatchEvent(TextComponentPopupEventQueue.java:53)
 at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
 at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
 at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
 at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
 at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
 at java.awt.EventDispatchThread.run(Unknown Source)
----- End of stacktrace -----

 

Kannst du im Kontextmenü in der Programmtabelle die Senderlogos bzw. das DVBViewer Logo anzeigen, dann sieht es nicht so leer aus.

Des Weiteren wäre es toll wenn du die Hilfe direkt ins Tool integrieren könntest. Das erleichtert das nachlesen.

 

Wenn du für den DVBiewer Datenservice Infos oder den Source brauchst, immer zu vielleicht kann ich da helfen.

 

Super Arbeit, die du da leistest. Weiter so.

Share this post


Link to post
Siggi0904

Da die Zeit rum ist, dass ich einen Beitrag editieren kann schrieb ich hier weiter. Ich weiß nicht, warum man nur eine bestimmte Zeit einen Beitrag editieren kann. Sehr blöde Funktion.

 

So nun zum Thema.

 

Ich habe im TVBrowser auch die Datenservices VirtualDataservice, Radiotimes etc. installiert. Mit dem VirtualDataservice Datenservice kann man eigene Sender definieren, die nur lokal liegen. Diese Sender kann dein Plugin nicht erfassen. Es kommt die Meldung "Anbieter Kanal ..... ist im Plugin-Setup nicht definiert. Wär schön, wenn du es darauf erweitern könntest. Sender von den anderen Datenservices und Radiosendern werden auch nicht in deinem Tool angezeigt.

 

Stimmt das? Danke fürs hinzufügen.

 

Danke im Voraus.

Share this post


Link to post
Prinz
Die automatische Zuordnung geht nicht. Er findet keine Zusammenhänge. Die Sendernamen unterscheiden sich wohl zu sehr. Z.B. nennt sich "Das Erste" beim TVBrowser "Das Erste (ARD)" und im DVBViewer "Das Erste (deu)" bzw. "Das Erste (AC3,deu)", ich weiß nicht ob du die zusammen bekommen kannst. Ich mach das erstmal per Hand.

 

Des Weiteren ist der Einstellungsdialog für die Senderzuordnung bei Aktivierung der automatischen Senderzuordnung solange blockiert bis ich einen anderen Reiter auswähle. Ich weiß nicht wann die Liste wieder freigegeben wird.

Vielleicht kannst du da ja ein paar Statusinfos zum testen ausgeben, die können ja später wieder raus.

 

Da ist irgend etwas noch ganz Faul. So etwas ähnliches scheint ja auch Lars zu haben.

 

Also der Algorithmus soll immer eine Zuordnung machen, unabhängig wie gut es passt.

 

So wie Du es schreibst und es wohl auch Lars beobachtet hat, scheint sich irgendwie diese Algorithmus aufzuhängen, da danach die Liste nur durch andere Actions/Events (Tab-Wechsel) wieder frei wird. Ich vermute, dass der Thread mit dem Algorithmus im Hintergrund endlos weiterläuft. Siehst Du das evtl. an einer erhöhten CPU-Last?

 

Könntetst Du mir vielleicht deine channels.dat -Datei aus dem DVBViewer-Konfigurationsverzeichnis hier reinlegen?

 

Ich schau mir den Algo nochmal an, ob es da unter bestimmten Bedingungen zu Endlosschleifen kommen kann, welche ich mit meiner Channels.dat bisher nicht gesehen habe.

 

Den mit der Nullpointerex. bau ich natürlich gleich raus, das ist ja trivial.

 

Gruß

Prinz

Share this post


Link to post
Siggi0904

Hi Prinz,

 

Datei liegt unter www.web-alltag.de/Dateien/channels.zip

 

Ich hoffe du hast das mit den anderen Datenservices gelesen.

 

Danke fürs fixen.

Share this post


Link to post
Prinz
Hi Prinz,

 

Datei liegt unter www.web-alltag.de/Dateien/channels.zip

 

Ich hoffe du hast das mit den anderen Datenservices gelesen.

 

Danke fürs fixen.

 

 

Danke für die channels.dat. Mit der kann ich es jetzt auch bei mir provozieren. Mal suchen, woran es liegt.

 

Bzgl. Datenservice muss ich Dich noch etwas vertrösten, will nicht gleich mehrere Baustellen offen haben, außerdem bin ich dann ab Mittwoch in einem kurzen Urlaub ( etwas mehr als 1 Woche).

 

Komm ich sicherlich erst danach dazu.

 

Gruß

Prinz

Share this post


Link to post
Siggi0904

Wegen dem Datenservice, nur keine Eile. Erstmal das Haupttool ausbessern, läuft ja so gut wie.

 

Ich meinte eher, da TV-Datenservices im TV-Browser. Also Radiotimes, VirtualDataservice etc.

Das defekte DVBViewer-Datenservice steht hinten an.

 

Dann die Sahne dazu. Ich dank dir.

Edited by Siggi0904

Share this post


Link to post
Prinz

Hallo,

Danke für die channels.dat. Mit der kann ich es jetzt auch bei mir provozieren. Mal suchen, woran es liegt.

 

So, habe es jetzt mit Deiner Channels.dat gefixt, und die übrigen Sachen auch geändert.

 

@Lars:

Das Problem scheint das Gleiche zu sein, was Du beschrieben hast. Das Problem trat nicht nur bei der automatischen sondern auch bei der manuellen Kanalzuornung auf. (Kanalnamenlänge < 2 Zeichen, so etwas habe ich nicht bei mir)

 

Gruß

Prinz

Share this post


Link to post
Siggi0904

Hi Prinz,

 

danke fürs fixen. Läuft super. Teste dann mal die Kanalbelegung.

 

Kannst du mal schauen ob du die Sender aus den anderen Dataservices z.B. Radiotimes oder virtualdataservice mit aufnehmen kannst? Wär super.

 

Danke auch für die Logos.

 

Super Arbeit. Bis dann.

Share this post


Link to post
Prinz
Kannst du mal schauen ob du die Sender aus den anderen Dataservices z.B. Radiotimes oder virtualdataservice mit aufnehmen kannst? Wär super.

 

Schau ich mir an.

 

Gruß

Prinz

Share this post


Link to post
Siggi0904

Hi Prinz,

 

gibts schon was neues zum Testen?

 

Wär super. Bis dann.

Share this post


Link to post
Prinz

Hallo,

 

Hi Prinz,gibts schon was neues zum Testen?

 

aktuell nicht, bin nicht daheim. Aktuell hatte ich nur versucht auf einem Vista-Lapi das Teil zu installieren und hatte gleich Probleme mit der DLL-Installation, daher habe ich das mal geändert. Aber mehr gibt es erst wieder vom 7.6. an, dann kann ich erst wieder richtig testen.

 

Gibt es noch irgendwo an den vorhanden Sachen irgendwelche Macken?

 

Gruß

Prinz

Edited by Prinz

Share this post


Link to post
Prinz

Hallo,

 

habe gerade noch eine neue Version mit Sourcecode auch der dll eingstellt.

 

Änderung besteht nur darin, dass jetzt leere Channel-Attribut bei TVInfo nicht zu einer Fehlermeldung und einem Abbruch des Imports führen, sondern nur zu einem Logdatei-Eintrag.

 

Leider ist das Channel-Attribut für manche Sender immer leer. Diese Einträge können daher aktuell nicht importiert werden.

 

Wenn hier TVInfo nicht nachbessert, werde ich wohl oder übel in einer der nächsen Versionen den Merkzettel nach den fehlenden Infos scannen müssen.

 

Gruß

Prinz

Edited by Prinz

Share this post


Link to post
Siggi0904

Hi Prinz,

 

schön dass die Entwicklung fortschreitet und Fehler gefixt werden können.

 

Konntest du schon den Fehler im TVBrowser fixen? Also, dass dein Tool auch Sendungen anzeigt, die nicht nur vom TVBrowser Datenservice kommen?

 

Evtl. hilft es ja im Source des DVB Plugin unter hier nachzusehen.

 

Danke für die viele Arbeit.

Share this post


Link to post
Prinz

Hallo,

Kannst du mal schauen ob du die Sender aus den anderen Dataservices z.B. Radiotimes oder virtualdataservice mit aufnehmen kannst?

Ich glaube, dass es einfach daher kommt, dass ich bisher grundsätzlich nur die Video-Kanäle aus der channels.dat-Datei berücksichtige

 

Ich vermute daher, dass Du keinen richtigen DVBViewer-Kanal den Radio- oder anderen Kanäle zuordnen kannst, sehe ich das richtig?

 

Ich habe mich bisher auf die Video-Kanäle beschränkt, da die meisten Anbieter nur Daten für die TV-Programme zur Verfügung stellen und dass die Beschränkung auf die Videokanäle die Konfiguration erleichtert.

 

Wenn ich damit richtig mit liege, würde ich einfach noch eine Checkbox einbauen, mit der man diese Beschränkung beim Importieren der DVBViewer-Kanäle aufheben kann.

 

 

Gruß

Prinz

Share this post


Link to post
Siggi0904

Hi Prinz,

 

das mit den Radiosendern und dem DVBViewer stimmt.

 

Nur gibt es auf der TVBrowser Seite auch andere Datenservices wie z.B. Radiotimes oder den virtualdataservice.

Diese stellen auch Fernsehsender zur Verfügung. Kannst ja daraus auch Sender in deine Programmtabelle übernehmen.

 

Diese Sender sieht das DVBViewerTimerImportTool leider noch nicht.

 

Danke.

Share this post


Link to post
Prinz

Hallo Siggi,

 

Diese stellen auch Fernsehsender zur Verfügung. Kannst ja daraus auch Sender in deine Programmtabelle übernehmen.

 

werden die dann nicht in die Programmtabelle aufgenommen, wenn Du sie im Reiter "Anbieter" importierst?

 

In diesem Reiter müsstest Du zuerst die Checkbox "Freigeben" anklicken, dann in der Combo-Box den TV-Browser auswählen und danach den Importiere-Button anklicken.

 

Anschließend sollten eigentlich die neu importierten Sender hinten an die Liste angefügt sein. Problem ist aktuell, dass eben Radio-Programme nicht zugewiesen werden können, aber das werde ich noch ändern.

 

Oder funktioniert da irgendetwas noch nicht?

 

Gruß

Prinz

Share this post


Link to post
Siggi0904

Hi Prinz,

 

hui das mit dem Freigeben habe ich gemacht und die Sender sind nun da.

 

Ich frag mich was die Funktionsweise dahinter ist. Ich dachte das Tool listet unter DVBViewer Zuordnung immer den aktuellen Stand auf. Aber so gehts natürlich auch.

 

Danach Freigeben wieder wegnehmen? Oder wie ist das?

 

Danke für die Radiosender.

Share this post


Link to post
Prinz

Hallo Siggi,

 

Wenn ich damit richtig mit liege, würde ich einfach noch eine Checkbox einbauen, mit der man diese Beschränkung beim Importieren der DVBViewer-Kanäle aufheben kann.

 

In der neuen Version 1.0.6 ist jetzt diese Checkbox enthalten. Eigentlich müsstest Du jetzt die auch die Radio-Kanäle zuordnen können.

 

Ich frag mich was die Funktionsweise dahinter ist. Ich dachte das Tool listet unter DVBViewer Zuordnung immer den aktuellen Stand auf. Aber so gehts natürlich auch.

 

Naja, das kommt eben daher, dass das Teil eben nicht nur den TV-Browser unterstützt, sondern auch TVInfo, Clickfinder, TVGenial. Dort kommt man nicht so ohne weiteres an diese Info ran, welche Kanäle man nun quasi "gebucht" hat (Bei TVGenial ginge es mit einer dll, was ich auch in Planung habe). Daher sind die aktuell händisch alle bekannten Kanäle in die XML-datei eingepflegt, welche das DVBViewerImport-Tool beim ersten Start in das Datenverzeichnis des Tools ablegt (ähnlich wie bei Lars TVInfo-Importer-Tool).

 

Da alles providerspezifische in einer Providerklasse zusammengefasst ist, von denen man nur die neuen Provider ableiten muss, sind neue Provider relativ leicht in das Tool aufzunehmen, was ich dann auch schon mit dem TVBrowser gemacht habe. Dadurch sind jedoch auch bestimmte Dinge nicht so ohne weiteres genau an einen bestimmten Provider (hier TV-Browser) ohne höheren Aufwand anpassbar. Eine eierlegende Wollmilchsau kann halt nicht allem gerecht werden ;-).

 

Ich persönlich benutze aktuell TVInfo und den Clickfinder. Ich glaube aber über kurz oder lang den TV-Browser zu verwenden. Mein Vater benutzt an einem anderen PC TVGenial. Da ich aber ein fauler Mensch bin, wollte ich nicht 3 Listen pflegen sondern möglichst nur eine, ist dieses Tool in dieser Art entstanden. Daher gibt es eben auch den Reiter mit den Anbieter-Zuordnungen, wo die entsprechenden Kanäle der einzelnen Anbieter verbunden werden, was eigentlich nur händisch geht, jedoch in der Regel nur einmal pro Kanal zu machen ist. Diese Pflege muss jedoch auch mit dem Offline-Tool ohne TV-Browser-Anbindung möglich sein.

 

Das ist dann noch ein zusätzlicher Grund, der etwas wenig intuitiven Lösung über den Import-Button, bei dann nach drücken auf OK die neu importierten Kanäle in die oben beschriebene XML-Datei übernommen werden, so dass sie auch Off-Line zur Zuordnung zur Verfügung stehen.

 

Gruß

Prinz

Share this post


Link to post
Siggi0904

Da war ich wohl blind und habe nur den TV-Browser Teil gesehen.

 

Du hast das sehr schön erklärt, danke.

 

Die neue Version teste ich nun.

Share this post


Link to post
Spiti

Hi,

Ich habe das Plugin heute mal getestet im TV-Browser.

Super Plugin, schnelle Zuordnung der Sender, einfache Abänderung

von Sendern die anders Zugeordnet werden sollen.(Z.B. Anixe-HD im TV-Browser soll Anixe-SD im DVBViewer schalten)

Also ich bin bis jetzt Begeistert, viel besser als das Plugin von Ullrich Pollähne, obwohl mir das

auch gute Dienste geleistet hat, es war nur komplizierter.

 

Weiter so :thumbsup:

Gruß Spiti

Share this post


Link to post
Prinz
Also ich bin bis jetzt Begeistert

 

Danke für die Blumen :).

 

Es gibt nun die Version 1.1.0, ber der hauptsächlich der TVInfo-Teil überarbeitet wurde.

 

Da nun das Tool bei fehlerhaften TVInfo-XML-Dateien den Merkzettel parst, weden nun auch Non-Main-Stream-Sender (Spiegel TV, ZDF-Neo ...) den richtigen DVBViewer-Kanälen zugeordnet.

 

Da ich hier den Merkzettel und auch andere TVInfo-Seiten parsen muss, kann es Schwierigkeiten geben, wenn die TVInfo-Seite im Format stark verändert wird. Ich habe den Parser so geschrieben, dass er gewisse Änderungen übersteht (in der letzten Woche wurde von TVInfo die Endezeit in den Merkzettel aufgenommen). Wenn das parsen ganz schief geht, wird nur die Info aus der TVInfo-XML verwendet (also so wie bisher).

Wenn hier jemand Probleme hat, bitte hier posten oder mir HIER eine Mail zukommen lassen.

 

Gruß

Prinz

Share this post


Link to post
dictamnus

@Prinz

 

Respekt und chapeau!

 

tolles plugin! ohne erkennbare probleme!

ersetzt das alte dvbviewerplugin von uli!

 

vielen dank

Share this post


Link to post
mannix

Auch mir gefällt das Plugin, mit all seinen Features sehr gut.

 

Ich habe allerdings mit TVBrowser ein Problem, nämlich, dass die globale Vor- und Nachlaufzeit nicht berücksichtigt wird.

Share this post


Link to post
Prinz

Hallo,

 

Ich habe allerdings mit TVBrowser ein Problem, nämlich, dass die globale Vor- und Nachlaufzeit nicht berücksichtigt wird.

 

Ich weiß nicht, aber vielleicht ist es der Grund. Wenn die Einstellung für alle Wochentage gültig sein soll, müssen auch alle Wochentage angehakt sein.

 

Ansonsten schick mir mal Deine Setup-Datei. Sie ist unter "C:\Dokumente und Einstellungen\User-Name\Anwendungsdaten\DVBViewerTimerImport" zu finden. Der Name lautet "DVBVTimerImportTool.xml"

 

Du kannst Sie mir an folgende mail-Adresse schicken: an20002004-DVBViewerTimerImport(at)yahoo.de

 

Gruß

Prinz

Share this post


Link to post
Dirk Hartstein

Hallo zusammen,

ich habe ein Problem mit diesem Plugin. Auf dem PC mit installierten DVBViewer / Service funktioniert das programm einwandfrei. Nun wollte ich das Plugin auf einem PC ohne DVBViewer installieren. nach dem importieren der Steuerdatei für den TV Browser kommt diese Fehlermedung:

 

Unexpected error on reading the file "DVBVTimerImportTool.xml" near line 4422.

Detailed error message:

 

ParseError at [row,col]:[4422,65]

Message: An invalid XML character (Unicode: 0x{2}) was found in the value of attribute "{1}" and element is "15".

 

Dann kommt noch diese Meldung:

Beim Laden der Einstellungen für DVBViewer-Import-Plugin ist ein Fehler aufgetreten.

 

----- Start of stacktrace -----

java.lang.NullPointerException

at java.awt.Container.addImpl(Unknown Source)

at java.awt.Container.add(Unknown Source)

at tvbrowser.ui.settings.ConfigPluginSettingsTab.updatePluginPanel(ConfigPluginSettingsTab.java:117)

at tvbrowser.ui.settings.ConfigPluginSettingsTab.createSettingsPanel(ConfigPluginSettingsTab.java:90)

at tvbrowser.ui.settings.SettingsDialog$SettingNode.getSettingsPanel(SettingsDialog.java:667)

at tvbrowser.ui.settings.SettingsDialog.showSettingsPanelForNode(SettingsDialog.java:515)

at tvbrowser.ui.settings.SettingsDialog.showSettingsPanelForSelectedNode(SettingsDialog.java:541)

at tvbrowser.ui.settings.SettingsDialog.access$100(SettingsDialog.java:97)

at tvbrowser.ui.settings.SettingsDialog$2.valueChanged(SettingsDialog.java:157)

at javax.swing.JTree.fireValueChanged(Unknown Source)

at javax.swing.JTree$TreeSelectionRedirector.valueChanged(Unknown Source)

at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(Unknown Source)

at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(Unknown Source)

at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(Unknown Source)

at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPath(Unknown Source)

at javax.swing.JTree.setSelectionPath(Unknown Source)

at util.ui.SingleAndDoubleClickTreeUI.mousePressed(SingleAndDoubleClickTreeUI.java:88)

at java.awt.Component.processMouseEvent(Unknown Source)

at javax.swing.JComponent.processMouseEvent(Unknown Source)

at java.awt.Component.processEvent(Unknown Source)

at java.awt.Container.processEvent(Unknown Source)

at java.awt.Component.dispatchEventImpl(Unknown Source)

at java.awt.Container.dispatchEventImpl(Unknown Source)

at java.awt.Component.dispatchEvent(Unknown Source)

at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)

at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)

at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)

at java.awt.Container.dispatchEventImpl(Unknown Source)

at java.awt.Window.dispatchEventImpl(Unknown Source)

at java.awt.Component.dispatchEvent(Unknown Source)

at java.awt.EventQueue.dispatchEvent(Unknown Source)

at util.ui.textcomponentpopup.TextComponentPopupEventQueue.dispatchEvent(TextComponentPopupEventQueue.java:53)

at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)

at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)

at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)

at java.awt.Dialog$1.run(Unknown Source)

at java.awt.event.InvocationEvent.dispatch(Unknown Source)

at java.awt.EventQueue.dispatchEvent(Unknown Source)

at util.ui.textcomponentpopup.TextComponentPopupEventQueue.dispatchEvent(TextComponentPopupEventQueue.java:53)

at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)

at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)

at java.awt.EventDispatchThread.pumpEvents(Unknown Source)

at java.awt.EventDispatchThread.pumpEvents(Unknown Source)

at java.awt.EventDispatchThread.run(Unknown Source)

----- End of stacktrace -----

 

LG

Dirk

Share this post


Link to post
Siggi0904

Hallo Prinz,

 

für die letzten Aufnahmen hätte ich gern die globalen Vor- und Nachlaufzeiten benötigt.

Leider werden die Werte nicht genommen. Im Pluginbaum des TV-Browser wird die gemerkte Sendung ohne Vor- und Nachlaufzeit angezeigt und auch so gestartet.

 

Schön wäre es, wenn man im Nachgang evtl. die Zeiten noch editieren könnte.

 

Sehe ich eigentlich die zur Aufnahme programmierten Sendungen aus dem TV-Browser im DVBViewer?

 

Anbei meine aktuelle Kinfiguration mit einer programmierten Sendung.

 

Danke im Voraus.

DVBViewerTimerImport.zip

Share this post


Link to post
Prinz

Hallo,

 

Unexpected error on reading the file "DVBVTimerImportTool.xml" near line 4422.

 

Dieses Problem ist geklärt und entsteht durch eine DVBViewer-Kanal-Liste, welche seltsame Schmierzeichen enthält. In der nächsten Version wird hier die Channels-dat-Datei beim Parsen nach solchen fehlerhaften Zeichen geprüft und eine entsprechende Fehlerausgabe gegeben. Channels mit solchen Schmierzeichennamen, werden dann ignoriert.

 

Gruß

Prinz

Share this post


Link to post
Prinz

Hallo,

 

für die letzten Aufnahmen hätte ich gern die globalen Vor- und Nachlaufzeiten benötigt.

Leider werden die Werte nicht genommen. Im Pluginbaum des TV-Browser wird die gemerkte Sendung ohne Vor- und Nachlaufzeit angezeigt und auch so gestartet.

 

Im Plugin-Baum des TV-Browsers werden immer nur die Orginal-Zeiten der Sendung angezeigt. Die Vor- und Nachlaufzeiten sind da nicht berücksichtigt.

 

Sehen kann man die aktuell nur im DVBViewer direkt oder im Web-Interface des DVBViewer-Services.

 

Schön wäre es, wenn man im Nachgang evtl. die Zeiten noch editieren könnte.

 

Das habe ich inzwischen realisiert. Die entsprechende Version habe ich noch im Test. Ich kann schon mal eine Vorabversion hier reinlegen, weil ich es wohl doch vor dem Urlaub nicht schaffen werde. Hier kann man sowohl die Start- und Endzeiten sendungsindividuell ändern als auch mehrere Sendungen zu einer verbinden, wenn auf einem Kanal.

 

 

Sehe ich eigentlich die zur Aufnahme programmierten Sendungen aus dem TV-Browser im DVBViewer?

 

Ja, siehe oben

 

Anbei meine aktuelle Kinfiguration mit einer programmierten Sendung.

 

Eigentlich hast Du die Sendung schon mit Vor- und Nachlauf programmiert. Kannst Du das im DVBViewer kontrollieren?

Aus der XML-Datei steht für die Start/Stop-zeiten folgende Einträge:

 

start   ="1280512800000"
startOrg="1280513700000"
->  Vorlaufzeit 1500s = 25 Minuten
end     ="1280519100000"
endOrg  ="1280517300000"
->  Nachlaufzeit 1800s = 30 Minuten

Kannst Du das mal direkt im DVBViewer kontrollieren?

 

Gruß

Prinz

Share this post


Link to post
Siggi0904

Hallo Prinz,

 

ja die Einstellungen zur Aufnahme einer Sendung im DVBViewer passen. Ich wusste nicht, dass im TV-Browser die Originalzeit zur Aufnahme angezeigt wird.

 

Könnte man die eigentliche Aufnahmezeit irgendwie anzeigen?

 

Die Testversion würde ich gern mal testen.

 

Danke und bis dann.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×