From a704dafea9f77d425a0a48b3087d357fc551aa2d Mon Sep 17 00:00:00 2001
From: Cecil <knoppmyth@gmail.com>
Date: Thu, 24 Feb 2011 18:05:29 -0800
Subject: mythstream:Patch for 0.24.

---
 abs/core/mythstream/PKGBUILD              |  10 +-
 abs/core/mythstream/mythstream.0.24.patch | 529 ++++++++++++++++++++++++++++++
 abs/core/mythstream/mythstream.patch      |  12 -
 3 files changed, 534 insertions(+), 17 deletions(-)
 create mode 100644 abs/core/mythstream/mythstream.0.24.patch
 delete mode 100644 abs/core/mythstream/mythstream.patch

diff --git a/abs/core/mythstream/PKGBUILD b/abs/core/mythstream/PKGBUILD
index 5137b99..df8dcdb 100644
--- a/abs/core/mythstream/PKGBUILD
+++ b/abs/core/mythstream/PKGBUILD
@@ -4,13 +4,13 @@
 
 pkgname=mythstream
 pkgver=0.18_3
-pkgrel=10
+pkgrel=11
 pkgdesc="Unofficial MythTV plugin for Internet audio and video streams."
 arch=('i686' 'x86_64')
 url="http://home.kabelfoon.nl/~moongies/streamtuned.html"
 license=('GPL')
 depends=('mythtv' 'perl-xml-simple' 'fftw' 'fftw2' 'perl-xml-xql')
-source=("http://home.kabelfoon.nl/~moongies/sw9vc4htz2/mythstream_mythtv-r21640.tar.gz" "mythstream.patch" "streams.res")
+source=("http://home.kabelfoon.nl/~moongies/sw9vc4htz2/mythstream_mythtv-r21640.tar.gz" "mythstream.0.24.patch" "streams.res")
 md5sums=('')
 install=mythstream.install
 groups=('mythtv-extras')
@@ -18,9 +18,9 @@ install=mythstream.install
 
 build() {
    cd $startdir/src/mythstream_mythtv-r21640
-   ln -s ../../../mythtv/stable-0.23/mythtv/src/mythtv/libs/lib* .
+   ln -s ../../../mythtv/stable-0.24/mythtv/src/mythtv/mythtv/libs/lib* .
 
-   patch -p1 < ../mythstream.patch || return 1
+   patch -p1 < ../mythstream.0.24.patch || return 1
 
    export QTDIR=/usr/lib/qt
    export PATH=$QTDIR/bin:$PATH
@@ -33,5 +33,5 @@ build() {
 }
 
 md5sums=('ba354b83fefe6028c5379fb832a44b6a'
-         '0131d9e05b55141357bc66e2a88a8132'
+         '69804486cde663586283cf2a226f0ed4'
          'b7fb47a56b6809938f237632174faeb2')
diff --git a/abs/core/mythstream/mythstream.0.24.patch b/abs/core/mythstream/mythstream.0.24.patch
new file mode 100644
index 0000000..d518c97
--- /dev/null
+++ b/abs/core/mythstream/mythstream.0.24.patch
@@ -0,0 +1,529 @@
+diff -ruaN mythstream_mythtv-r21640.orig/libs/harvester.h mythstream_mythtv-r21640/libs/harvester.h
+--- mythstream_mythtv-r21640.orig/libs/harvester.h	2009-08-30 21:46:35.000000000 +0000
++++ mythstream_mythtv-r21640/libs/harvester.h	2011-02-25 01:50:53.000000000 +0000
+@@ -23,7 +23,7 @@
+ #include <q3process.h>
+ #include <qthread.h>
+ #include <q3process.h>
+-#include <qhttp.h>
++#include <QtNetwork/qhttp.h>
+ #include <q3dict.h>
+ #include <qmap.h>
+ //Added by qt3to4:
+diff -ruaN mythstream_mythtv-r21640.orig/libs/player.xml mythstream_mythtv-r21640/libs/player.xml
+--- mythstream_mythtv-r21640.orig/libs/player.xml	2009-08-31 20:16:28.000000000 +0000
++++ mythstream_mythtv-r21640/libs/player.xml	2011-02-25 00:36:30.000000000 +0000
+@@ -341,11 +341,6 @@
+       </item>
+ 
+       <item>
+-          <name>-vo</name>
+-          <value>xv,</value>
+-      </item>
+-  
+-      <item>
+           <name>-user-agent</name>
+           <value>QuickTime/0</value>
+       </item>
+diff -ruaN mythstream_mythtv-r21640.orig/libs/streamconfig.cpp mythstream_mythtv-r21640/libs/streamconfig.cpp
+--- mythstream_mythtv-r21640.orig/libs/streamconfig.cpp	2009-09-02 14:40:18.000000000 +0000
++++ mythstream_mythtv-r21640/libs/streamconfig.cpp	2011-02-25 01:50:45.000000000 +0000
+@@ -46,7 +46,7 @@
+   
+ Window hierarchy
+   StreamTunedConfig: main config window with "stream" and "storage" tabs  //StreamTuned only
+-  gContext->GetMainWindow() // MythTV only
++  GetMythMainWindow() // MythTV only
+     StreamConfig: stream configuration handler (stream tab)
+       StorageGroup: StreamConfig goupBox with storage controls
+       StreamEditGroup: StreamConfig groupBox with stream property edit boxes
+diff -ruaN mythstream_mythtv-r21640.orig/libs/streams.res mythstream_mythtv-r21640/libs/streams.res
+--- mythstream_mythtv-r21640.orig/libs/streams.res	1970-01-01 00:00:00.000000000 +0000
++++ mythstream_mythtv-r21640/libs/streams.res	2011-02-25 01:51:06.000000000 +0000
+@@ -0,0 +1,281 @@
++
++
++[item]
++Interaction
++Apple movie trailers
++whatever
++trailers
++*apple
++
++[item]
++Interaction
++Browse Shoutcast genres
++http://www.shoutcast.com
++[emptystring]
++*shoutcast/menu
++
++[item]
++Interaction
++Uitzending gemist - laatste uitzendingen (Dutch)
++http://www.uitzendinggemist.nl
++Uitzending gemist selectie
++omroep/menu
++
++[item]
++Interaction
++World Wide Media Project
++[emptystring]
++[emptystring]
++*wwmp/menu
++
++[item]
++Interaction
++tv-links - Monty Python's Flying Circus
++http://tv-links.co.uk/listings/1/2526
++[emptystring]
++tvlinks/listing
++
++[item]
++Interaction
++wwiTV list
++http://wwitv.com/television/tvbar.htm
++List of television stations
++wwitv/countries
++
++[item]
++Podcast feeds
++Beercasting
++http://beercasting.com/rss.xml
++(podcast)
++podcast
++
++[item]
++Podcast feeds
++Feed me weird things
++http://del.icio.us/rss/audio/feedmeweirdthings
++(podcast) http://del.icio.us/rss/audio/feedmeweirdthings
++rdfcast
++
++[item]
++Podcast feeds
++SETI Institute
++http://podcast.seti.org/index.xml
++podcast
++podcast
++
++[item]
++Radio
++BBC World Service
++http://www.bbc.co.uk/worldservice/meta/tx/nb/live_news_au_nb.ram
++International
++[emptystring]
++
++[item]
++Radio
++DR R&B, Denmark
++http://www.dr.dk/netradio/Metafiler/ASX/DR_RogB_128.asx
++Copenhagen, Denmark
++[emptystring]
++
++[item]
++Radio
++Energy Black, Switzerland
++http://broadcast.infomaniak.ch/energyblack-high.mp3.m3u
++Zurich, Switzerland
++[emptystring]
++
++[item]
++Radio
++Fun Radio, belgium
++http://www.funradio.be/funradiobe-low.high.pls
++[emptystring]
++[emptystring]
++
++[item]
++Radio
++Juventus Radio
++http://live.juventus.hu:8000/live.m3u
++Budapest, Hungary
++[emptystring]
++
++[item]
++Radio
++Shoutcast Country
++http://www.shoutcast.com/directory/index.phtml?sgenre=Country&numresult=50
++Country music stations
++shoutcast
++
++[item]
++Radio
++Shoutcast Rock
++http://www.shoutcast.com/directory/index.phtml?sgenre=Rock&numresult=50
++Shoutcast Rock stations
++shoutcast
++
++[item]
++Radio
++The Voice, Norway
++http://213.158.233.199:6006/listen.pls
++Oslo, Norway
++[emptystring]
++
++[item]
++Radio
++WGBH, Boston
++http://streams.wgbh.org/classical.pls
++Boston, Massachusetts
++[emptystring]
++
++[item]
++Radio
++WholeWheatRadio stream
++http://64.62.252.134:2680/listen.pls
++[emptystring]
++[emptystring]
++
++[item]
++TV
++Holland Doc
++mms://livemedia.omroep.nl/vprohollanddoc-bb
++Nederland 4 themakanaal
++[emptystring]
++
++[item]
++TV
++NASA TV
++http://www.nasa.gov/ram/35037main_portal.ram
++[emptystring]
++[emptystring]
++
++[item]
++TV
++NRK News TV
++mms://media00.nrk.no/mms2/nydi/AutoEnc/mn1840.wmv
++Norwegen
++[emptystring]
++
++[item]
++TV
++National Nine News TV
++mms://broadband.netshow.ninemsn.com.au/broadband/news/story1.wmv
++Australia
++[emptystring]
++
++[item]
++TV
++RBC TV
++http://tv.gldn.net:80/rbc
++Russia
++[emptystring]
++
++[item]
++TV
++Tweede Kamer
++mms://213.75.12.78/TKStream3
++Dutch Parliament
++[emptystring]
++
++[item]
++TV
++Uitzending gemist RSS feed
++http://www.uitzendinggemist.nl/index.php/rss
++Laatste uitzendingen
++omroep/rss
++
++[item]
++TV
++United Nations TV
++rtsp://a4.l878435134.c8784.g.lr.akamaistream.net/live/D/4/8784/v0001/reflector:35134
++[emptystring]
++[emptystring]
++
++[item]
++TV
++VPro 3Voor12 Central TV
++mms://livemedia.omroep.nl/vpro3voor12tvcentral-bb
++http://3voor12.vpro.nl
++[emptystring]
++
++[item]
++TV
++VPro 3Voor12 on Stage TV
++mms://livemedia.omroep.nl/vpro3voor12tvonstage-bb
++[emptystring]
++[emptystring]
++
++[item]
++TV
++YLE 24 News TV
++http://ra.yle.fi/ramgen/yle24/video/uusin_rk.rm
++Finland
++[emptystring]
++
++[item]
++TV
++Yomiuri News TV
++http://www.yomiuri.co.jp/stream/vnews/vnews-w.asx
++Japan
++[emptystring]
++
++[item]
++Video
++DailyMotion custom search
++http://www.dailymotion.com/rss/relevance/search/<:search term::funny:>/<:page::1:>
++Edit search term with virtual keyboard
++dailymotion/playall
++
++[item]
++Video
++DailyMotion playlist demo: Alicia Keys Live
++http://www.dailymotion.com/rss/relevance/search/Alicia+Keys+live/1
++Mark streams (M) and play
++dailymotion/playall
++
++[item]
++Video
++Dailymotion download and play: VH1/1
++http://www.dailymotion.com/rss/relevance/search/vh1/1
++[emptystring]
++dailymotion/feed
++
++[item]
++Video
++Dailymotion playlist demo: Amy Winehouse
++http://www.dailymotion.com/rss/relevance/search/Amy+Winehouse+live/1
++Mark streams (M) and play
++dailymotion/playall
++
++[item]
++Video
++YouTube top viewed today
++http://youtube.com/rss/global/top_viewed_today.rss
++Voor andere feeds zie youtube
++youtube/feed
++
++[item]
++stream lists
++Icecast list
++http://dir.xiph.org/yp.xml
++Harvested with icecast.pl script
++icecast
++
++[item]
++stream lists
++OperaCast list
++http://www.operacast.com/opstations.htm
++Stationlist from www.operacast.com
++operacast
++
++[item]
++stream lists
++Operanut list (default parser)
++http://operanut.com/radio.htm
++Some dead streams
++[emptystring]
++
++[item]
++stream lists
++Robins BBC parser
++ask the parser :)
++BBC parsing by Robin Gilks
++*bbc/robins_links
+diff -ruaN mythstream_mythtv-r21640.orig/mythstream/main.cpp mythstream_mythtv-r21640/mythstream/main.cpp
+--- mythstream_mythtv-r21640.orig/mythstream/main.cpp	2009-09-02 16:40:49.000000000 +0000
++++ mythstream_mythtv-r21640/mythstream/main.cpp	2011-02-25 01:50:45.000000000 +0000
+@@ -57,12 +57,12 @@
+ 
+     if (sel == "stream_config")
+     {
+-       StreamConfig config(gContext->GetMainWindow(), "stream", streamStorage, repos);
++       StreamConfig config(GetMythMainWindow(), "stream", streamStorage, repos);
+        config.exec();
+     }
+     else if (sel == "storage_config")
+     {
+-       StorageConfig config(gContext->GetMainWindow(), "storage", streamStorage, repos);
++       StorageConfig config(GetMythMainWindow(), "storage", streamStorage, repos);
+        config.exec();
+     }
+ 
+@@ -149,7 +149,7 @@
+ void runStream(void)
+ {
+     GetMythUI()->AddCurrentLocation("mythstream");
+-    MythStream stream(gContext->GetMainWindow(), "stream");
++    MythStream stream(GetMythMainWindow(), "stream");
+     stream.exec();
+     GetMythUI()->RemoveCurrentLocation( );
+ }
+diff -ruaN mythstream_mythtv-r21640.orig/mythstream/mythstream.cpp mythstream_mythtv-r21640/mythstream/mythstream.cpp
+--- mythstream_mythtv-r21640.orig/mythstream/mythstream.cpp	2009-09-02 21:22:33.000000000 +0000
++++ mythstream_mythtv-r21640/mythstream/mythstream.cpp	2011-02-25 01:50:45.000000000 +0000
+@@ -499,7 +499,7 @@
+       QString parameter;
+       int res;
+ 
+-      popBox = new MythPopupBox(gContext->GetMainWindow(), "");
++      popBox = new MythPopupBox(GetMythMainWindow(), "");
+       popBox->addLabel(label);
+ 
+       editBox = new MythLineEdit(popBox, "");
+@@ -545,7 +545,7 @@
+       QString parameter;
+       int res;
+       
+-      popBox = new MythPopupBox(gContext->GetMainWindow(), "");
++      popBox = new MythPopupBox(GetMythMainWindow(), "");
+       popBox->addLabel("                  Edit Stream Item                 ");
+ 
+       MythLineEdit *folderBox = new MythLineEdit(popBox, "");
+@@ -1295,7 +1295,7 @@
+   bool handled;
+   QStringList actions;
+ 
+-  handled = gContext->GetMainWindow()->TranslateKeyPress("Stream", e, actions);
++  handled = GetMythMainWindow()->TranslateKeyPress("Stream", e, actions);
+   handled = false;
+   
+   for (int i = 0; i < actions.size() && !handled; i++)
+diff -ruaN mythstream_mythtv-r21640.orig/mythstream/mythstream.pro mythstream_mythtv-r21640/mythstream/mythstream.pro
+--- mythstream_mythtv-r21640.orig/mythstream/mythstream.pro	2009-08-26 07:31:07.000000000 +0000
++++ mythstream_mythtv-r21640/mythstream/mythstream.pro	2011-02-25 01:50:37.000000000 +0000
+@@ -1,3 +1,4 @@
++include ( ../mythconfig.mak )
+ include ( ../settings.pro )
+ 
+ TEMPLATE = lib
+diff -ruaN mythstream_mythtv-r21640.orig/parsers/youtube/vid.pl mythstream_mythtv-r21640/parsers/youtube/vid.pl
+--- mythstream_mythtv-r21640.orig/parsers/youtube/vid.pl	2009-09-02 22:18:49.000000000 +0000
++++ mythstream_mythtv-r21640/parsers/youtube/vid.pl	2011-02-25 01:51:16.000000000 +0000
+@@ -61,9 +61,11 @@
+ 
+ my $a, $b;
+ 
+-if ( ($a, $b) = $data =~ /swfArgs\s\=\s\{.*?"t":\s*"([^"]+)".+?"video_id":\s*"([^"]+)"/ )
++if ( ($a, $b) = $data =~ /'SWF_ARGS'\s*\:\s*\{.*?"t":\s*"([^"]+)".+?"video_id":\s*"([^"]+)"/ )
+ {
+-      $url = "http://www.youtube.com/get_video?video_id=$b&t=$a";
++      my $url = "http://www.youtube.com/get_video?video_id=$b&t=$a";
++
++      my $fmt_h264 = ($data =~ /'SWF_URL'\s*:\s*.*\.flash\.canPlayH264Videos()/);
+ 
+       $item = $doc->createElement('item');
+       $root->appendChild($item);
+@@ -73,6 +75,17 @@
+       $item->appendChild( newNode('descr', "") );
+       $item->appendChild( newNode('handler', "") );
+ 
++      if ($fmt_h264)
++      {
++         $item = $doc->createElement('item');
++         $root->appendChild($item);
++         
++         $item->appendChild( newNode('name', "play: $sname [H.264]") );
++         $item->appendChild( newNode('url',  $url . '&fmt=18') );
++         $item->appendChild( newNode('descr', "") );
++         $item->appendChild( newNode('handler', "") );
++      }
++
+       if (! ($playlist_enable == 1) )
+       {
+          $item = $doc->createElement('item');
+@@ -82,6 +95,17 @@
+          $item->appendChild( newNode('url',  $url) );
+          $item->appendChild( newNode('descr', "") );
+          $item->appendChild( newNode('handler', "STREAM_DL") );
++
++         if ($fmt_h264)
++         {
++            $item = $doc->createElement('item');
++            $root->appendChild($item);
++            
++            $item->appendChild( newNode('name', "download: $sname [H.264]") );
++            $item->appendChild( newNode('url',  $url . '&fmt=18') );
++            $item->appendChild( newNode('descr', "") );
++            $item->appendChild( newNode('handler', "STREAM_DL") );
++         }
+       }
+ }
+ 
+diff -ruaN mythstream_mythtv-r21640.orig/parsers/youtube/youvid.pl mythstream_mythtv-r21640/parsers/youtube/youvid.pl
+--- mythstream_mythtv-r21640.orig/parsers/youtube/youvid.pl	2009-09-02 22:18:49.000000000 +0000
++++ mythstream_mythtv-r21640/parsers/youtube/youvid.pl	2011-02-25 01:51:16.000000000 +0000
+@@ -65,10 +65,12 @@
+ 
+ my $a, $b;
+ 
+-if ( ($a, $b) = $data =~ /swfArgs\s\=\s\{.*?"t":\s*"([^"]+)".+?"video_id":\s*"([^"]+)"/ )
++if ( ($a, $b) = $data =~ /'SWF_ARGS'\s*\:\s*\{.*?"t":\s*"([^"]+)".+?"video_id":\s*"([^"]+)"/ )
+ {
+       $url = "http://www.youtube.com/get_video?video_id=$b&t=$a";
+ 
++      my $fmt_h264 = ($data =~ /'SWF_URL'\s*:\s*.*\.flash\.canPlayH264Videos()/);
++
+       $item = $doc->createElement('item');
+       $root->appendChild($item);
+       
+@@ -77,6 +79,17 @@
+       $item->appendChild( newNode('descr', "") );
+       $item->appendChild( newNode('handler', "") );
+ 
++      if ($fmt_h264)
++      {
++         $item = $doc->createElement('item');
++         $root->appendChild($item);
++         
++         $item->appendChild( newNode('name', "play: $sname [H.264]") );
++         $item->appendChild( newNode('url',  $url . '&fmt=18') );
++         $item->appendChild( newNode('descr', "") );
++         $item->appendChild( newNode('handler', "") );
++      }
++
+       $item = $doc->createElement('item');
+       $root->appendChild($item);
+       
+@@ -84,6 +97,17 @@
+       $item->appendChild( newNode('url',  $url) );
+       $item->appendChild( newNode('descr', "") );
+       $item->appendChild( newNode('handler', "STREAM_DL") );
++
++      if ($fmt_h264)
++      {
++         $item = $doc->createElement('item');
++         $root->appendChild($item);
++         
++         $item->appendChild( newNode('name', "download: $sname [H.264]") );
++         $item->appendChild( newNode('url',  $url . '&fmt=18') );
++         $item->appendChild( newNode('descr', "") );
++         $item->appendChild( newNode('handler', "STREAM_DL") );
++      }
+ }
+ 
+ print $head->toString;
+diff -ruaN mythstream_mythtv-r21640.orig/settings.pro mythstream_mythtv-r21640/settings.pro
+--- mythstream_mythtv-r21640.orig/settings.pro	2009-09-02 22:07:04.000000000 +0000
++++ mythstream_mythtv-r21640/settings.pro	2011-02-25 01:51:26.000000000 +0000
+@@ -14,15 +14,15 @@
+     RUNPREFIX = $$PREFIX
+ }
+ 
+-INCLUDEPATH += $${PREFIX}/include
+-INCLUDEPATH += $${PREFIX}/include/mythtv
+-INCLUDEPATH += $${PREFIX}/include/mythtv/libmythdb
+-INCLUDEPATH += $${PREFIX}/include/mythtv/libmythui
+-INCLUDEPATH += $${PREFIX}/include/mythtv/libmyth
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythdb
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythui
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmyth
+ 
+-INCLUDEPATH += $${PREFIX}/include/qt4/Qt
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/qt4/Qt
+ 
+-#INCLUDEPATH *= /usr/local/include
++#INCLUDEPATH *= $${SYSROOT}/usr/local/include
+ 
+ DEFINES += _GNU_SOURCE
+ DEFINES += PREFIX=\\\"$${RUNPREFIX}\\\"
+@@ -31,7 +31,3 @@
+ QMAKE_LFLAGS -= -Wl,--no-undefined
+ #QMAKE_LFLAGS -= --no-undefined
+ QMAKE LFLAGS += -DQT_THREAD_SUPPORT
+-
+-release {
+-  QMAKE_CXXFLAGS_RELEASE = -O2 -fomit-frame-pointer
+-}
diff --git a/abs/core/mythstream/mythstream.patch b/abs/core/mythstream/mythstream.patch
deleted file mode 100644
index facc1aa..0000000
--- a/abs/core/mythstream/mythstream.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur mythstream_mythtv-r21640-old/libs/harvester.h mythstream_mythtv-r21640-new/libs/harvester.h
---- mythstream_mythtv-r21640-old/libs/harvester.h	2009-10-13 14:49:54.000000000 -0700
-+++ mythstream_mythtv-r21640-new/libs/harvester.h	2009-10-13 14:50:38.000000000 -0700
-@@ -23,7 +23,7 @@
- #include <q3process.h>
- #include <qthread.h>
- #include <q3process.h>
--#include <qhttp.h>
-+#include <QtNetwork/qhttp.h>
- #include <q3dict.h>
- #include <qmap.h>
- //Added by qt3to4:
-- 
cgit v0.12

