<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to bugs</title><link>https://sourceforge.net/p/zapping/bugs/</link><description>Recent changes to bugs</description><atom:link href="https://sourceforge.net/p/zapping/bugs/feed.rss" rel="self"/><language>en</language><lastBuildDate>Wed, 30 Oct 2019 11:21:45 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/zapping/bugs/feed.rss" rel="self" type="application/rss+xml"/><item><title>Access to C4 Erase Page flag</title><link>https://sourceforge.net/p/zapping/bugs/204/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hello VBI Team.&lt;/p&gt;
&lt;p&gt;I hope this library is still somewhat active and that someone is out there.&lt;/p&gt;
&lt;p&gt;I am trying to determine whenever a CAPTION CLEAR COMMAND event occurs in Australain broadcast streams and am wondering if someone can assist. &lt;/p&gt;
&lt;p&gt;I am referring to the Australian Broadcast standards found at "https://www.freetv.com.au/wp-content/uploads/2019/08/OP-42-Closed-Captioning-Issue-5-May-2018.pdf"&lt;/p&gt;
&lt;p&gt;Note the relevant section on the first page:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;CAPTION CLEAR COMMAND&lt;br/&gt;
A Command to clear any existing caption shall be included in the first two (2) seconds of&lt;br/&gt;
a program. A Command to clear shall also be included two (2) seconds before the end&lt;br/&gt;
of a program.&lt;br/&gt;
A command to clear any existing caption shall be included in the first half (0.5) second of&lt;br/&gt;
a commercial. Where closed caption data is included, the caption information should&lt;br/&gt;
commence no earlier than a half (0.5) second after the start of active video and a caption&lt;br/&gt;
erase signal is required (last caption time code out) not later than a half (0.5) second&lt;br/&gt;
before the end of active video. First caption time code in will be at an arbitrary point&lt;br/&gt;
determined by content.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;First of all, I believe I am correct in believing that the "Caption Clear Command" referred to in the above documents is the "C4 Erase Page" flag (Byte 9, bit 8). Is that correct? If not, then I need to find another path.&lt;/p&gt;
&lt;p&gt;So, given that that is correct, my goal was to find when this flag was being set. There appeared to be no direct way served up via the zvbi API as it looked at first that VBI header details are not directly available from within the library. &lt;/p&gt;
&lt;p&gt;But then I noticed some comments in the documentation for the 'VBI_EVENT_TTX_PAGE' event:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;If any of the roll_header, &lt;strong&gt;header_update&lt;/strong&gt; or clock_update flags&lt;/li&gt;
&lt;li&gt;are set &lt;strong&gt;ev.ttx_page.raw_header is a pointer to the raw header data&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;(40 bytes), which remains valid until the event handler returns.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;so I thought all I would need to do is wait until the 'header_update' flag is set and then look at ev.ttx_page.raw_header&lt;span&gt;[8]&lt;/span&gt; and see if the C4_ERASE_PAGE bit is set (the eighth bit I think)&lt;/p&gt;
&lt;p&gt;However, the header_update flag is never set.&lt;/p&gt;
&lt;p&gt;I have also tried working with the vbi_pfc_demux_new() and vbi_pfc_demux_feed_frame() calls to see if I can get a VbiPageFunctionClearCallback method but the callback is never called.&lt;/p&gt;
&lt;p&gt;Further, I only ever get VBI_EVENT_TTX_PAGE events, no matter what I set the vbi_event_handler_register flags to.&lt;/p&gt;
&lt;p&gt;I have had a detailed look at the ffmpeg, vlc and gstreamer code but none of them are going to the level of detail I am after. &lt;/p&gt;
&lt;p&gt;Can someone point me in the correct direction, perhaps with some sample code please?&lt;/p&gt;
&lt;p&gt;Kind regards&lt;/p&gt;
&lt;p&gt;James&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">James D'Arcy</dc:creator><pubDate>Wed, 30 Oct 2019 11:21:45 -0000</pubDate><guid>https://sourceforge.netf69fa83d39ac090083f69c726bb79f76b42a1d10</guid></item><item><title>#203 Handle page termination with same page number</title><link>https://sourceforge.net/p/zapping/bugs/203/?limit=25#667e</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Ah, interesting....I originally thought that there was just a termination with a page header of the same page and that this case was merely not considered by the spec (but it is indeed, as you said). So that this is a corner case where it would make sense to add a workaround to libzvbi.&lt;/p&gt;
&lt;p&gt;But there is no immediate termination; there is only a page header some seconds later with Erase Page set that removes the displayed subtitles. So my attached patch doesn't make sense here. And the transmission clearly doesn't comply to the Teletext spec.&lt;/p&gt;
&lt;p&gt;For me this is something that definitely has to be fixed on broadcaster side. Hence I withdraw my request to fix this issue in libzvbi (as I'm a strong fan of fixing the source of an issue, if possible).&lt;/p&gt;
&lt;p&gt;But I don't know the overall intention of libzvbi: Whether to only accept conform transmissions or to also cope with buggy encoders. So if you want to, you can fix this of course ;-)&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Stefan Pöschel</dc:creator><pubDate>Mon, 23 Oct 2017 09:49:56 -0000</pubDate><guid>https://sourceforge.netdbea00e9719e2dcc43ce200c07efa4dd6cc8450f</guid></item><item><title>#203 Handle page termination with same page number</title><link>https://sourceforge.net/p/zapping/bugs/203/?limit=25#b53e</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Stefan,&lt;/p&gt;
&lt;p&gt;EN 300 706 Annex A.1 recommends to insert a filler/page termination header with page number 0xFF if only a single page is transmitted, to commit the page to memory as well as display subtitles immediately rather than at the reception of the next page header, which may not occur until the subtitles are changing again. The libzbvi decoder recognizes 0xFF headers, but as you realized, not their omission. The check was added as a work-around for some stations repeating headers as filler, and causing a number of undesirable effects such as unnecessary page update events and redrawing, visible blanking if a header with an erase flag repeats ahead of the page body, or duplicate lines in a subtitle transcript.&lt;/p&gt;
&lt;p&gt;I would prefer to keep the check but accept repeated headers as terminators under certain conditions, such as a different subpage number, the presence of a page body, or a page erase and subtitle flag in the suspect header. Preliminary tests with my Teletext samples were promising. Further I propose a new auto-termination feature where the decoder delivers subtitle events on its own if no terminator is received within a reasonable time. I already wrote a regression test failing on missing and delayed subtitles and will try auto-termination shortly.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Michael H. Schimek</dc:creator><pubDate>Mon, 23 Oct 2017 07:00:39 -0000</pubDate><guid>https://sourceforge.net34a782cfe7e35fb01acc5d0ad0369c9eab89e332</guid></item><item><title>#203 Handle page termination with same page number</title><link>https://sourceforge.net/p/zapping/bugs/203/?limit=25#d932</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;I just wanted to ask if there is anything new regarding this or possibly further information missing.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Stefan Pöschel</dc:creator><pubDate>Fri, 20 Oct 2017 14:48:34 -0000</pubDate><guid>https://sourceforge.net7ca82fb6745ed866830353ef62c403ea18067ad4</guid></item><item><title>Handle page termination with same page number</title><link>https://sourceforge.net/p/zapping/bugs/203/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;I recently had a look at two VLC issues that affect Teletext subtitles and libzvbi:&lt;br/&gt;
&lt;em&gt; &lt;a href="https://trac.videolan.org/vlc/ticket/13498" rel="nofollow"&gt;&lt;/a&gt;&lt;a href="https://trac.videolan.org/vlc/ticket/13498" rel="nofollow"&gt;https://trac.videolan.org/vlc/ticket/13498&lt;/a&gt;&lt;br/&gt;
&lt;/em&gt; &lt;a href="https://trac.videolan.org/vlc/ticket/18113" rel="nofollow"&gt;https://trac.videolan.org/vlc/ticket/18113&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In both cases, the subtitle lines remain displayed until being replaced by a new version of the specific line. So the subtitles never disappear and often an old line is still displayed, after another, more recent line is displayed/updated.&lt;/p&gt;
&lt;p&gt;At first I suspected that the Erase Page Flag (C4) in the Page Header was not set, but the flag was indeed set (at least once between two LOPs with subtitles). After further debugging it turned out that the Teletext service in the two issues consists of just a single Teletext page - which is the reason here:&lt;/p&gt;
&lt;p&gt;The Teletext spec defines the Magazine Serial Flag (C11) in Table 2 (ETSI EN 300 706 v1.2.1) as (bold font by me):&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;When set to '1' the service is designated to be in Serial mode and &lt;strong&gt;the transmission of a page is terminated by the next page header with a different page number&lt;/strong&gt;.&lt;br/&gt;
When set to '0' the service is designated to be in Parallel mode and &lt;strong&gt;the transmission of a page is terminated by the next page header with a different page number but the same magazine number&lt;/strong&gt;.&lt;br/&gt;
The same setting shall be used for all page headers in the service.&lt;br/&gt;
(BTW it doesn't really matter, but in these two cases this flag is always 0)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In &lt;code&gt;vbi_decode_teletext&lt;/code&gt; in &lt;code&gt;/src/packet.c&lt;/code&gt;, storing the page is aborted, if the condition "page terminated" in the C11 definition is not met. But as the service here consists of only one page, this condition is never met!&lt;/p&gt;
&lt;p&gt;On the one hand, I am a great fan of implementing strictly according to the specs. On the other hand I think that the case of broadcasting just one Teletext page have by mistake not been considered when creating the spec. Furthermore I could not think of a case where removing the check for this condition could harm the decoding (I'm not sure, but I don't know why encoders should do that....which is the reason why I post this into Issues and not into Patches). Hence I removed the check for page termination (for both serial/parallel case) that aborts storing the page. This solves the problem for me for the two files.&lt;/p&gt;
&lt;p&gt;Please find the patch attached. I did not check if further modifications are necessary or if the change has other implications. I also did not add a comment to the code (however it could make sense) as I'm not sure how you like to word such special case explanations.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Stefan Pöschel</dc:creator><pubDate>Wed, 24 May 2017 19:59:22 -0000</pubDate><guid>https://sourceforge.net0d2c7afea4c5eaad80d966a522f7a2edb53d8dab</guid></item><item><title>#202 test-pdc.h:92: bad sizeof ?</title><link>https://sourceforge.net/p/zapping/bugs/202/?limit=25#3eaf</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;status&lt;/strong&gt;: open --&amp;gt; closed-fixed&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;assigned_to&lt;/strong&gt;: Michael H. Schimek&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Group&lt;/strong&gt;:  --&amp;gt; &lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Michael H. Schimek</dc:creator><pubDate>Mon, 17 Oct 2016 20:53:01 -0000</pubDate><guid>https://sourceforge.nete2c23e2fe20d9f8f91090b15beb9f1c637e9309e</guid></item><item><title>test-pdc.h:92: bad sizeof ?</title><link>https://sourceforge.net/p/zapping/bugs/202/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;test-pdc.h:92:45: warning: argument to 'sizeof' in 'int memcmp(const void&lt;em&gt;, const void&lt;/em&gt;, size_t)' call is the same expression as the first source; did you mean to dereference it? &lt;span&gt;[-Wsizeof-pointer-memaccess]&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Source code is&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;    return (0 == memcmp (this, &amp;amp;other, sizeof (this)));
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Maybe better code&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;    return (0 == memcmp (this, &amp;amp;other, sizeof (*this)));
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">dcb</dc:creator><pubDate>Thu, 13 Oct 2016 07:29:35 -0000</pubDate><guid>https://sourceforge.net7e19334bd237010de26b05036744de1256e4018f</guid></item><item><title>test-pdc.h:92: bad sizeof ?</title><link>https://sourceforge.net/p/zapping/bugs/202/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Ticket 202 has been modified: test-pdc.h:92: bad sizeof ?&lt;br/&gt;
Edited By: Michael H. Schimek (mschimek)&lt;br/&gt;
Status updated: u'open' =&amp;gt; u'closed-fixed'&lt;br/&gt;
Owner updated: None =&amp;gt; u'mschimek'&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">dcb</dc:creator><pubDate>Thu, 13 Oct 2016 07:29:35 -0000</pubDate><guid>https://sourceforge.net676ba7fe8bfeb507216ea577ffc4f74540d17e22</guid></item><item><title>zvbi compilation warnings</title><link>https://sourceforge.net/p/zapping/bugs/201/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Building zvbi-0.2.35 by gcc-4.8.2 I'v got this compilation warnings:&lt;br /&gt;
src/xds_demux.c:829:29: warning: iteration 24u invokes undefined behavior &lt;span&gt;[-Waggressive-loop-optimizations]&lt;/span&gt;&lt;br /&gt;
contrib/ntsc-cc.c:1164:24: warning: iteration 25u invokes undefined behavior &lt;span&gt;[-Waggressive-loop-optimizations]&lt;/span&gt;&lt;br /&gt;
contrib/atsc-cc.c:4076:28: warning: iteration 25u invokes undefined behavior &lt;span&gt;[-Waggressive-loop-optimizations]&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Propose patch (in attachment), if I understand that code correctly.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ilya Gordeev</dc:creator><pubDate>Sun, 20 Apr 2014 18:36:39 -0000</pubDate><guid>https://sourceforge.net5dc3f138ac87195fe7dda4700dc080bb8cadcfae</guid></item><item><title>#199 [packet.c:1943]: (warning) Logical disjunction always evaluates to true: function != 4 || function != 5.</title><link>https://sourceforge.net/p/zapping/bugs/199/?limit=25#1d45</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;status&lt;/strong&gt;: open --&amp;gt; closed-fixed&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;assigned_to&lt;/strong&gt;: Michael H. Schimek&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Group&lt;/strong&gt;:  --&amp;gt; &lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Michael H. Schimek</dc:creator><pubDate>Tue, 18 Feb 2014 17:06:51 -0000</pubDate><guid>https://sourceforge.net6c149f933f5ea6051fabae183d60fb6325865aa3</guid></item></channel></rss>