Объявление

Свернуть
Пока нет объявлений.

Azbox HD и генератор плэйлиста для Картина.тв

Свернуть
X
 
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения

  • Azbox HD и генератор плэйлиста для Картина.тв

    Откроем отдельную тему для решения этой проблемы...
    Php скрипты (приложенны) работают на вебсервере.., но отказываются работать в среде Azbox

    «…нет правды на земле, но нет её и выше…»
    Spoiler
    Azbox HD Premium - OpenPLi 3, VU+ Solo2 - VTi, MK Gigital XP1000 - OpenPLi
    Dune HD Smart H1, Dune Micro HD 101, Dune HD 301, Dune HD BAse 3D, mag250 micro
    Samsung UE46-C-7700 Internet@TV, Pioneer VSX 921-K 7.1 -> 5.1
    AppleTV 2, iPhone 2G, iPhone 3GS, iPhone 4G, iPad 2, iPad 3,
    PS3, PSP 1-2, PS-Vita, Wii


  • #2
    Re: Azbox HD и генератор плэйлиста для Картина.тв

    покажи ошибку, что именно не работает, я знаю что у меня на азере всё работало.
    .м3у на азере не генерировал, за ненадобностью
    Обсуждение всех нюансов развода в Германии. www.razvod.net

    Комментарий


    • #3
      Re: Azbox HD и генератор плэйлиста для Картина.тв

      [quote author=nitrogen14 link=topic=5381.msg62627#msg62627 date=1266476056]
      покажи ошибку, что именно не работает, я знаю что у меня на азере всё работало.
      .м3у на азере не генерировал, за ненадобностью
      [/quote]

      Код:
      <br />
      <b>Fatal error</b>: Call to undefined function preg_replace() in <b>/MMP/httpd/ktv/playlist.php</b> on line <b>14</b><br />
      Я тоже его на сервере Азера никогда неиспользовал.., а вот щас потребовалось и выясняется что непашет..

      «…нет правды на земле, но нет её и выше…»
      Spoiler
      Azbox HD Premium - OpenPLi 3, VU+ Solo2 - VTi, MK Gigital XP1000 - OpenPLi
      Dune HD Smart H1, Dune Micro HD 101, Dune HD 301, Dune HD BAse 3D, mag250 micro
      Samsung UE46-C-7700 Internet@TV, Pioneer VSX 921-K 7.1 -> 5.1
      AppleTV 2, iPhone 2G, iPhone 3GS, iPhone 4G, iPad 2, iPad 3,
      PS3, PSP 1-2, PS-Vita, Wii

      Комментарий


      • #4
        Re: Azbox HD и генератор плэйлиста для Картина.тв

        Ето точно те скрипты что мы дорабативали?
        Azbox Premium, FW: 0.9.4585
        HDD:WD 1TB EADS
        Wii+Wiikey

        Комментарий


        • #5
          Re: Azbox HD и генератор плэйлиста для Картина.тв

          Да. На вебсервере ведь работает.. без ошибок.. ???

          «…нет правды на земле, но нет её и выше…»
          Spoiler
          Azbox HD Premium - OpenPLi 3, VU+ Solo2 - VTi, MK Gigital XP1000 - OpenPLi
          Dune HD Smart H1, Dune Micro HD 101, Dune HD 301, Dune HD BAse 3D, mag250 micro
          Samsung UE46-C-7700 Internet@TV, Pioneer VSX 921-K 7.1 -> 5.1
          AppleTV 2, iPhone 2G, iPhone 3GS, iPhone 4G, iPad 2, iPad 3,
          PS3, PSP 1-2, PS-Vita, Wii

          Комментарий


          • #6
            Re: Azbox HD и генератор плэйлиста для Картина.тв

            прицвхем тут вебсервер, скрипты которые исправлял chico работали на азере, там один скрипт с м3у он не переделывал
            Обсуждение всех нюансов развода в Германии. www.razvod.net

            Комментарий


            • #7
              Re: Azbox HD и генератор плэйлиста для Картина.тв

              [quote author=nitrogen14 link=topic=5381.msg62652#msg62652 date=1266480972]
              прицвхем тут вебсервер, скрипты которые исправлял chico работали на азере, там один скрипт с м3у он не переделывал
              [/quote]

              1. Я так думал что на азере обычный сервер с поддержкой PHP... и свои странички можно на нём запускать так же как на вебсервере.
              Вот кстати и коммент от consros мне в помощчто ничего осбенного то ненадо.. кромме как поддержки PHP4 и выше (на Азере установлен с поддржкой PHP5)
              Должно работать под любым веб-сервером, с поддержкой пхп версии 4 и выше.
              http://www.pristavka.de/index.php/topic,1276.15.html
              2. Специально под нужды Азера подгоняли гениратор листа http_stream.txt и этот генератор работает как на вебсервере так и на сервере Азера без ошибок (и в данный моммент). Но использовать его можно только сгенерировав лист и закинув его в DISK2 по FTP (к сожелению этот генератор неподходит для генератции через меню настроек Азера так как см. пункт 3.).

              3. Опенсатовскиe софтописцы воспользовались обычным генератором m3u листа который находится по адресу kartina.pristavka.de/new , переделывается в http_stream.txt и кидается затем в DISK2.

              4. Где-то в Январе картиновцы что-то сменили у себя на сервере (об этом можно почитать по линку в пункте 1.) и нужен был новый правленный "ktvFunctions.inc" Причом и для генератора http_stream.txt и для генератора playlist.m3u


              Вот теперь вопрос.. если ни сервер виноват то тогда что?

              «…нет правды на земле, но нет её и выше…»
              Spoiler
              Azbox HD Premium - OpenPLi 3, VU+ Solo2 - VTi, MK Gigital XP1000 - OpenPLi
              Dune HD Smart H1, Dune Micro HD 101, Dune HD 301, Dune HD BAse 3D, mag250 micro
              Samsung UE46-C-7700 Internet@TV, Pioneer VSX 921-K 7.1 -> 5.1
              AppleTV 2, iPhone 2G, iPhone 3GS, iPhone 4G, iPad 2, iPad 3,
              PS3, PSP 1-2, PS-Vita, Wii

              Комментарий


              • #8
                Re: Azbox HD и генератор плэйлиста для Картина.тв

                Помоему то что я делал как раз было не для щебсервера а для азера, т.к. на щебсервере все и так работало а на азере нет, потому как на азере видимо кастрированний пhп стоит, поетому он и не знает такиh функзий как preg_replace, именно поетому я и пщеределивал скрипты, и я думаю если ты возмеш мной переделанний скрипт он наверное будит работать! но ето толко мои предположения, я уже толком бне помню что конкретно я изменял, но если что могу вечером глянуть. Возми для начала мои скрипты и проверь иh на азере!

                З.Ы. на Азере не обычний PHP стоит поетому не все так просто в php запускать на азере!
                Azbox Premium, FW: 0.9.4585
                HDD:WD 1TB EADS
                Wii+Wiikey

                Комментарий


                • #9
                  Re: Azbox HD и генератор плэйлиста для Картина.тв

                  [quote author=chico link=topic=5381.msg62673#msg62673 date=1266488162]
                  З.Ы. на Азере не обычний PHP стоит поетому не все так просто в php запускать на азере!
                  [/quote]

                  Ок.. Спасибо! Ты только подтвердил моё предположение.. что виноват всётоки сервер.

                  Ну тогда вопрос Что именно можно (нужно) взять? ktvFunctions.inc я пробывал.. таже проблема..
                  Я так понимаю Азерс спотыкается (судя по ошибке) именно в месте где генерируется структура листа. Или?

                  «…нет правды на земле, но нет её и выше…»
                  Spoiler
                  Azbox HD Premium - OpenPLi 3, VU+ Solo2 - VTi, MK Gigital XP1000 - OpenPLi
                  Dune HD Smart H1, Dune Micro HD 101, Dune HD 301, Dune HD BAse 3D, mag250 micro
                  Samsung UE46-C-7700 Internet@TV, Pioneer VSX 921-K 7.1 -> 5.1
                  AppleTV 2, iPhone 2G, iPhone 3GS, iPhone 4G, iPad 2, iPad 3,
                  PS3, PSP 1-2, PS-Vita, Wii

                  Комментарий


                  • #10
                    Re: Azbox HD и генератор плэйлиста для Картина.тв

                    не азер спотыкается а пhп что на азере не знаэт такой функции, её нужно заменит например функцией str_replace
                    Azbox Premium, FW: 0.9.4585
                    HDD:WD 1TB EADS
                    Wii+Wiikey

                    Комментарий


                    • #11
                      Re: Azbox HD и генератор плэйлиста для Картина.тв

                      [quote author=chico link=topic=5381.msg62688#msg62688 date=1266491627]
                      не азер спотыкается а пhп что на азере не знаэт такой функции, её нужно заменит например функцией str_replace
                      [/quote]

                      Ну я и имел ввиду что спотыкается PHP на Азере.. Можеш по подробнее с функцией str_replace разяснить.. Если с html я хоть немного разбираюсь.. то php для меня тёмный лес..

                      «…нет правды на земле, но нет её и выше…»
                      Spoiler
                      Azbox HD Premium - OpenPLi 3, VU+ Solo2 - VTi, MK Gigital XP1000 - OpenPLi
                      Dune HD Smart H1, Dune Micro HD 101, Dune HD 301, Dune HD BAse 3D, mag250 micro
                      Samsung UE46-C-7700 Internet@TV, Pioneer VSX 921-K 7.1 -> 5.1
                      AppleTV 2, iPhone 2G, iPhone 3GS, iPhone 4G, iPad 2, iPad 3,
                      PS3, PSP 1-2, PS-Vita, Wii

                      Комментарий


                      • #12
                        Re: Azbox HD и генератор плэйлиста для Картина.тв

                        так глян просто в скрипт которий выкладивали, тот что я подправил, там разнизу и увидиш, сравни свой с моим. Просто сейчас я не помню что там делал. Смогу только дома глянуть, счас то я на работе.
                        Azbox Premium, FW: 0.9.4585
                        HDD:WD 1TB EADS
                        Wii+Wiikey

                        Комментарий


                        • #13
                          Re: Azbox HD и генератор плэйлиста для Картина.тв

                          это то, что лежит на сервере (м3у) playlist.php

                          Код:
                          <?php
                          header("Content-Type: audio/mpegurl");
                          header("Content-Disposition: attachment; filename=playlist.m3u");
                          
                          require_once "ktvFunctions.inc";
                          
                          $user = isset($HTTP_GET_VARS['user']) ? $HTTP_GET_VARS['user'] : "148";
                          $pass = isset($HTTP_GET_VARS['pass']) ? $HTTP_GET_VARS['pass'] : "841";
                          
                          $ktvFunctions = new KtvFunctions($user, $pass);
                          $content = $ktvFunctions->getChannelsList();
                          
                          # compact all to a single line
                          $content = preg_replace('|\n|', '', $content);
                          
                          # no spaces between tags
                          $content = preg_replace('|>\s+|', '>', $content);
                          $content = preg_replace('|\s+<|', '<', $content);
                          
                          # parse out channels
                          preg_match_all('/<channel\s.*?id="(.*?)".*?title="(.*?)".*?idx="(.*?)".*?>/', $content, $matches);
                          $ids  = $matches[1];
                          $names = $matches[2];
                          $nums = $matches[3];
                          $path = getFullUrlPath();
                          
                          # generate header
                          print '#EXTM3U' . "\n";
                          print '#EXTVLCOPT:http-caching=1500' . "\n";
                          print '#EXTVLCOPT:http-reconnect=0' . "\n";
                          
                          # generate channel entries
                          for ($i = 0; $i < count($ids); $i++) {
                            print '#EXTINF:0,';
                            print $nums[$i] . ". " . $names[$i] . " (" . $ids[$i] . ")\n";
                            print $path . "stream.php?id=$ids[$i]&user=$user&pass=$pass\n";
                          }
                          
                          
                          # returns full URL of current script
                          function getFullUrlPath() { 
                            $protocol = strtolower($_SERVER['SERVER_PROTOCOL']);
                            $protocol = substr($protocol, 0, strpos($protocol, '/'));
                            $protocol .= "on" === $_SERVER['HTTPS'] ? "s" : "";
                            $port = "80" === $_SERVER['SERVER_PORT'] ? "" : (":" . $_SERVER['SERVER_PORT']);
                            $url = $protocol . "://" . $_SERVER['SERVER_NAME'] . "$port";
                            $path = $_SERVER['REQUEST_URI'];
                            $path = substr($path, 0, strrpos($path, '/') + 1);
                            return $url . $path;
                          }
                          
                          ?>
                          это на азере
                          Код:
                          <?php
                          header("Content-Type: audio/mpegurl");
                          header("Content-Disposition: attachment; filename=http_streams.txt");
                          
                          require_once "ktvFunctions.inc";
                          
                          $user = isset($HTTP_GET_VARS['user']) ? $HTTP_GET_VARS['user'] : "148";
                          $pass = isset($HTTP_GET_VARS['pass']) ? $HTTP_GET_VARS['pass'] : "841";
                          $timeshift = isset($HTTP_GET_VARS['timeshift']) ? $HTTP_GET_VARS['timeshift'] : "0";
                          
                          $ktvFunctions = new KtvFunctions($user, $pass);
                          
                          $timeshift = $ktvFunctions->setTimeShift($timeshift);
                          $content = $ktvFunctions->getChannelsList();
                          
                          # compact all to a single line
                          $content = str_replace("\n","",$content);
                          
                          # no spaces between tags
                          $content = str_replace('>[[:space:]]+', '>', $content);
                          $content = str_replace('[[:space:]]+<', '<', $content);
                          
                          # parse out channels
                          /*ereg('(<channel .*?id="(.*?)".*?title="(.*?)".*?idx="(.*?)".*?>)', $content, $matches);*/
                          $channels = explode('><',$content);
                          
                          $path = getFullUrlPath();
                          
                          foreach($channels as $k => $v) {
                          	if(strstr ($v,"channel ")) {
                          		//ereg('channel .*id="([^"]*)".*title="([^"]*)".*idx="([^"]*)".*', $v, $matches);
                          		ereg('id="([^"]*)"', $v, $matches_id);
                          		//$ids[]  = $matches_id[1];
                          		ereg('title="([^"]*)"', $v, $matches_name);
                          		//$names[] = $matches_name[1];
                          		ereg('idx="([^"]*)"', $v, $matches_idx);
                          		//$nums[] = $matches_idx[1];
                          		
                          	  print $matches_idx[1] . "," . $matches_name[1] . ",256, ";
                          	  print $path . "stream.php?id=".$matches_id[1]."&user=$user&pass=$pass&timeshift=0\n";
                          	}
                          }
                          
                          /*
                          # generate channel entries
                          for ($i = 0; $i < count($ids); $i++) {
                            print $nums[$i] . "," . $names[$i] . ",256, ";
                            print $path . "stream.php?id=$ids[$i]&user=$user&pass=$pass&timeshift=0\n";
                          }
                          */
                          
                          # returns full URL of current script
                          function getFullUrlPath() { 
                            $protocol = strtolower($_SERVER['SERVER_PROTOCOL']);
                            $protocol = substr($protocol, 0, strpos($protocol, '/'));
                            $protocol .= "on" === $_SERVER['HTTPS'] ? "s" : "";
                            $port = "80" === $_SERVER['SERVER_PORT'] ? "" : (":" . $_SERVER['SERVER_PORT']);
                            $url = $protocol . "://" . $_SERVER['HTTP_HOST'] . "$port";
                            $path = $_SERVER['REQUEST_URI'];
                            $path = substr($path, 0, strrpos($path, '/') + 1);
                            return $url . $path;
                          }
                          
                          ?>
                          Обсуждение всех нюансов развода в Германии. www.razvod.net

                          Комментарий


                          • #14
                            Re: Azbox HD и генератор плэйлиста для Картина.тв

                            код:
                            Код:
                            <?php
                            header("Content-Type: audio/mpegurl");
                            header("Content-Disposition: attachment; filename=playlist.m3u");
                            
                            require_once "ktvFunctions.inc";
                            
                            $user = isset($HTTP_GET_VARS['user']) ? $HTTP_GET_VARS['user'] : "148";
                            $pass = isset($HTTP_GET_VARS['pass']) ? $HTTP_GET_VARS['pass'] : "841";
                            $timeshift = isset($HTTP_GET_VARS['timeshift']) ? $HTTP_GET_VARS['timeshift'] : "0";
                            
                            $ktvFunctions = new KtvFunctions($user, $pass);
                            
                            $timeshift = $ktvFunctions->setTimeShift($timeshift);
                            $content = $ktvFunctions->getChannelsList();
                            
                            # compact all to a single line
                            $content = str_replace("\n","",$content);
                            
                            # no spaces between tags
                            $content = str_replace('>[[:space:]]+', '>', $content);
                            $content = str_replace('[[:space:]]+<', '<', $content);
                            
                            # parse out channels
                            $channels = explode('><',$content);
                            
                            $path = getFullUrlPath();
                            
                            print '#EXTM3U' . "\n";
                            //print '#EXTVLCOPT:http-caching=1500' . "\n";
                            //print '#EXTVLCOPT:http-reconnect=0' . "\n";
                            
                            $i=0;
                            
                            foreach($channels as $k => $v) {
                             $i=$i+1;
                            	if(strstr ($v,"channel ")) {
                            		//ereg('channel .*id="([^"]*)".*title="([^"]*)".*idx="([^"]*)".*', $v, $matches);
                            		ereg('id="([^"]*)"', $v, $matches_id);
                            		//$ids[]  = $matches_id[1];
                            		ereg('title="([^"]*)"', $v, $matches_name);
                            		//$names[] = $matches_name[1];
                            		ereg('idx="([^"]*)"', $v, $matches_idx);
                            		//$nums[] = $matches_idx[1];
                            		 print '#EXTINF:0,';
                               print $matches_idx[1] . ". " . $matches_name[1] . " (" .$matches_id[1]. ")\n";
                            	  print $path . "stream.php?id=".$matches_id[1]."&user=$user&pass=$pass&timeshift=0\n";
                            	}
                            }
                            
                            
                            # returns full URL of current script
                            function getFullUrlPath() { 
                              $protocol = strtolower($_SERVER['SERVER_PROTOCOL']);
                              $protocol = substr($protocol, 0, strpos($protocol, '/'));
                              $protocol .= "on" === $_SERVER['HTTPS'] ? "s" : "";
                              $port = "80" === $_SERVER['SERVER_PORT'] ? "" : (":" . $_SERVER['SERVER_PORT']);
                              $url = $protocol . "://" . $_SERVER['HTTP_HOST'] . "$port";
                              $path = $_SERVER['REQUEST_URI'];
                              $path = substr($path, 0, strrpos($path, '/') + 1);
                              return $url . $path;
                            }
                            
                            ?>
                            результат
                            должно заработать на азере
                            Вложения
                            Обсуждение всех нюансов развода в Германии. www.razvod.net

                            Комментарий


                            • #15
                              Re: Azbox HD и генератор плэйлиста для Картина.тв

                              Ну preg_replace я сменил.. но получаю ошибку в другой строке
                              Код:
                              <br />
                              <b>Fatal error</b>: Call to undefined function preg_match_all() in <b>/MMP/httpd/ktv/playlist.php</b> on line <b>21</b><br />
                              С твоим же файлом уже в бровзере получаю эту ошибку
                              Код:
                              Parse error: syntax error, unexpected $end in /MMP/httpd/ktv/playlist.php on line 59

                              «…нет правды на земле, но нет её и выше…»
                              Spoiler
                              Azbox HD Premium - OpenPLi 3, VU+ Solo2 - VTi, MK Gigital XP1000 - OpenPLi
                              Dune HD Smart H1, Dune Micro HD 101, Dune HD 301, Dune HD BAse 3D, mag250 micro
                              Samsung UE46-C-7700 Internet@TV, Pioneer VSX 921-K 7.1 -> 5.1
                              AppleTV 2, iPhone 2G, iPhone 3GS, iPhone 4G, iPad 2, iPad 3,
                              PS3, PSP 1-2, PS-Vita, Wii

                              Комментарий

                              Обработка...
                              X