From 2f5d04a604af2cdcf0df9d264ae7f7e7705a99ff Mon Sep 17 00:00:00 2001
From: Nathan Harris <nharris@eoimaging.com>
Date: Mon, 17 Aug 2009 16:59:07 -0400
Subject: v4l-dvb: rebuilt using new kernel

---
 abs/core-testing/v4l-dvb/PKGBUILD | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/abs/core-testing/v4l-dvb/PKGBUILD b/abs/core-testing/v4l-dvb/PKGBUILD
index 21c82e4..64286d7 100644
--- a/abs/core-testing/v4l-dvb/PKGBUILD
+++ b/abs/core-testing/v4l-dvb/PKGBUILD
@@ -4,7 +4,7 @@
 pkgname=v4l-dvb
 _kernver=2.6.28-LinHES
 pkgver=1
-pkgrel=10
+pkgrel=12
 pkgdesc="V4L-DVB drivers from mercurial"
 arch=('i686' 'x86_64')
 license=('GPL2')
-- 
cgit v0.12


From 9800bb0789a9b3655a679e996841bdb51a609d22 Mon Sep 17 00:00:00 2001
From: Nathan Harris <nharris@eoimaging.com>
Date: Mon, 17 Aug 2009 16:59:48 -0400
Subject: mythtv-svn: bumped to svn 21333

---
 abs/core-testing/mythtv/trunk/morethemes/PKGBUILD  |   2 +-
 abs/core-testing/mythtv/trunk/mp_all.sh            |   2 +-
 abs/core-testing/mythtv/trunk/mytharchive/PKGBUILD |   2 +-
 abs/core-testing/mythtv/trunk/mythbrowser/PKGBUILD |   2 +-
 abs/core-testing/mythtv/trunk/mythflix/PKGBUILD    |   2 +-
 abs/core-testing/mythtv/trunk/mythgallery/PKGBUILD |   2 +-
 abs/core-testing/mythtv/trunk/mythgame/PKGBUILD    |   2 +-
 abs/core-testing/mythtv/trunk/mythmovies/PKGBUILD  |   2 +-
 abs/core-testing/mythtv/trunk/mythmusic/PKGBUILD   |   2 +-
 abs/core-testing/mythtv/trunk/mythnews/PKGBUILD    |   2 +-
 abs/core-testing/mythtv/trunk/myththemes/PKGBUILD  |   2 +-
 .../trunk/mythtv/H264Parser-fixes-v1.1.patch       | 368 ---------------------
 abs/core-testing/mythtv/trunk/mythtv/PKGBUILD      |   7 +-
 .../mythtv/trunk/mythtv/hdpvr-signalmonitor.patch  | 292 ----------------
 .../mythtv/trunk/mythtv/myththemedmenu.cpp.patch   | 183 ----------
 .../mythtv/trunk/mythtv/myththemedmenu.h.patch     |  24 --
 .../mythtv/trunk/mythtv/ringbuffer_reset_v2.diff   |  91 -----
 abs/core-testing/mythtv/trunk/mythvideo/PKGBUILD   |   2 +-
 abs/core-testing/mythtv/trunk/mythweather/PKGBUILD |   2 +-
 abs/core-testing/mythtv/trunk/mythweb/PKGBUILD     |   2 +-
 .../mythtv/trunk/mythzoneminder/PKGBUILD           |   2 +-
 21 files changed, 17 insertions(+), 978 deletions(-)
 delete mode 100644 abs/core-testing/mythtv/trunk/mythtv/H264Parser-fixes-v1.1.patch
 delete mode 100644 abs/core-testing/mythtv/trunk/mythtv/hdpvr-signalmonitor.patch
 delete mode 100644 abs/core-testing/mythtv/trunk/mythtv/myththemedmenu.cpp.patch
 delete mode 100644 abs/core-testing/mythtv/trunk/mythtv/myththemedmenu.h.patch
 delete mode 100644 abs/core-testing/mythtv/trunk/mythtv/ringbuffer_reset_v2.diff

diff --git a/abs/core-testing/mythtv/trunk/morethemes/PKGBUILD b/abs/core-testing/mythtv/trunk/morethemes/PKGBUILD
index a440786..a3c5e9f 100644
--- a/abs/core-testing/mythtv/trunk/morethemes/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/morethemes/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=morethemes-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Additional themes for MythTV"
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mp_all.sh b/abs/core-testing/mythtv/trunk/mp_all.sh
index d8666ed..4f7042a 100755
--- a/abs/core-testing/mythtv/trunk/mp_all.sh
+++ b/abs/core-testing/mythtv/trunk/mp_all.sh
@@ -1,5 +1,5 @@
 #!/bin/sh
-pkgver=21228
+pkgver=21333
 pkgrel=1
 
 # NOTE: Make sure to build and install mythtv first BEFORE building anything else
diff --git a/abs/core-testing/mythtv/trunk/mytharchive/PKGBUILD b/abs/core-testing/mythtv/trunk/mytharchive/PKGBUILD
index 16ca0a5..d0a2419 100644
--- a/abs/core-testing/mythtv/trunk/mytharchive/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mytharchive/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mytharchive-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="MythTV plugin that lets you create DVDs from or archive your recorded shows."
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mythbrowser/PKGBUILD b/abs/core-testing/mythtv/trunk/mythbrowser/PKGBUILD
index 57480ea..b9d97fc 100644
--- a/abs/core-testing/mythtv/trunk/mythbrowser/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythbrowser/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythbrowser-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Mini web browser for MythTV"
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mythflix/PKGBUILD b/abs/core-testing/mythtv/trunk/mythflix/PKGBUILD
index 6295977..6f37e1f 100644
--- a/abs/core-testing/mythtv/trunk/mythflix/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythflix/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythflix-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Netflix access plugin for MythTV"
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mythgallery/PKGBUILD b/abs/core-testing/mythtv/trunk/mythgallery/PKGBUILD
index b5ac00f..f731055 100644
--- a/abs/core-testing/mythtv/trunk/mythgallery/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythgallery/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythgallery-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Image gallery plugin for MythTV"
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mythgame/PKGBUILD b/abs/core-testing/mythtv/trunk/mythgame/PKGBUILD
index 19417e3..4dfdde0 100644
--- a/abs/core-testing/mythtv/trunk/mythgame/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythgame/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythgame-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Emulation plugin for MythTV"
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mythmovies/PKGBUILD b/abs/core-testing/mythtv/trunk/mythmovies/PKGBUILD
index 952cf42..4ea24ea 100644
--- a/abs/core-testing/mythtv/trunk/mythmovies/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythmovies/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythmovies-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Displays information about movies playing in the area."
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mythmusic/PKGBUILD b/abs/core-testing/mythtv/trunk/mythmusic/PKGBUILD
index 3d5b91b..cb0d2d5 100644
--- a/abs/core-testing/mythtv/trunk/mythmusic/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythmusic/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythmusic-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Music playing plugin for MythTV"
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mythnews/PKGBUILD b/abs/core-testing/mythtv/trunk/mythnews/PKGBUILD
index ca36734..28ee7be 100644
--- a/abs/core-testing/mythtv/trunk/mythnews/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythnews/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythnews-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="News checking plugin for MythTV"
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/myththemes/PKGBUILD b/abs/core-testing/mythtv/trunk/myththemes/PKGBUILD
index ca716a3..ab6a93c 100755
--- a/abs/core-testing/mythtv/trunk/myththemes/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/myththemes/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=myththemes-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Themes for MythTV"
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mythtv/H264Parser-fixes-v1.1.patch b/abs/core-testing/mythtv/trunk/mythtv/H264Parser-fixes-v1.1.patch
deleted file mode 100644
index f8e2100..0000000
--- a/abs/core-testing/mythtv/trunk/mythtv/H264Parser-fixes-v1.1.patch
+++ /dev/null
@@ -1,368 +0,0 @@
-Index: libs/libmythtv/mpeg/H264Parser.cpp
-===================================================================
---- libs/libmythtv/mpeg/H264Parser.cpp.orig
-+++ libs/libmythtv/mpeg/H264Parser.cpp
-@@ -3,7 +3,9 @@
- 
- extern "C" {
- // from libavcodec
--    extern const uint8_t *ff_find_start_code(const uint8_t * p, const uint8_t *end, uint32_t * state);
-+    extern const uint8_t *ff_find_start_code(const uint8_t * p,
-+                                             const uint8_t *end,
-+                                             uint32_t * state);
- #include "avcodec.h"
- }
- 
-@@ -88,19 +90,18 @@ static const float eps = 1E-5;
- H264Parser::H264Parser(void)
- {
-     Reset();
-+    I_is_keyframe = false;
- }
- 
- void H264Parser::Reset(void)
- {
-     state_changed = false;
--    seen_sps = seen_IDR = false;
-+    seen_sps = false;
-+    is_keyframe = false;
- 
-     sync_accumulator = 0xffffffff;
--    find_AU = false;
-     AU_pending = false;
- 
--    NAL_type = UNKNOWN;
--
-     frame_num = prev_frame_num = -1;
-     slice_type = SLICE_UNDEF;
-     prev_pic_parameter_set_id = pic_parameter_set_id = -1;
-@@ -112,7 +113,7 @@ void H264Parser::Reset(void)
-     prev_delta_pic_order_cnt_bottom = delta_pic_order_cnt_bottom = 0;
-     prev_delta_pic_order_cnt[0] = delta_pic_order_cnt[0] = 0;
-     prev_delta_pic_order_cnt[1] = delta_pic_order_cnt[1] = 0;
--    prev_nal_unit_type = nal_unit_type = 0;
-+    prev_nal_unit_type = nal_unit_type = UNKNOWN;
-     prev_idr_pic_id = idr_pic_id = 0;
- 
-     log2_max_frame_num = log2_max_pic_order_cnt_lsb = 0;
-@@ -136,8 +137,6 @@ void H264Parser::Reset(void)
- 
-     AU_offset = frame_start_offset = keyframe_start_offset = 0;
-     on_frame = on_key_frame = false;
--
--    wait_for_IDR = false;
- }
- 
- 
-@@ -214,13 +213,7 @@ bool H264Parser::new_AU(void)
-     {
-         // Need previous slice information for comparison
- 
--        if (NAL_type == AU_DELIMITER ||
--            NAL_type == SPS ||
--            NAL_type == PPS ||
--            NAL_type == SEI ||
--            (NAL_type > SPS_EXT && NAL_type < AUXILIARY_SLICE))
--            result = true;
--        else if (NAL_type != SLICE_IDR && frame_num != prev_frame_num)
-+        if (nal_unit_type != SLICE_IDR && frame_num != prev_frame_num)
-             result = true;
-         else if (prev_pic_parameter_set_id != -1 &&
-                  pic_parameter_set_id != prev_pic_parameter_set_id)
-@@ -230,9 +223,6 @@ bool H264Parser::new_AU(void)
-         else if ((bottom_field_flag != -1 && prev_bottom_field_flag != -1) &&
-                  bottom_field_flag != prev_bottom_field_flag)
-             result = true;
--        else if ((nal_ref_idc == 0 || prev_nal_ref_idc == 0) &&
--                 nal_ref_idc != prev_nal_ref_idc)
--            result = true;
-         else if ((pic_order_cnt_type == 0 && prev_pic_order_cnt_type == 0) &&
-                  (pic_order_cnt_lsb != prev_pic_order_cnt_lsb ||
-                   delta_pic_order_cnt_bottom !=
-@@ -256,7 +246,6 @@ bool H264Parser::new_AU(void)
-     prev_pic_parameter_set_id = pic_parameter_set_id;
-     prev_field_pic_flag = field_pic_flag;
-     prev_bottom_field_flag = bottom_field_flag;
--    prev_nal_ref_idc = nal_ref_idc;
-     prev_pic_order_cnt_lsb = pic_order_cnt_lsb;
-     prev_delta_pic_order_cnt_bottom = delta_pic_order_cnt_bottom;
-     prev_delta_pic_order_cnt[0] = delta_pic_order_cnt[0];
-@@ -273,7 +262,7 @@ uint32_t H264Parser::addBytes(const uint
- {
-     const uint8_t *byteP = bytes;
-     const uint8_t *endP = bytes + byte_count;
--
-+    const uint8_t *nalP;
-     uint8_t        first_byte;
- 
-     state_changed = false;
-@@ -305,10 +294,11 @@ uint32_t H264Parser::addBytes(const uint
-   11 End of stream end_of_stream_rbsp( )
- */
-             first_byte = *(byteP - 1);
--            NAL_type = first_byte & 0x1f;
-+            nal_unit_type = first_byte & 0x1f;
-             nal_ref_idc = (first_byte >> 5) & 0x3;
- 
--            if (NALisSlice(NAL_type) || NAL_type == SPS || NAL_type == PPS)
-+            if (nal_unit_type == SPS || nal_unit_type == PPS ||
-+                nal_unit_type == SEI || NALisSlice(nal_unit_type))
-             {
-                 /*
-                   bitstream buffer, must be FF_INPUT_BUFFER_PADDING_SIZE
-@@ -318,27 +308,51 @@ uint32_t H264Parser::addBytes(const uint
-                 {
-                     init_get_bits(&gb, byteP, 8 * (endP - byteP));
- 
--                    if (NAL_type == SPS)
-+                    if (nal_unit_type == SEI)
-+                    {
-+                        nalP = ff_find_start_code(byteP+1, endP,
-+                                                  &sync_accumulator) - 8;
-+                        decode_SEI(&gb, (nalP - byteP) * 8);
-+                        set_AU_pending(stream_offset);
-+                    }
-+                    else if (nal_unit_type == SPS)
-+                    {
-                         decode_SPS(&gb);
--                    else if (NAL_type == PPS)
-+                        set_AU_pending(stream_offset);
-+                    }
-+                    else if (nal_unit_type == PPS)
-+                    {
-                         decode_PPS(&gb);
-+                        set_AU_pending(stream_offset);
-+                    }
-                     else
--                        find_AU = decode_Header(&gb);
-+                    {
-+                        decode_Header(&gb);
-+                        if (new_AU())
-+                            set_AU_pending(stream_offset);
-+                    }
- 
-                     byteP += (get_bits_count(&gb) / 8);
-                 }
-             }
--
--            if (find_AU && new_AU())
-+            else if (!AU_pending)
-             {
--                /* After finding a new AU, don't look for another one
--                   until we decode a SLICE */
--                find_AU = false;
--                AU_pending = true;
--                AU_offset = stream_offset;
-+                if (nal_unit_type == AU_DELIMITER ||
-+                    (nal_unit_type > SPS_EXT &&
-+                     nal_unit_type < AUXILIARY_SLICE))
-+                {
-+                    AU_pending = true;
-+                    AU_offset = stream_offset;
-+                }
-+                else if ((nal_ref_idc == 0 || prev_nal_ref_idc == 0) &&
-+                         nal_ref_idc != prev_nal_ref_idc)
-+                {
-+                    AU_pending = true;
-+                    AU_offset = stream_offset;
-+                }
-             }
--            
--            if (AU_pending && NALisSlice(NAL_type))
-+
-+            if (AU_pending && NALisSlice(nal_unit_type))
-             {
-                 /* Once we know the slice type of a new AU, we can
-                  * determine if it is a keyframe or just a frame */
-@@ -349,10 +363,11 @@ uint32_t H264Parser::addBytes(const uint
-                 on_frame = true;
-                 frame_start_offset = AU_offset;
- 
--                if (isKeySlice(slice_type) && (!wait_for_IDR || seen_IDR))
-+                if (is_keyframe)
-                 {
-                     on_key_frame = true;
-                     keyframe_start_offset = AU_offset;
-+                    is_keyframe = false;
-                 }
-                 else
-                     on_key_frame = false;
-@@ -360,6 +375,8 @@ uint32_t H264Parser::addBytes(const uint
-             else
-                 on_frame = on_key_frame = false;
- 
-+            prev_nal_ref_idc = nal_ref_idc;
-+
-             return byteP - bytes;
-         }
-     }
-@@ -440,8 +457,6 @@ bool H264Parser::decode_Header(GetBitCon
-     */
- 
-     frame_num = get_bits(gb, log2_max_frame_num);
--    if (NAL_type == SLICE_IDR || frame_num == 0)
--        seen_IDR = true;
- 
-     /*
-       field_pic_flag equal to 1 specifies that the slice is a slice of a
-@@ -475,8 +490,14 @@ bool H264Parser::decode_Header(GetBitCon
-       second such IDR access unit. The value of idr_pic_id shall be in
-       the range of 0 to 65535, inclusive.
-      */
-+
-     if (nal_unit_type == SLICE_IDR)
-+    {
-+        is_keyframe = true;
-         idr_pic_id = get_ue_golomb(gb);
-+    }
-+    else
-+        is_keyframe |= (I_is_keyframe && isKeySlice(slice_type));
- 
-     /*
-       pic_order_cnt_lsb specifies the picture order count modulo
-@@ -806,6 +827,44 @@ void H264Parser::decode_PPS(GetBitContex
- #endif
- }
- 
-+void H264Parser::decode_SEI(GetBitContext * gb, int bitlen)
-+{
-+    int   recovery_frame_cnt = -1;
-+    bool  exact_match_flag = false;
-+    bool  broken_link_flag = false;
-+    int   changing_group_slice_idc = -1;
-+
-+    while (get_bits_count(gb) < bitlen)
-+    {
-+        int type = 0, size = 0;
-+
-+        do {
-+            type += show_bits(gb, 8);
-+        } while (get_bits(gb, 8) == 255);
-+
-+        do {
-+            size += show_bits(gb, 8);
-+        } while (get_bits(gb, 8) == 255);
-+
-+        switch (type)
-+        {
-+          case SEI_TYPE_RECOVERY_POINT:
-+            recovery_frame_cnt = get_ue_golomb(gb);
-+            exact_match_flag = get_bits1(gb);
-+            broken_link_flag = get_bits1(gb);
-+            changing_group_slice_idc = get_bits(gb, 2);
-+            is_keyframe |= (recovery_frame_cnt >= 0);
-+            return;
-+
-+          default:
-+            skip_bits(gb, size * 8);
-+            break;
-+        }
-+
-+        align_get_bits(gb);
-+    }
-+}
-+
- void H264Parser::vui_parameters(GetBitContext * gb)
- {
-     /*
-Index: libs/libmythtv/mpeg/H264Parser.h
-===================================================================
---- libs/libmythtv/mpeg/H264Parser.h.orig
-+++ libs/libmythtv/mpeg/H264Parser.h
-@@ -53,6 +53,12 @@ class H264Parser {
-         AUXILIARY_SLICE = 19
-     };
- 
-+    enum SEI_type {
-+        SEI_TYPE_PIC_TIMING             = 1,
-+        SEI_TYPE_USER_DATA_UNREGISTERED = 5,
-+        SEI_TYPE_RECOVERY_POINT         = 6
-+    };
-+
-     /*
-       slice_type values in the range 5..9 specify, in addition to the
-       coding type of the current slice, that all other slices of the
-@@ -90,9 +96,7 @@ class H264Parser {
- 
-     bool stateChanged(void) const { return state_changed; }
- 
--    // seenIDR implies that a SPS has also been seen
--    bool seenIDR(void) const { return seen_IDR; }
--    uint8_t lastNALtype(void) const { return NAL_type; }
-+    uint8_t lastNALtype(void) const { return nal_unit_type; }
- 
-     frame_type FieldType(void) const
-         {
-@@ -130,29 +134,36 @@ class H264Parser {
-                     nal_type == SLICE_IDR);
-         }
- 
--    void waitForIDR(bool wait) { wait_for_IDR = wait; }
-+    void use_I_forKeyframes(bool val) { I_is_keyframe = val; }
- 
-   private:
-     enum constants {EXTENDED_SAR = 255};
- 
--    bool is_first_VCL_NAL_unit(void);
-+    inline void set_AU_pending(const uint64_t & stream_offset)
-+        {
-+            if (!AU_pending)
-+            {
-+                AU_pending = true;
-+                AU_offset = stream_offset;
-+            }
-+        }
-+
-     bool new_AU(void);
-     bool decode_Header(GetBitContext *gb);
-     void decode_SPS(GetBitContext *gb);
-     void decode_PPS(GetBitContext * gb);
-+    void decode_SEI(GetBitContext * gb, int len);
-     void vui_parameters(GetBitContext * gb);
- 
--    bool       find_AU;
-     bool       AU_pending;
-     bool       state_changed;
-     bool       seen_sps;
--    bool       seen_IDR;
-+    bool       is_keyframe;
-+    bool       I_is_keyframe;
- 
-     uint32_t   sync_accumulator;
-     GetBitContext gb;
- 
--    uint8_t    NAL_type;
--
-     int        prev_frame_num, frame_num;
-     uint       slice_type;
-     int        prev_pic_parameter_set_id, pic_parameter_set_id;
-@@ -188,8 +199,6 @@ class H264Parser {
- 
-     uint64_t   AU_offset, frame_start_offset, keyframe_start_offset;
-     bool       on_frame, on_key_frame;
--
--    bool       wait_for_IDR;
- };
- 
- #endif /* H264PARSER_H */
-Index: libs/libmythtv/mpegrecorder.cpp
-===================================================================
---- libs/libmythtv/mpegrecorder.cpp.orig
-+++ libs/libmythtv/mpegrecorder.cpp
-@@ -423,6 +423,7 @@ bool MpegRecorder::OpenV4L2DeviceAsInput
-             bzero(_stream_id,  sizeof(_stream_id));
-             bzero(_pid_status, sizeof(_pid_status));
-             memset(_continuity_counter, 0xff, sizeof(_continuity_counter));
-+            m_h264_parser.use_I_forKeyframes(true);
-         }
-         else
-         {
-@@ -1373,8 +1374,6 @@ void MpegRecorder::ResetForNewFile(void)
-     bzero(_stream_id,  sizeof(_stream_id));
-     bzero(_pid_status, sizeof(_pid_status));
-     memset(_continuity_counter, 0xff, sizeof(_continuity_counter));
--
--    m_h264_parser.waitForIDR(true);
- }
- 
- void MpegRecorder::Reset(void)
diff --git a/abs/core-testing/mythtv/trunk/mythtv/PKGBUILD b/abs/core-testing/mythtv/trunk/mythtv/PKGBUILD
index 4aad5af..df4afb8 100755
--- a/abs/core-testing/mythtv/trunk/mythtv/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythtv/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythtv-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="A personal video recorder for Linux"
 url="http://www.mythtv.org"
@@ -17,10 +17,7 @@ groups=('pvr')
 install='mythtv.install'
 
 patchs=()
-#patchs=('smolt_jump.patch' 'myththemedmenu.h.patch' 'myththemedmenu.cpp.patch' )
-#	'H264Parser-fixes-v1.1.patch' \
-#	'hdpvr-signalmonitor.patch' 'ringbuffer_reset_v2.diff' )
-#patchs=('svn_main_menu_popup.patch' 'smolt_jump.patch')
+#patchs=('smolt_jump.patch')
 source=('mythbackend' 'myth.sh' `echo ${patchs[@]:0}` 'mythbackend.lr' 'mythfrontend.lr' 'pretty')
 arch=('i686' 'x86_64')
 #md5sums=()
diff --git a/abs/core-testing/mythtv/trunk/mythtv/hdpvr-signalmonitor.patch b/abs/core-testing/mythtv/trunk/mythtv/hdpvr-signalmonitor.patch
deleted file mode 100644
index 2465cfe..0000000
--- a/abs/core-testing/mythtv/trunk/mythtv/hdpvr-signalmonitor.patch
+++ /dev/null
@@ -1,292 +0,0 @@
-Index: libs/libmythtv/analogsignalmonitor.cpp
-===================================================================
---- libs/libmythtv/analogsignalmonitor.cpp.orig
-+++ libs/libmythtv/analogsignalmonitor.cpp
-@@ -4,23 +4,92 @@
- #include <cerrno>
- #include <unistd.h>
- #include <sys/ioctl.h>
-+#include <poll.h>
- 
- #include "videodev_myth.h"
- #include "mythcontext.h"
- #include "analogsignalmonitor.h"
- #include "v4lchannel.h"
- 
--#define LOC QString("AnalogSM: ").arg(channel->GetDevice())
--#define LOC_ERR QString("AnalogSM, Error: ").arg(channel->GetDevice())
-+#define LOC QString("AnalogSM: %1 ").arg(channel->GetDevice())
-+#define LOC_ERR QString("AnalogSM, Error: %1 ").arg(channel->GetDevice())
- 
--AnalogSignalMonitor::AnalogSignalMonitor(
--    int db_cardnum, V4LChannel *_channel, uint64_t _flags) :
-+AnalogSignalMonitor::AnalogSignalMonitor(int db_cardnum, V4LChannel *_channel,
-+                                         uint64_t _flags) :
-     SignalMonitor(db_cardnum, _channel, _flags),
--    usingv4l2(false)
-+    m_usingv4l2(false),
-+    m_stage(0)
- {
-     int videofd = channel->GetFd();
-     if (videofd >= 0)
--        usingv4l2 = CardUtil::hasV4L2(videofd);
-+    {
-+        m_usingv4l2 = CardUtil::hasV4L2(videofd);
-+        CardUtil::GetV4LInfo(videofd, m_card, m_driver, m_version);
-+        VERBOSE(VB_RECORD, LOC + QString("card '%1' driver '%2' version '%3'")
-+                .arg(m_card).arg(m_driver).arg(m_version));
-+    }
-+}
-+
-+bool AnalogSignalMonitor::handleHDPVR(int videofd)
-+{
-+    struct v4l2_encoder_cmd command;
-+    struct pollfd polls;
-+    int    idx;
-+
-+    if (m_stage == 0)
-+    {
-+        VERBOSE(VB_RECORD, LOC + "hd-pvr start encoding");
-+        // Tell it to start encoding, then wait for it to actually feed us
-+        // some data.
-+        memset(&command, 0, sizeof(struct v4l2_encoder_cmd));
-+        command.cmd = V4L2_ENC_CMD_START;
-+        if (ioctl(videofd, VIDIOC_ENCODER_CMD, &command) == 0)
-+            m_stage = 1;
-+        else
-+            VERBOSE(VB_IMPORTANT, LOC_ERR + "Start encoding failed" + ENO);
-+    }
-+
-+    if (m_stage == 1)
-+    {
-+        VERBOSE(VB_RECORD, LOC + "hd-pvr wait for data");
-+
-+        polls.fd      = videofd;
-+        polls.events  = POLLIN;
-+        polls.revents = 0;
-+
-+        if (poll(&polls, 1, 1500) > 0)
-+            m_stage = 2;
-+        else
-+        {
-+            VERBOSE(VB_RECORD, LOC + "Poll timed-out.  Resetting");
-+            memset(&command, 0, sizeof(struct v4l2_encoder_cmd));
-+            command.cmd = V4L2_ENC_CMD_STOP;
-+            ioctl(videofd, VIDIOC_ENCODER_CMD, &command);
-+            m_stage = 0;
-+        }
-+    }
-+
-+    if (m_stage == 2)
-+    {
-+        VERBOSE(VB_RECORD, LOC + "hd-pvr data ready.  Stop encoding");
-+
-+        command.cmd = V4L2_ENC_CMD_STOP;
-+        if (ioctl(videofd, VIDIOC_ENCODER_CMD, &command) == 0)
-+            m_stage = 3;
-+    }
-+
-+    if (m_stage == 3)
-+    {
-+        struct v4l2_format vfmt;
-+        memset(&vfmt, 0, sizeof(vfmt));
-+        vfmt.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
-+            
-+        VERBOSE(VB_RECORD, LOC + "hd-pvr waiting for valid resolution");
-+        if ((ioctl(videofd, VIDIOC_G_FMT, &vfmt) == 0) && vfmt.fmt.pix.width)
-+            m_stage = 4;
-+    }
-+
-+    return (m_stage == 4);
- }
- 
- void AnalogSignalMonitor::UpdateValues(void)
-@@ -33,19 +102,24 @@ void AnalogSignalMonitor::UpdateValues(v
-         return;
- 
-     bool isLocked = false;
--    if (usingv4l2)
-+    if (m_usingv4l2)
-     {
--        struct v4l2_tuner tuner;
--        bzero(&tuner, sizeof(tuner));
--
--        if (ioctl(videofd, VIDIOC_G_TUNER, &tuner, 0) < 0)
--        {
--            VERBOSE(VB_IMPORTANT,
--                    LOC_ERR + "Failed to probe signal (v4l2)" + ENO);
--        }
-+        if (m_driver == "hdpvr")
-+            isLocked = handleHDPVR(videofd);
-         else
-         {
--            isLocked = tuner.signal;
-+            struct v4l2_tuner tuner;
-+            bzero(&tuner, sizeof(tuner));
-+
-+            if (ioctl(videofd, VIDIOC_G_TUNER, &tuner, 0) < 0)
-+            {
-+                VERBOSE(VB_IMPORTANT,
-+                        LOC_ERR + "Failed to probe signal (v4l2)" + ENO);
-+            }
-+            else
-+            {
-+                isLocked = tuner.signal;
-+            }
-         }
-     }
-     else 
-Index: libs/libmythtv/analogsignalmonitor.h
-===================================================================
---- libs/libmythtv/analogsignalmonitor.h.orig
-+++ libs/libmythtv/analogsignalmonitor.h
-@@ -19,7 +19,13 @@ class AnalogSignalMonitor : public Signa
-     virtual void UpdateValues(void);
- 
-   private:
--    bool usingv4l2;
-+    bool handleHDPVR(int videofd);
-+
-+    bool     m_usingv4l2;
-+    QString  m_card;
-+    QString  m_driver;
-+    uint32_t m_version;
-+    int      m_stage;
- };
- 
- #endif // _ANALOG_SIGNAL_MONITOR_H_
-Index: libs/libmythtv/mpegrecorder.cpp
-===================================================================
---- libs/libmythtv/mpegrecorder.cpp.orig
-+++ libs/libmythtv/mpegrecorder.cpp
-@@ -1041,14 +1041,6 @@ void MpegRecorder::StartRecording(void)
- 
-     if (driver == "hdpvr")
-     {
--        if (curRecording->recgroup == "LiveTV")
--        {
--            // Don't bother checking resolution, always use best bitrate
--            int maxbitrate = std::max(high_mpeg4peakbitrate,
--                                      high_mpeg4avgbitrate);
--            SetBitrate(high_mpeg4avgbitrate, maxbitrate, "LiveTV");
--        }
--
-         int progNum = 1;
-         MPEGStreamData *sd = new MPEGStreamData(progNum, true);
-         sd->SetRecordingType(_recording_type);
-@@ -1492,7 +1484,7 @@ bool MpegRecorder::StartEncoding(int fd)
-     memset(&command, 0, sizeof(struct v4l2_encoder_cmd));
-     command.cmd = V4L2_ENC_CMD_START;
- 
--    if (driver == "hdpvr" && curRecording->recgroup != "LiveTV")
-+    if (driver == "hdpvr")
-         HandleResolutionChanges();
- 
-     VERBOSE(VB_RECORD, LOC + "StartEncoding");
-@@ -1615,64 +1607,6 @@ void MpegRecorder::HandleSingleProgramPM
-         DTVRecorder::BufferedWrite(*(reinterpret_cast<TSPacket*>(&buf[i])));
- }
- 
--/// After a resolution change, it can take the HD-PVR a few
--/// seconds before it is usable again.
--bool MpegRecorder::WaitFor_HDPVR(void)
--{
--    struct v4l2_encoder_cmd command;
--    struct v4l2_format vfmt;
--    struct pollfd polls;
--    int    idx;
--
--    // Tell it to start encoding, then wait for it to actually feed us
--    // some data.
--    QMutexLocker locker(&start_stop_encoding_lock);
--
--    // Sleep any less than 1.5 seconds, and the HD-PVR will
--    // return the old resolution, when the resolution is changing.
--    usleep(1500 * 1000);
--
--    memset(&command, 0, sizeof(struct v4l2_encoder_cmd));
--    command.cmd = V4L2_ENC_CMD_START;
--
--    for (idx = 0; idx < 20; ++idx)
--    {
--        if (ioctl(readfd, VIDIOC_ENCODER_CMD, &command) == 0)
--            break;
--        usleep(100 * 1000);
--    }
--
--    if (idx == 20)
--        return false;
--
--    polls.fd      = readfd;
--    polls.events  = POLLIN;
--    polls.revents = 0;
--
--    if (poll(&polls, 1, 5000) <= 0)
--        return false;
--
--    // HD-PVR should now be "ready"
--    command.cmd = V4L2_ENC_CMD_STOP;
--
--    if (ioctl(readfd, VIDIOC_ENCODER_CMD, &command) < 0)
--        return false;
--
--    memset(&vfmt, 0, sizeof(vfmt));
--    vfmt.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
--
--    for (idx = 0; idx < 20; ++idx)
--    {
--        if (0 == ioctl(chanfd, VIDIOC_G_FMT, &vfmt))
--            return true;
--        // Typically takes 0.9 seconds after a resolution change
--        usleep(100 * 1000);
--    }
--
--    VERBOSE(VB_RECORD, LOC + "WaitForHDPVR failed");
--    return false;
--}
--
- void MpegRecorder::SetBitrate(int bitrate, int maxbitrate,
-                               const QString & reason)
- {
-@@ -1710,9 +1644,6 @@ void MpegRecorder::HandleResolutionChang
-     memset(&vfmt, 0, sizeof(vfmt));
-     vfmt.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
-             
--    if (driver == "hdpvr")
--        WaitFor_HDPVR();
--
-     if (0 == ioctl(chanfd, VIDIOC_G_FMT, &vfmt))
-     {
-         VERBOSE(VB_RECORD, LOC + QString("Got Resolution %1x%2")
-Index: libs/libmythtv/mpegrecorder.h
-===================================================================
---- libs/libmythtv/mpegrecorder.h.orig
-+++ libs/libmythtv/mpegrecorder.h
-@@ -86,7 +86,6 @@ class MpegRecorder : public DTVRecorder,
- 
-     void ResetForNewFile(void);
- 
--    bool WaitFor_HDPVR(void);
-     void SetBitrate(int bitrate, int maxbitrate, const QString & reason);
-     void HandleResolutionChanges(void);
- 
-Index: libs/libmythtv/signalmonitor.h
-===================================================================
---- libs/libmythtv/signalmonitor.h.orig
-+++ libs/libmythtv/signalmonitor.h
-@@ -287,6 +287,7 @@ inline bool SignalMonitor::IsRequired(co
-     return (CardUtil::IsDVBCardType(cardtype) ||
-             (cardtype.toUpper() == "HDTV")      ||
-             (cardtype.toUpper() == "HDHOMERUN") ||
-+            (cardtype.toUpper() == "HDPVR") ||
-             (cardtype.toUpper() == "FIREWIRE")  ||
-             (cardtype.toUpper() == "FREEBOX"));
- }
-@@ -295,6 +296,7 @@ inline bool SignalMonitor::IsSupported(c
- {
-     return (IsRequired(cardtype)        ||
-             (cardtype.toUpper() == "V4L") ||
-+            (cardtype.toUpper() == "HDPVR") ||
-             (cardtype.toUpper() == "MPEG"));
- }
- 
diff --git a/abs/core-testing/mythtv/trunk/mythtv/myththemedmenu.cpp.patch b/abs/core-testing/mythtv/trunk/mythtv/myththemedmenu.cpp.patch
deleted file mode 100644
index fbb85c3..0000000
--- a/abs/core-testing/mythtv/trunk/mythtv/myththemedmenu.cpp.patch
+++ /dev/null
@@ -1,183 +0,0 @@
-Index: libs/libmythui/myththemedmenu.cpp
-===================================================================
---- libs/libmythui/myththemedmenu.cpp	(revision 20249)
-+++ libs/libmythui/myththemedmenu.cpp	(working copy)
-@@ -88,6 +88,8 @@
-       m_state(state), m_allocedstate(false), m_foundtheme(false),
-       m_exitModifier(-1), m_ignorekeys(false), m_wantpop(false)
- {
-+    m_menuPopup = NULL;
-+
-     if (!m_state)
-     {
-         m_state = new MythThemedMenuState(parent, "themedmenustate");
-@@ -269,6 +271,10 @@
-                 }
-             }
-         }
-+        else if (action == "MENU")
-+        {
-+            doMenu();
-+        }
-         else
-             handled = false;
-     }
-@@ -290,6 +296,158 @@
-     updateLCD();
- }
- 
-+void MythThemedMenu::doMenu()
-+{
-+    if( m_menuPopup != NULL )
-+        return;
-+
-+    int allowsd =  GetMythDB()->GetNumSetting("AllowQuitShutdown");
-+    int override_menu = GetMythDB()->GetNumSetting("OverRideExitMenu");
-+    QString label = "System Menu";
-+    MythScreenStack* mainStack = GetMythMainWindow()->GetMainStack();
-+    m_menuPopup = new MythDialogBox(label, mainStack, "menuPopup");
-+
-+    if (m_menuPopup->Create())
-+        mainStack->AddScreen(m_menuPopup);
-+
-+    if (override_menu == 0)
-+    {
-+        if ( (allowsd != 0) && (allowsd != 4)  )
-+        {
-+            m_menuPopup->SetReturnEvent(this,"popmenu_exit");
-+            m_menuPopup->AddButton("Shutdown");
-+            m_menuPopup->AddButton("Reboot");
-+        }
-+        else
-+        {
-+            m_menuPopup->SetReturnEvent(this,"popmenu_noexit");
-+        }
-+    }
-+    if (override_menu == 5)
-+    { // reboot
-+        m_menuPopup->SetReturnEvent(this,"popmenu_reboot");
-+        m_menuPopup->AddButton("Reboot");
-+    }
-+    else if (override_menu == 2 || override_menu == 4)
-+    { // shutdown
-+            m_menuPopup->SetReturnEvent(this,"popmenu_shutdown");
-+            m_menuPopup->AddButton("Shutdown");
-+    }
-+    else if (override_menu == 3 || override_menu == 6)
-+    { //    both
-+        m_menuPopup->SetReturnEvent(this,"popmenu_exit");
-+        m_menuPopup->AddButton("Shutdown");
-+        m_menuPopup->AddButton("Reboot");
-+    }
-+    else
-+    {
-+        m_menuPopup->SetReturnEvent(this,"popmenu_noexit");
-+    }
-+
-+    m_menuPopup->AddButton("About");
-+    m_menuPopup->AddButton("Cancel");
-+
-+}
-+
-+void MythThemedMenu::aboutScreen()
-+{
-+
-+    extern const char* myth_source_version;
-+    extern const char* myth_source_path;
-+    QString distro_line;
-+    distro_line = "";
-+
-+    QFile file("/etc/os_myth_release");
-+    if (file.open(QFile::ReadOnly))
-+    {
-+        QTextStream t( &file );        // use a text stream
-+        distro_line = t.readLine();
-+        file.close();
-+    }
-+
-+    QString label = "";
-+    label.append(QObject::tr("Revision: ") + myth_source_version   + "  \n  Branch:" +  myth_source_path  + "\n" + distro_line );
-+
-+    MythScreenStack* mainStack = GetMythMainWindow()->GetMainStack();
-+    m_menuPopup = new MythDialogBox(label, mainStack, "About");
-+    if (m_menuPopup->Create())
-+        mainStack->AddScreen(m_menuPopup);
-+
-+    m_menuPopup->SetReturnEvent(this, "About");
-+    m_menuPopup->AddButton("OK!");
-+
-+}
-+
-+void MythThemedMenu::customEvent(QEvent *event)
-+{
-+    if (event->type() == kMythDialogBoxCompletionEventType)
-+    {
-+        DialogCompletionEvent *dce =
-+                dynamic_cast<DialogCompletionEvent*>(event);
-+
-+        QString resultid = dce->GetId();
-+        int buttonnum = dce->GetResult();
-+        QString halt_cmd = GetMythDB()->GetSetting("HaltCommand");
-+        QString reboot_cmd = GetMythDB()->GetSetting("RebootCommand");
-+
-+        if (resultid == "popmenu_exit")
-+        {
-+            if (buttonnum == 0)
-+            {
-+                if (!halt_cmd.isEmpty())
-+                    system(halt_cmd.toAscii());
-+            }
-+
-+            if (buttonnum == 1)
-+            {
-+                if (!reboot_cmd.isEmpty())
-+                    system(reboot_cmd.toAscii());
-+            }
-+
-+            if (buttonnum == 2)
-+            {
-+                aboutScreen();
-+            }
-+        }
-+
-+        if (resultid == "popmenu_noexit")
-+        {
-+            if (buttonnum == 0)
-+                aboutScreen();
-+        }
-+
-+        if (resultid == "popmenu_reboot")
-+        {
-+            if (buttonnum == 0)
-+            {
-+                if (!reboot_cmd.isEmpty())
-+                    system(reboot_cmd.toAscii());
-+            }
-+
-+            if (buttonnum == 1)
-+            {
-+                aboutScreen();
-+            }
-+        }
-+
-+        if (resultid == "popmenu_shutdown")
-+        {
-+            if (buttonnum == 0)
-+            {
-+                if (!halt_cmd.isEmpty())
-+                    system(halt_cmd.toAscii());
-+            }
-+
-+            if (buttonnum == 1)
-+            {
-+                aboutScreen();
-+            }
-+        }
-+
-+        m_menuPopup = NULL;
-+    }
-+}
-+
- /** \brief Parses the element's tags and set the ThemeButton's type,
-  *         text, depends, and action, then adds the button.
-  *
diff --git a/abs/core-testing/mythtv/trunk/mythtv/myththemedmenu.h.patch b/abs/core-testing/mythtv/trunk/mythtv/myththemedmenu.h.patch
deleted file mode 100644
index 688e99c..0000000
--- a/abs/core-testing/mythtv/trunk/mythtv/myththemedmenu.h.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Index: libs/libmythui/myththemedmenu.h
-===================================================================
---- libs/libmythui/myththemedmenu.h	(revision 20249)
-+++ libs/libmythui/myththemedmenu.h	(working copy)
-@@ -2,6 +2,7 @@
- #define MYTHTHEMEDMENU_H_
- 
- #include "mythscreentype.h"
-+#include "mythdialogbox.h"
- #include "mythuistatetype.h"
- #include "mythuibuttonlist.h"
- #include "xmlparsebase.h"
-@@ -79,6 +80,11 @@
-     void ReloadExitKey(void);
-     virtual void aboutToShow(void);
- 
-+    void doMenu();
-+    void aboutScreen();
-+    MythDialogBox* m_menuPopup;
-+    void customEvent(QEvent *event);
-+
-   protected:
-     virtual bool keyPressEvent(QKeyEvent *e);
- 
diff --git a/abs/core-testing/mythtv/trunk/mythtv/ringbuffer_reset_v2.diff b/abs/core-testing/mythtv/trunk/mythtv/ringbuffer_reset_v2.diff
deleted file mode 100644
index 7876a2e..0000000
--- a/abs/core-testing/mythtv/trunk/mythtv/ringbuffer_reset_v2.diff
+++ /dev/null
@@ -1,91 +0,0 @@
-Index: libs/libmythtv/recorderbase.cpp
-===================================================================
---- libs/libmythtv/recorderbase.cpp	(revision 20635)
-+++ libs/libmythtv/recorderbase.cpp	(working copy)
-@@ -241,6 +241,8 @@
-         rb_changed = true;
- 
-         StartNewFile();
-+
-+        ResetStreamParser();
-     }
-     nextRingBufferLock.unlock();
- 
-Index: libs/libmythtv/mpegrecorder.h
-===================================================================
---- libs/libmythtv/mpegrecorder.h	(revision 20635)
-+++ libs/libmythtv/mpegrecorder.h	(working copy)
-@@ -63,6 +63,9 @@
-     // ReaderPausedCB
-     virtual void ReaderPaused(int fd) { pauseWait.wakeAll(); }
- 
-+    // Reset stream parsers when necessary
-+    virtual void ResetStreamParser(void);
-+
-   private:
-     void SetIntOption(RecordingProfile *profile, const QString &name);
-     void SetStrOption(RecordingProfile *profile, const QString &name);
-Index: libs/libmythtv/recorderbase.h
-===================================================================
---- libs/libmythtv/recorderbase.h	(revision 20635)
-+++ libs/libmythtv/recorderbase.h	(working copy)
-@@ -212,6 +212,11 @@
-      */
-     virtual void CheckForRingBufferSwitch(void);
- 
-+    /** \brief Inherited method for the stream parser to be reset after
-+               a ringbuffer change. Used mainly in mpegrecorder for H264Parser.
-+     */
-+    virtual void ResetStreamParser(void) { };
-+
-     /** \brief Save the seektable to the DB
-      */
-     void SavePositionMap(bool force = false);
-Index: libs/libmythtv/mpegrecorder.cpp
-===================================================================
---- libs/libmythtv/mpegrecorder.cpp	(revision 20635)
-+++ libs/libmythtv/mpegrecorder.cpp	(working copy)
-@@ -1430,12 +1430,7 @@
-     {
-         VERBOSE(VB_RECORD, LOC + "PauseAndWait unpause");
- 
--        if (driver == "hdpvr")
--        {
--            m_h264_parser.Reset();
--            _wait_for_keyframe_option = true;
--            _seen_sps = false;
--        }
-+        ResetStreamParser();
- 
-         // Some drivers require streaming to be disabled before
-         // an input switch and other channel format setting.
-@@ -1500,12 +1495,7 @@
- 
-     if (ioctl(fd, VIDIOC_ENCODER_CMD, &command) == 0)
-     {
--        if (driver == "hdpvr")
--        {
--            m_h264_parser.Reset();
--            _wait_for_keyframe_option = true;
--            _seen_sps = false;
--        }
-+        ResetStreamParser();
- 
-         VERBOSE(VB_RECORD, LOC + "Encoding started");
-         return true;
-@@ -1762,3 +1752,15 @@
-         SetBitrate(bitrate, maxbitrate, "New");
-     }
- }
-+
-+void MpegRecorder::ResetStreamParser(void)               
-+{        
-+    if (driver == "hdpvr")      
-+    {
-+        m_h264_parser.Reset();
-+        _wait_for_keyframe_option = true;
-+        _seen_sps = false;
-+    }
-+
-+    RecorderBase::ResetStreamParser();
-+}
diff --git a/abs/core-testing/mythtv/trunk/mythvideo/PKGBUILD b/abs/core-testing/mythtv/trunk/mythvideo/PKGBUILD
index f229240..bd8ed74 100644
--- a/abs/core-testing/mythtv/trunk/mythvideo/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythvideo/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythvideo-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Video playback and browsing plugin for MythTV"
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mythweather/PKGBUILD b/abs/core-testing/mythtv/trunk/mythweather/PKGBUILD
index c1de969..d98973e 100644
--- a/abs/core-testing/mythtv/trunk/mythweather/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythweather/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythweather-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Weather checking plugin for MythTV"
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mythweb/PKGBUILD b/abs/core-testing/mythtv/trunk/mythweb/PKGBUILD
index 2e3269d..48236c8 100644
--- a/abs/core-testing/mythtv/trunk/mythweb/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythweb/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythweb-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Web interface for MythTV's backend"
 url="http://www.mythtv.org"
diff --git a/abs/core-testing/mythtv/trunk/mythzoneminder/PKGBUILD b/abs/core-testing/mythtv/trunk/mythzoneminder/PKGBUILD
index eee2306..abd7902 100644
--- a/abs/core-testing/mythtv/trunk/mythzoneminder/PKGBUILD
+++ b/abs/core-testing/mythtv/trunk/mythzoneminder/PKGBUILD
@@ -1,5 +1,5 @@
 pkgname=mythzoneminder-svn
-pkgver=21228
+pkgver=21333
 pkgrel=1
 pkgdesc="Integrates ZoneMinder into MythTV"
 url="http://www.mythtv.org"
-- 
cgit v0.12


From 4a416bea72be751fe503edebe21c8708c0e5dce4 Mon Sep 17 00:00:00 2001
From: Cecil Hugh Watson <knoppmyth@gmail.com>
Date: Mon, 17 Aug 2009 21:11:25 -0700
Subject: MythTV:Latest -fixes.  Ensure /etc/systemconfig is writeable by
 mythtv.

---
 abs/core-testing/mythtv/stable/mythtv/PKGBUILD       | 2 +-
 abs/core-testing/mythtv/stable/mythtv/mythtv.install | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/abs/core-testing/mythtv/stable/mythtv/PKGBUILD b/abs/core-testing/mythtv/stable/mythtv/PKGBUILD
index e33bb1f..f6114c4 100644
--- a/abs/core-testing/mythtv/stable/mythtv/PKGBUILD
+++ b/abs/core-testing/mythtv/stable/mythtv/PKGBUILD
@@ -1,6 +1,6 @@
 pkgname=mythtv
 pkgver=0.21
-pkgrel=80
+pkgrel=81
 pkgdesc="A Homebrew PVR project"
 arch=('i686' 'x86_64')
 depends=('bash' 'mysql-clients>=5.0' 'qt3' 'lame' 'lirc-utils' 'ffmpeg'
diff --git a/abs/core-testing/mythtv/stable/mythtv/mythtv.install b/abs/core-testing/mythtv/stable/mythtv/mythtv.install
index d43acf8..db1da94 100644
--- a/abs/core-testing/mythtv/stable/mythtv/mythtv.install
+++ b/abs/core-testing/mythtv/stable/mythtv/mythtv.install
@@ -37,6 +37,8 @@ post_upgrade() {
 		mkdir -p /var/log/mythv
 		chown -R mythtv /var/log/mythtv
 	fi
+	chown root.mythtv /etc/systemconfig
+	chmod 664 /etc/systemconfig
 }
 pre_remove () {
 	pre_upgrade
-- 
cgit v0.12