Bug 364860 - Program Guide is empty
Summary: Program Guide is empty
Status: RESOLVED FIXED
Alias: None
Product: kaffeine
Classification: Applications
Component: general (show other bugs)
Version: 2.0.1
Platform: Mint (Ubuntu based) Linux
: NOR major
Target Milestone: ---
Assignee: Mauro Carvalho Chehab
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-06-28 15:07 UTC by Rolf Pedersen
Modified: 2018-06-08 17:48 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
output when kaffeine started in konsole (30.06 KB, text/plain)
2016-06-28 15:33 UTC, Rolf Pedersen
Details
attachment-29788-0.html (2.26 KB, text/html)
2018-06-08 17:48 UTC, jim
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Rolf Pedersen 2016-06-28 15:07:27 UTC
The current Archlinux version I use is 2.0.3-1 and I've tried with recent builds of git://anongit.kde.org/kaffeine.git 

Whereas Program Guide worked well for some years with my hardware, it's empty in kaffeine 2.

Reproducible: Always

Steps to Reproduce:
1. Open kaffeine to the digital tv module.
2. Play a channel, or many channels, all of which used to display EPG data in Program Guide
3. Open guide from menu bar: Television -> Program Guide

Actual Results:  
Program guide is empty.

Expected Results:  
The Program Guide was always populated with program information for the channels I had played (those who provided EPG data, virtually all that I tune).

The Program Guide has worked for me for several years with the same hardware in kaffeine, up to kaffeine-1.2.2-6.mga5 in Mageia 5, currently.

Tuner is Hauppauge HVR-2250 dual tuner pci-e card receiving ATSC OTA signal from an outdoor antenna.

Optionally, I can use my HDHomeRun HDTC-2US tuner and the latest kaffeine has the same limited functionality.

Mauro asked for a minute of recording but I can't figure out how to use dvbv5-zap.  In case a recording made from the kaffeine gui can be used, I put one on google drive:

https://drive.google.com/open?id=0B8GNdkp3znc2WDYxOEVPSWRETk0

[rolf@p8z68 recordings]$ md5sum 002-1\ KTVU-HD-071124.m2t 
ef510b1803178b3089838ab01c68a2a5  002-1 KTVU-HD-071124.m2t

Thanks.
Comment 1 Rolf Pedersen 2016-06-28 15:33:06 UTC
Created attachment 99739 [details]
output when kaffeine started in konsole

I've noticed some messages about DvbEpgModel related to kaffeine and a few seconds of running kaffeine from konsole shows many.
Comment 2 Mauro Carvalho Chehab 2016-06-28 19:11:40 UTC
(In reply to Rolf Pedersen from comment #0)
> The current Archlinux version I use is 2.0.3-1 and I've tried with recent
> builds of git://anongit.kde.org/kaffeine.git 
> 
> Whereas Program Guide worked well for some years with my hardware, it's
> empty in kaffeine 2.
> 
> Reproducible: Always
> 
> Steps to Reproduce:
> 1. Open kaffeine to the digital tv module.
> 2. Play a channel, or many channels, all of which used to display EPG data
> in Program Guide
> 3. Open guide from menu bar: Television -> Program Guide
> 
> Actual Results:  
> Program guide is empty.
> 
> Expected Results:  
> The Program Guide was always populated with program information for the
> channels I had played (those who provided EPG data, virtually all that I
> tune).
> 
> The Program Guide has worked for me for several years with the same hardware
> in kaffeine, up to kaffeine-1.2.2-6.mga5 in Mageia 5, currently.
> 
> Tuner is Hauppauge HVR-2250 dual tuner pci-e card receiving ATSC OTA signal
> from an outdoor antenna.
> 
> Optionally, I can use my HDHomeRun HDTC-2US tuner and the latest kaffeine
> has the same limited functionality.
> 
> Mauro asked for a minute of recording but I can't figure out how to use
> dvbv5-zap.  In case a recording made from the kaffeine gui can be used, I
> put one on google drive:
> 
> https://drive.google.com/open?id=0B8GNdkp3znc2WDYxOEVPSWRETk0
> 
> [rolf@p8z68 recordings]$ md5sum 002-1\ KTVU-HD-071124.m2t 
> ef510b1803178b3089838ab01c68a2a5  002-1 KTVU-HD-071124.m2t

Unfortunately, recording using Kaffeine won't work, as it will filter just the program IDs that are associated with the service ID that you're watching (e. g. video and audio streams only).

Feel free to ping me at #linuxtv channel at freenode.net. Maybe I can help you to record using dvbv5-zap.
Comment 3 Mauro Carvalho Chehab 2016-06-29 00:11:35 UTC
I was able to find some bugs at the MGT and EIT parsing. Those are fixed at the git tree. However, the only streams I had to test are some old records I made in 2014 in South Korea. The EPG entries are all expired, so I had to hack the code to display, as the code checks if the entries are expired before inserting. It also flushes the old entries that got expired, making hard to debug.

It would be really helpful to get a recent stream. Anyway, please test the upstream git tree, as this bug should have been fixed there.
Comment 4 Mauro Carvalho Chehab 2016-06-29 00:15:34 UTC
Fixed on this changeset and on the subsequent ones:

http://quickgit.kde.org/?p=kaffeine.git&a=commit&h=0ecdac74596755c1645da9acdb27e29e33be0d99
Comment 5 Rolf Pedersen 2016-06-29 03:33:27 UTC
(In reply to Mauro Carvalho Chehab from comment #3)
> I was able to find some bugs at the MGT and EIT parsing. Those are fixed at
> the git tree. However, the only streams I had to test are some old records I
> made in 2014 in South Korea. The EPG entries are all expired, so I had to
> hack the code to display, as the code checks if the entries are expired
> before inserting. It also flushes the old entries that got expired, making
> hard to debug.
> 
> It would be really helpful to get a recent stream. Anyway, please test the
> upstream git tree, as this bug should have been fixed there.

I've been at work all day.  When I got home, I cloned and built from git://anongit.kde.org/kaffeine
If I got the right thing, it's worse than before, for me.  After a channel scan, most are listed like:

Channel  Number
#0 321:6  27
#0 377:5  26

Some are listed like:
    Channel                                  Number
026-1  26 San Francisco, CA      4

which is the old style but only a couple channels display info in Program Guide and they have this form in the list, afaict.

I did blunder onto a productive dvbv5-scan command:

  dvbv5-scan -O ZAP -C US -I channel us-ATSC-center-frequencies-8VSB

which gave me dvb-channel.conf

then

dvbv5-zap -c dvb_channel.conf -I ZAP -t 60 -o atsc.m2t KTVU-HD

so it worked when channel, not frequency, was given.

For some reason, files created like this won't play for me in my default vlc, nor kaffeine.  They play in smplayer.

Here is one from dvbv5-zap:  https://drive.google.com/open?id=0B8GNdkp3znc2U1pZRkxwaEIwM0E

[rolf@p8z68 arch]$ md5sum atsc1.m2t 
b2458ed54c46616e28fb5d9b2099393c  atsc1.m2t

Please, give it a look, as the latest kaffeine I can find from git is unworkable.  Now, I can't even manually schedule a recording as the channels are not identifiable, many are not tuned.
FWIW, here's the clean-looking content of the ZAP dvb_channel.conf with nearly all my tunable channels present:

KNTV HD:207028615:8VSB:49:52:3
COZI-TV:207028615:8VSB:65:68:4
KSTS HD:207028615:8VSB:81:84:5
KCBA-DT:213028615:8VSB:49:52:3
KOFY-HD:503028615:8VSB:49:52:3
MeTV-SD:503028615:8VSB:81:84:5
VIETTV:503028615:8VSB:97:100:6
ThisTV:503028615:8VSB:113:116:7
KQET-HD:539028615:8VSB:49:51:1
KQED+:539028615:8VSB:65:67:2
V-me:539028615:8VSB:81:83:3
KTSF-D1:551028615:8VSB:49:52:3
KTSF-D2:551028615:8VSB:65:68:4
KTSF-D3:551028615:8VSB:81:84:5
KTSF-D5:551028615:8VSB:113:116:7
KTSF-D6:551028615:8VSB:129:132:8
KFTL-CD:557028615:8VSB:97:100:1
HSN:557028615:8VSB:65:69:2
CMC-TV:557028615:8VSB:49:52:3
KPIX-TV:563028615:8VSB:49:52:1
Decades:563028615:8VSB:65:68:2
KQED-HD:569028615:8VSB:49:51:1
KQED+:569028615:8VSB:65:67:2
WORLD:569028615:8VSB:81:83:3
KEMO-HD:581028615:8VSB:49:52:3
QVC-OTA:581028615:8VSB:65:68:4
QVCPLUS:581028615:8VSB:81:84:5
EVINE:581028615:8VSB:97:100:6
KMTP-DT:587028615:8VSB:49:52:3
WorldCh:587028615:8VSB:65:68:4
WTV:587028615:8VSB:81:84:5
NTD:587028615:8VSB:97:100:6
KPOP:587028615:8VSB:113:116:7
KFSF-HD:593028615:8VSB:49:52:1
KDTV-HD:593028615:8VSB:65:68:2
Bounce :593028615:8VSB:81:84:3
Grit   :593028615:8VSB:97:100:4
KICU-HD:605028615:8VSB:49:52:3
KICU-SD:605028615:8VSB:65:68:4
KICUSD2:605028615:8VSB:81:84:5
KICUSD3:605028615:8VSB:97:100:6
KRON-HD:617028615:8VSB:65:68:4
SKYLINK:617028615:8VSB:49:52:3
GET TV:617028615:8VSB:81:84:5
MMAX:623028615:8VSB:49:52:1
Sino TV:623028615:8VSB:65:68:2
KTNC:623028615:8VSB:81:84:3
Comet:623028615:8VSB:97:100:4
NTD:623028615:8VSB:113:116:5
Works:623028615:8VSB:129:132:6
ION:635028615:8VSB:49:52:3
qubo:635028615:8VSB:65:68:4
IONLife:635028615:8VSB:81:84:5
Shop:635028615:8VSB:97:100:6
HSN:635028615:8VSB:113:116:7
QVC:635028615:8VSB:129:132:8
KCSM:647028615:8VSB:49:52:3
KCSMF24:647028615:8VSB:65:68:4
Jazz-TV:647028615:8VSB:81:84:5
KTVU-HD:653028615:8VSB:49:52:3
LATV:653028615:8VSB:65:68:4
Movies!:653028615:8VSB:81:84:5
Buzzr:653028615:8VSB:97:100:6
KBCW-DT:659028615:8VSB:49:52:1
KQED+:689028615:8VSB:49:51:1
KQED:689028615:8VSB:65:67:2
LIFE:689028615:8VSB:81:83:3
KIDS:689028615:8VSB:97:99:4
V-me:689028615:8VSB:113:115:5
KDTV-HD:695028615:8VSB:49:52:1
KFSF-HD:695028615:8VSB:65:68:2
getTV  :695028615:8VSB:81:84:3
Escape :695028615:8VSB:97:100:4

Thanks.
Comment 6 Mauro Carvalho Chehab 2016-06-29 08:21:18 UTC
(In reply to Rolf Pedersen from comment #5)
> (In reply to Mauro Carvalho Chehab from comment #3)

> I've been at work all day.  When I got home, I cloned and built from
> git://anongit.kde.org/kaffeine
> If I got the right thing, it's worse than before, for me.  After a channel
> scan, most are listed like:
> 
> Channel  Number
> #0 321:6  27
> #0 377:5  26
> 
> Some are listed like:
>     Channel                                  Number
> 026-1  26 San Francisco, CA      4

That is an unrelated problem. Channel names are stored at the VCT table, with is handled on a different part of the Kaffeine's code.

> I did blunder onto a productive dvbv5-scan command:
> 
>   dvbv5-scan -O ZAP -C US -I channel us-ATSC-center-frequencies-8VSB
> 
> which gave me dvb-channel.conf
> 
> then
> 
> dvbv5-zap -c dvb_channel.conf -I ZAP -t 60 -o atsc.m2t KTVU-HD
> 
> so it worked when channel, not frequency, was given.

Ah, there's one parameter missing there: "-P". (or " --all-pids"). When this parameter is used, dvbv5-zap records the full content of the stream and accepts both frequency or channel. So, it can work with the frequency tables file directly.

So, please take another record with:
    dvbv5-zap -c dvb_channel.conf -I ZAP -t 60 -o atsc.m2t -P KTVU-HD
or:
    dvbv5-zap -I channel -c us-ATSC-center-frequencies-8VSB -t 60 -o atsc.m2t -P 653028615

(if you're using the channel file with the legacy formats)

> FWIW, here's the clean-looking content of the ZAP dvb_channel.conf with
> nearly all my tunable channels present:

Thanks! I'll use it to compare it with the VCT parser at Kaffeine once you make me available the all-pids record.
Comment 7 Rolf Pedersen 2016-06-29 11:59:50 UTC
This one plays in vlc:

https://drive.google.com/open?id=0B8GNdkp3znc2Q3g4eDJOdEV1dGM

[rolf@z170i arch]$ dvbv5-zap -c dvb_channel.conf -I ZAP -t 60 -o atsc2.m2t -P KTVU-HD

[rolf@z170i arch]$ md5sum atsc2.m2t 
d943c767c2cbb616c959620c264e7ee7  atsc2.m2t

Thanks.
Comment 8 Mauro Carvalho Chehab 2016-06-29 14:50:58 UTC
(In reply to Rolf Pedersen from comment #7)
> This one plays in vlc:
> 
> https://drive.google.com/open?id=0B8GNdkp3znc2Q3g4eDJOdEV1dGM

Thanks! That one worked fine. I was able to detect and fix the remaining bugs. There was indeed a regression at the VCT table parsing, with were causing troubles at the channel naming.

Now, it finds all channels at the transponder:

29-06-16 11:48:38.555 [Debug   ] src/dvb/dvbscan.cpp#688: void DvbScan::processPat(const DvbPatSection&): New PAT entry: pid 48, program 3
29-06-16 11:48:38.555 [Debug   ] src/dvb/dvbscan.cpp#688: void DvbScan::processPat(const DvbPatSection&): New PAT entry: pid 64, program 4
29-06-16 11:48:38.555 [Debug   ] src/dvb/dvbscan.cpp#688: void DvbScan::processPat(const DvbPatSection&): New PAT entry: pid 80, program 5
29-06-16 11:48:38.555 [Debug   ] src/dvb/dvbscan.cpp#688: void DvbScan::processPat(const DvbPatSection&): New PAT entry: pid 96, program 6
29-06-16 11:48:38.574 [Debug   ] src/dvb/dvbscan.cpp#801: void DvbScan::processVct(const AtscVctSection&): New SDT entry: name 002-1 KTVU-HD
29-06-16 11:48:38.574 [Debug   ] src/dvb/dvbscan.cpp#801: void DvbScan::processVct(const AtscVctSection&): New SDT entry: name 002-2 LATV
29-06-16 11:48:38.574 [Debug   ] src/dvb/dvbscan.cpp#801: void DvbScan::processVct(const AtscVctSection&): New SDT entry: name 002-3 Movies!
29-06-16 11:48:38.574 [Debug   ] src/dvb/dvbscan.cpp#801: void DvbScan::processVct(const AtscVctSection&): New SDT entry: name 002-4 Buzzr
29-06-16 11:48:38.671 [Debug   ] src/dvb/dvbscan.cpp#728: void DvbScan::processPmt(const DvbPmtSection&, int): New channel: PID 48, service ID 3
29-06-16 11:48:38.671 [Debug   ] src/dvb/dvbscan.cpp#728: void DvbScan::processPmt(const DvbPmtSection&, int): New channel: PID 64, service ID 4
29-06-16 11:48:38.671 [Debug   ] src/dvb/dvbscan.cpp#728: void DvbScan::processPmt(const DvbPmtSection&, int): New channel: PID 80, service ID 5
29-06-16 11:48:38.671 [Debug   ] src/dvb/dvbscan.cpp#728: void DvbScan::processPmt(const DvbPmtSection&, int): New channel: PID 96, service ID 6
29-06-16 11:48:38.673 [Debug   ] src/dvb/dvbscan.cpp#608: void DvbScan::updateState(): Found channel 002-1 KTVU-HD
29-06-16 11:48:38.673 [Debug   ] src/dvb/dvbscan.cpp#608: void DvbScan::updateState(): Found channel 002-2 LATV
29-06-16 11:48:38.673 [Debug   ] src/dvb/dvbscan.cpp#608: void DvbScan::updateState(): Found channel 002-3 Movies!
29-06-16 11:48:38.673 [Debug   ] src/dvb/dvbscan.cpp#608: void DvbScan::updateState(): Found channel 002-4 Buzzr

And their EIT entries are properly addressed. Please test with latest upstream.

The patch that fixed the regression is this one:
http://quickgit.kde.org/?p=kaffeine.git&a=commit&h=2d932598a8b0
Comment 9 Rolf Pedersen 2016-06-29 16:01:36 UTC
Good job!

Can I install the git build to /home or somewhere on my Archlinux installation, including separate configuration files, e.g. with same function but not touching ~/.local/share/kaffeine/*?

I am missing my desired recordings switching back and forth from testing to the mostly working kaffeine 2.0.3-1 and would like to have parallel installations with separate functionality. 

I will have time for this after work, today.

Thanks.
Comment 10 Rolf Pedersen 2016-06-30 00:35:00 UTC
I don't know if this is best practice but I did a pull, cmake, and make.  Then, I start kaffeine from the src/ directory without installing.  That seemed to pick up my legacy working configuration, including custom scanfile.dvb.  

Beautiful!  After a scan, the channels are all described perfectly and, after playing, EPG program information is displayed in the Program Guide, up to Saturday afternoon on Channel 2.  I can record from the Program Guide.  Currently, I am recording on both tuners at the same time different programs to separate files on the NAS.  

To be sure, I uninstalled Archlinux kaffeine-2.0.3-1 and did make install.  Everything remains configured and working well.  I'm making two recordings of different channels at the same time.  Looks like a winner!

Thanks very much.
Comment 11 Mauro Carvalho Chehab 2016-06-30 01:28:08 UTC
(In reply to Rolf Pedersen from comment #10)
> I don't know if this is best practice but I did a pull, cmake, and make. 
> Then, I start kaffeine from the src/ directory without installing.  That
> seemed to pick up my legacy working configuration, including custom
> scanfile.dvb.  

Yes, you can do that. I use to do the above procedure myself while developing patches for it.

> Beautiful!  After a scan, the channels are all described perfectly and,
> after playing, EPG program information is displayed in the Program Guide, up
> to Saturday afternoon on Channel 2.  I can record from the Program Guide. 
> Currently, I am recording on both tuners at the same time different programs
> to separate files on the NAS.  
> 
> To be sure, I uninstalled Archlinux kaffeine-2.0.3-1 and did make install. 
> Everything remains configured and working well.  I'm making two recordings
> of different channels at the same time.  Looks like a winner!

Great! Btw, I should be releasing a version 2.0.4 likely tomorrow. I guess it won't take much time for it to be available on Archlinux.

> Thanks very much.

Anytime!
Comment 12 jim 2018-06-06 15:59:20 UTC
guide worked fine on mint 17-18.3 but not on mint 19 (beta)
Comment 13 jim 2018-06-08 16:56:16 UTC
(using mint 19 Cinnamon) , subtitles work GREAT, but can't record or get program information on program guide, can only record from the instant record. No problems with gude on 17-18.3 mint

Thanks
Comment 14 Mauro Carvalho Chehab 2018-06-08 17:24:13 UTC
(In reply to jim from comment #13)
> (using mint 19 Cinnamon) , subtitles work GREAT, but can't record or get
> program information on program guide, can only record from the instant
> record. No problems with gude on 17-18.3 mint
> 
> Thanks

That's probably the same bug as reported here:

    https://bugs.kde.org/show_bug.cgi?id=388962

Kaffeine 2.0.13 and 2.0.14 has troubles with ATSC program guides. Kaffeine 2.0.15 fixes it.
Comment 15 jim 2018-06-08 17:48:54 UTC
Created attachment 113152 [details]
attachment-29788-0.html

 It's now working, since I got the update,
Love the subtitles also!
Thanks

    On Friday, June 8, 2018, 12:24:16 PM CDT, Mauro Carvalho Chehab <bugzilla_noreply@kde.org> wrote:  
 
 https://bugs.kde.org/show_bug.cgi?id=364860

--- Comment #14 from Mauro Carvalho Chehab <mchehab+samsung@kernel.org> ---
(In reply to jim from comment #13)
> (using mint 19 Cinnamon) , subtitles work GREAT, but can't record or get
> program information on program guide, can only record from the instant
> record. No problems with gude on 17-18.3 mint
> 
> Thanks

That's probably the same bug as reported here:

    https://bugs.kde.org/show_bug.cgi?id=388962

Kaffeine 2.0.13 and 2.0.14 has troubles with ATSC program guides. Kaffeine
2.0.15 fixes it.