Jump to content

Recommended Posts

1 minute ago, Delphi said:

Do you sit behind a proxy server?

 

No... there's nothing in IE proxy settings. I'm not running anything relevant to proxies in backgroud as well.

 

Just curious... which URL is XgrabDMS requesting

I still saw "TBaseProcess         HandleAPI Error  3" in DMS debug log.

Link to comment
18 hours ago, allanlee said:

Just curious... which URL is XgrabDMS requesting

 

http://localhost:8089/api/getchannelsxml.html?tuner=1

 

My code is:

 

Spoiler

procedure GetStream(const UserName, Password, IP, Port, Command: string; aStream: TStream);
var
  IdHTTP: TIdHTTP;
begin
  IdHTTP := TIdHTTP.Create(nil);
  try
    if UserName <> '' then
    begin
      IdHTTP.Request.BasicAuthentication := True;
      IdHTTP.Request.Username := UserName;
      IdHTTP.Request.Password := Password;
    end;
    IdHTTP.Get('http://' + IP + ':'  + Port + '/api/'  + Command, aStream);
  finally
    IdHTTP.Free;
  end;
end;

 

 

 

Quote

"TBaseProcess         HandleAPI Error  3"

 

Try to ask the devs what that means, maybe here:

 

https://www.DVBViewer.tv/forum/forum/66-DVBViewer-media-server/

Edited by Delphi
Link to comment
1 hour ago, Delphi said:

 

 

tried in firefox, no problem:

 

<channels>
<root name="DVB-T2">
<group name="mediacorp">
<channel nr="0" name="Channel 5" EPGID="882624369328130" flags="24" ID="3713217898687627266">
<tuner tnrtype="2" group="0" flags="24" freq="538000" symb="0" LOF="0" PMT="200" satmod="132" AVformat="18" FEC="0" pol="2" OrbPos="5000" Tone="0" EPGFlag="0" DiSEqCVal="0" DiSEqC="0" alang="eng" APID="230" VPID="220" TSID="1" TelePID="0" NID="8894" SID="2" PCRPID="220"/>
</channel>
<channel nr="1" name="Suria" EPGID="882624369328132" flags="24" ID="3713217898700734468">
<tuner tnrtype="2" group="0" flags="24" freq="538000" symb="0" LOF="0" PMT="400" satmod="132" AVformat="18" FEC="0" pol="2" OrbPos="5000" Tone="0" EPGFlag="0" DiSEqCVal="0" DiSEqC="0" alang="may" APID="430" VPID="420" TSID="1" TelePID="0" NID="8894" SID="4" PCRPID="420"/>
</channel>
<channel nr="2" name="Channel 8" EPGID="882624369393667" flags="24" ID="3713217902989148163">
<tuner tnrtype="2" group="0" flags="24" freq="554000" symb="0" LOF="0" PMT="300" satmod="132" AVformat="18" FEC="0" pol="2" OrbPos="5000" Tone="0" EPGFlag="0" DiSEqCVal="0" DiSEqC="0" alang="ZHO" APID="330" VPID="320" TSID="2" TelePID="0" NID="8894" SID="3" PCRPID="320"/>
</channel>
<channel nr="3" name="Vasantham" EPGID="882624369393669" flags="24" ID="3713217903002255365">
<tuner tnrtype="2" group="0" flags="24" freq="554000" symb="0" LOF="0" PMT="500" satmod="132" AVformat="18" FEC="0" pol="2" OrbPos="5000" Tone="0" EPGFlag="0" DiSEqCVal="0" DiSEqC="0" alang="TAM" APID="530" VPID="520" TSID="2" TelePID="0" NID="8894" SID="5" PCRPID="520"/>
</channel>
<channel nr="4" name="CNA" EPGID="882624369524752" flags="24" ID="3713217911598809104">
<tuner tnrtype="2" group="0" flags="24" freq="570000" symb="0" LOF="0" PMT="600" satmod="132" AVformat="18" FEC="0" pol="2" OrbPos="5000" Tone="0" EPGFlag="0" DiSEqCVal="0" DiSEqC="0" alang="eng" APID="631" VPID="620" TSID="4" TelePID="0" NID="8894" SID="16" PCRPID="620"/>
</channel>
<channel nr="5" name="Channel U" EPGID="882624369524753" flags="24" ID="3713217911605297169">
<tuner tnrtype="2" group="0" flags="24" freq="570000" symb="0" LOF="0" PMT="700" satmod="132" AVformat="18" FEC="0" pol="2" OrbPos="5000" Tone="0" EPGFlag="0" DiSEqCVal="0" DiSEqC="0" alang="zho" APID="730" VPID="720" TSID="4" TelePID="0" NID="8894" SID="17" PCRPID="720"/>
</channel>
<channel nr="6" name="okto (HD)" EPGID="882624369524754" flags="24" ID="3713217911611850770">
<tuner tnrtype="2" group="0" flags="24" freq="570000" symb="0" LOF="0" PMT="800" satmod="132" AVformat="18" FEC="0" pol="2" OrbPos="5000" Tone="0" EPGFlag="0" DiSEqCVal="0" DiSEqC="0" alang="eng" APID="830" VPID="820" TSID="4" TelePID="0" NID="8894" SID="18" PCRPID="820"/>
</channel>
</group>
</root>
</channels>

 

Link to comment
  • 2 weeks later...
  • 2 months later...

Hi/

I added more sources to the XMLTV app (https://pctuner.club/forum/q/9228), which combines them into 1 file and XEPG stopped working.

 

Processing: C:\Program Files (x86)\DVBViewer\xmltv.xml
XMLTV reader Engine: EasyXML SAX
xml version="1.0" encoding="utf-8"

-- Fatal Error on line: 1488480, col: 21
Unexpected EOF


ERROR TYPE: File is not a legal XML file
Contact your XMLTV provider to correct the error

EXCEPTION MESSAGE---XepgException:Process Aborted
Error on Analyzing files
ERROR: File is not a legal XML file
Contact your XMLTV provider to correct the error

 

Maybe it is, because the file is 984 Mb now

Link to comment

I checked the xml-file in JEdit (Ubuntu).

Opened in 3 seconds. no errors on line: 1488480, the whole file is correct.

Seems to be a problem of Windows.

Too bad that good apps are written for OSes for housewives.

Why not do it on server OSes like Linux?...

Link to comment
19 hours ago, Delphi said:

 Why?

Xepg can process multiple files. Try to to add the files separately to Xepg.

 

The xmltv Russian app above lets me see program of each channel before loading to DVBViewer.

image.thumb.png.e3d6736974d1e07a6ae7ef436713bcc5.png

Very often a channel is in the list, but it has no program.

In your case I add it without knowing about the program for it.

If the channel is "blank", I have to search for another with the same or seems-to-be-like-this name again without information about the program/

With my 8K channels and 2-5 variants for each it is a pain in the ass.

 

NB

I splitted 1 file to 2.

Now I have strange numeric names with mappings.

image.thumb.png.71a1b4dc005df78a14e3323a303439db.png

Why don't aotomatically delete mappings for not existing channels in xmltv sources?

Edited by bounguine
Link to comment
On 12/28/2019 at 6:52 PM, bounguine said:

I splitted 1 file to 2

 

How? xml files are not just text files should be treated with care.

 

On 12/28/2019 at 6:52 PM, bounguine said:

Now I have strange numeric names with mappings

 

Probably some <channel> nodes are missing in the file.

 

A channel pairing in Xepg consists of a pair (xmltvid, epgid). The xmltvid is defined in the xmltv file in a <channel> node. the epgid is defined in the DVBViewer channel list for each channel.

Channel pairings, stored in Pairings.xml are assumed static and should only be changed if the are new xmltv channels (e.g. you get a new xmltv provider) or your DVBViewer channel list has changed. If you automate the process (Xepg > Automate > Help) you will get the epg automatically every day without doing anything.

 

On 12/28/2019 at 6:52 PM, bounguine said:

Why don't aotomatically delete mappings for not existing channels in xmltv sources?

 

Would be a very bad idea: Even for stable xmltv providers it can happen that the epg for a channel is temporarily empty. You probably will want the epg when it gets back.

 

On 12/28/2019 at 6:52 PM, bounguine said:

If the channel is "blank", I have to search for another with the same or seems-to-be-like-this name again without information about the program/

With my 8K channels and 2-5 variants for each it is a pain in the ass.

 

Not the fault of Xepg, blaim your xmltv provider.

 

On 12/27/2019 at 7:18 PM, bounguine said:

Maybe it is, because the file is 984 Mb now

 

It is not windows that processes the file, it is either EasyXml or OXml. Links to those tools in the Xepg About Box.

The correct term to for a valid xml file is: well-formed (Google).

 

Since one of the parsers (EasyXml/OXml) produces an error message, I suspect the the file is not well-formed.

 

Please try to process the file using both  parsers and post the result here. Select in the XMLTV Job Editor and chose Test Import in Xepg main window.

 

P.S. The biggest xmltv file I have seen so far is 250 Mb. At least in theory, a 984 Mb file should not be a problem

 

Edited by Delphi
Link to comment
20 hours ago, Delphi said:
Quote

How? xml files are not just text files should be treated with care...  Probably some <channel> nodes are missing in the file.

 

 

I will explain.

In the Russian app I have about 10 inbuilt sources and 5 extra sources I download by script as xmltv-files.

The app joins the 15 sources into 1 file and exports it for your app.

The resulting file is too (???) big

So I exluded 1 of 5 extra sources and now your app has 1 joined file generated by the Russian app and 1 extra file to work with.

After this the mappings made for channels from 1 excluded extra file when it was worked by the Russian app were corrupted.

 

Quote

Since one of the parsers (EasyXml/OXml) produces an error message, I suspect the the file is not well-formed.

The files is correct I suspect.

I checked the line marked by your app as corrupted and more lines before and after it, but they are valid

Link to comment
On 12/30/2019 at 11:10 PM, Delphi said:

 

Please try to process the file using both  parsers and post the result here. Select in the XMLTV Job Editor and chose Test Import in Xepg main window

 

I can't help you if you don't follow my instructions.

Additionally also test the OXml parser with "Strict Xml" unchecked. Post the error message  in each case, if any.

Link to comment

Hello, I just did a frexh install of Windows along with the latest version of Xepg (0.7.4.2) and the latest DVBViewer (6.1.5.2).

When I try to setup Xepg and point it to my DVBViewer install it gives me the error

"The DVBViewer version is too old"

It was working fine on my old install. Do you have any ideas what I can do to fix this?

 

xepg.jpg

Link to comment

The code where the error happens is:

 

  if not (GetActiveObject(CLASS_DVBViewer, nil, Unknown) = MK_E_UNAVAILABLE) then
    Unknown.QueryInterface(IID_IDVBViewer2, DVBViewer); // get IDVBViewer2 Interface
  if Not Assigned(DVBViewer) then
  begin
    MessageDlg('The DVBViewer version is too old', mtError, [mbOK], 0);
    DVBViewerFileName := OldFileName;
    Exit;
  end;

 

Xepg fails to get the IDVBViewer2 COM interface which doesn't exist in older versions of DVBViewer. DVBViewer registers its COM interface with windows on install, so you could try to reinstall DVBViewer.

Link to comment
On 1/19/2020 at 10:40 AM, Delphi said:

The code where the error happens is:

 


  if not (GetActiveObject(CLASS_DVBViewer, nil, Unknown) = MK_E_UNAVAILABLE) then
    Unknown.QueryInterface(IID_IDVBViewer2, DVBViewer); // get IDVBViewer2 Interface
  if Not Assigned(DVBViewer) then
  begin
    MessageDlg('The DVBViewer version is too old', mtError, [mbOK], 0);
    DVBViewerFileName := OldFileName;
    Exit;
  end;

 

Xepg fails to get the IDVBViewer2 COM interface which doesn't exist in older versions of DVBViewer. DVBViewer registers its COM interface with windows on install, so you could try to reinstall DVBViewer.

 

Sorry for the late reply I got it working by running it elevated as admin.

Thanks again for your excellent tool.

Link to comment
12 hours ago, hse said:

I got it working by running it elevated as admin

 

Xepg normally does not need elevation to run properly, neither does DVBViewer. I think there is something wrong with your installation(s). The error you reported has never been reported before.

 

P.S. Please don't quote whole posts.

Edited by Delphi
Link to comment
  • 3 weeks later...

Ich habe von gestern auf heute von dvblink auf DVBViewer umgestellt da mir die Sache mit dem EPG in dvblink zu bunt wurde bzw. die Genres & Farben NICHT funktionierten, egal wo ich geschraubt habe.

DVBViewer läuft jetzt und auch das xmltv-EPG bekomme ich soweit zufriedenstellen ins KODI.

EPG-Import sieht folgendermaßen aus: EPG für meine Sender per webgrab++ holen -> rating- & genremapper drüber bügeln -> mit Xepg in den DVBViewer stopfen = funktioniert und endlich sind alle Genres & Farben richtig im EPG

Da ja im xmltv die links für die Vorschaubilder enthalten sind und diese über dvblink auch angezeigt wurden, meine Frage ob dies auch über Xepg und DVBViewer machbar ist.

Link to comment
  • 2 weeks later...
On 10/4/2019 at 9:54 AM, Delphi said:

 

Added support for https downloads of xmltv files.

 

Sorry for the (maybe stupid) question: where am I supposed to put the http link ot the tvguide.xml file?

Are compressed format (like .gzip or .xz) supported?

If I create a "grab then import" job, will the import process wait until the xml file (about 90 mbytes) has been downloaded from the web? Or will I need to set a timeout some way?

Thanks in advance for the explaination.

Link to comment
2 hours ago, Hunter77 said:

Sorry for the (maybe stupid) question: where am I supposed to put the http link ot the tvguide.xml file?

 

 Xepg > Add > Grabber executable/URL:

 

2 hours ago, Hunter77 said:

Are compressed format (like .gzip or .xz) supported?

 

No, currently not. You will have to create a script (e.g. .bat, .vbs) that downloads (e.g. curl, wget  ) the file then uncompresses it (e.g. 7zip). Use the script file as grabber executable.

 

2 hours ago, Hunter77 said:

If I create a "grab then import" job, will the import process wait until the xml file (about 90 mbytes) has been downloaded from the web?

 

Yes.

 

2 hours ago, Hunter77 said:

Or will I need to set a timeout some way?

 

No.

Link to comment

Hello, Is there anyway to move the Episode Name (sub-title?) into the event info? for example in the image below. It displays Showname and S##E## in the Event column and then the Episode Name in the Title column so "Cheers S01E03" "The Tortelli Tort" would become "Cheers S01E03 The Tortelli Tort" also is there anyway to replace all spaces in the Title with .'s so my recordings will not have spaces in the filename? e.g "Cheers.S01E01.The.Tortelli.Tort.ts"

Thanks

 

https://i.imgur.com/kA38cyw.png

Link to comment

There is some confusion concerning what Title, Event and sub-title means. To make things even worse, Title and Event are switched in the DVBViewer windowed epg window. 

@Griga suggested the term SubHeader for sub-title (xmltv) and Event (DVBViewer/DMS in most places).  Let's use that.

 

14 hours ago, hse said:

Hello, Is there anyway to move the Episode Name (sub-title?) into the event info?

 

If you mean moving the SubHeader to the Title, the answer is no. If you want to record series

 

Title=Cheers S01E03

SubHeader=The Tortelli Tort

 

is a perfect format for a one click series recording. In that context the SubHeader should NOT be moved to the Title.

 

14 hours ago, hse said:

is there anyway to replace all spaces in the Title with .'s so my recordings will not have spaces in the filename? e.g "Cheers.S01E01.The.Tortelli.Tort.ts"

 

No. Note  that the DVBViewer/DMS replaces illegal filename characters like <>:"/\|?* with a space in file names.

Edited by Delphi
Link to comment
  • 2 months later...
On 12/28/2019 at 1:41 AM, Delphi said:

 Why?

Xepg can process multiple files. Try to to add the files separately to Xepg.

 

Hi.

I decided not to merge different sources in the app I wrote above and then export 1 large xmltv file for XEPG.

Now I have 4 xmltv files in XEPG.

But I see that during import, when mapping, XEPG looses most channels.

Hre's just 1 source:

 

 

 

xepg.gif

Edited by bounguine
Link to comment
19 hours ago, bounguine said:

But I see that during import, when mapping, XEPG looses most channels.

 

I assume you mean that you don't see them when doing a channel pairing. Or?

 

The ids must be unique across all 4 files. If you have <channel id="711"> for other than <display-name lang="ru">2x2 (HTB)</display-name> then there is a problem.

 

Edited by Delphi
Link to comment

You mean if channel A in source 1 has id 1 and channel B in source 2 also has id 1, this will be a problem?

For me this will always cause interference, as in most cases ids start with 1.

Why not use comlex id "source_number_channel_id_in_source".

Now I miss hundreds of channels

Link to comment
1 hour ago, bounguine said:

You mean if channel A in source 1 has id 1 and channel B in source 2 also has id 1, this will be a problem?

 

Yes. The id is an identifier and can't be reused in any other context.

 

1 hour ago, bounguine said:

For me this will always cause interference, as in most cases ids start with 1

 

A terribel way to create identifiers ... just doing an enumeration. Many xmltv providers use the display-name, country, site name,... to create identifiers (they don't need to be numbers), e.g. 2x2 (HTB).ru.sitename. If there are more than one channel with display-name 2x2 (HTB) they MUST have different ids.

 

1 hour ago, bounguine said:

Why not use comlex id "source_number_channel_id_in_source".

 

I will never do such a thing.

 

It's your xmltv provider doing bad things. I think you should contact your provider and complain. Furthermore, earlier you shipped me some xmltv files, they don't pass the xmltv validation using the official xmltv.exe. Complain about that too.

Link to comment

All my files have same names and all ids start with 1.

Nothing can be done, but ask you to slightly change the code in your app

 

I'm sure you will aggree that, if XMLTV format has no strict naming convension for files and ids, providers can do whatever they want.

And if I shall ask them to change something, it will not be a reason.

They will answer that interference is the fault of XEPG's author.

 

Edited by bounguine
Link to comment
1 hour ago, bounguine said:

Nothing can be done, but ask you to slightly change the code in your app

 

Cannot be done by a minor code change.

 

1 hour ago, bounguine said:

I'm sure you will aggree that, if XMLTV format has no strict naming convension for files and ids, providers can do whatever they want

 

In general an identifier MUST be unique.

 

1 hour ago, bounguine said:

They will answer that interference is the fault of XEPG's author

 

IMO it is their files that are are bad. Also for the following reason: If you decide not to download certain channels then many ids will change and you should then do a new channel pairing.

Link to comment

"Cannot be done by a minor code change."

I understand this. I work in IT sphere.

 

"In general an identifier MUST be unique."

Yes, in your app. And I proposed concatination.

I cannot force provider 1 to cooperate with provider 2 and 3.

Inside their files id is unique.

If you would say that using channel names is better, I would answer "no". No uniquness possible having > 1 source.

So, uniqueness is a matter of application like yours.

 

"IMO it is their files that are are bad."

They are good indeed.

All according to XMLTV standard. They no nothing about XEPG.

But, sorry, merging them far from being perfect in XEPG.

Your app can work correctly only with 1 source

 

Edited by bounguine
Link to comment

Well behaved xmltv providers often has the company name as part of the id, e.g.  

id="2145.honeybee.it"

id="1484.honeybee.it"

in order to not conflict with other providers. The numbers here are fixed for the channels, they are not created by a simple enumeration when the file is created (a terrible way to do this!).

 

Xepg can process multiple files in all other cases than yours. One thing is what is standard, another thing is what is useful and good style.

 

Link to comment

Opps.

Any app must differentiate between 2+ sources using complex keys, if there is at least 1% possibility that items inside them may have same keys/ids.

I proposed source number (not source name) + inside id. Anyway there are lots of workarounds.

This is a must in IT.

You didn't this.

So, now I must say your app cannot operate correctly with 2+ sources.

And this is a bug.

You cannot oblige those, who release xmltv sources strongly according to specs, to make what Delphi wants only because for you bug resolving "cannot be done by a minor code change" 

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...