Hatena::ブログ(Diary)

適当な何かの別館 このページをアンテナに追加 RSSフィード

2015-12-05

epgrecUNA 151114版用 fix1

http://www1.axfc.net/u/3578126

[変更内容]

  • PHP7対応のためSmartyをv2.6.29に変更
    これに伴い未定義変数の参照がらみを修正
    v3.1.27でも動作を確認したが念のためv2系列に留める
  • 録画一覧でのファイルダウンロードでタイムアウトで中断するのを修正

[備考]
JQueryも1.7.2までバージョンを上げれるのを確認したがepgrec上ではJQueryのファイル名にバージョンを加えているため今回は見送った。
ちなみに高速化が見込めるようです。

unyokunyok 2015/12/06 00:17 いつもお世話になっております。

録画サーバ刷新に伴い、新たにepgrec UNAを入れなおしたのですが、
簡易予約したあとサーバを再起動すると、その簡易予約が実行されない
という現象に遭遇しております。

何か心当たりはございますでしょうか?


また、自分でも動きを追ってみたいので、epgrec内において
atのキュー内容を生成する箇所を教えていただけると助かります。
(「Execution directory inaccessible」などのワードでgrepしても発見できませんでした)

unyokunyok 2015/12/06 00:28 ↑追記

再起動「前」であれば、簡易予約は正常に動作します。
再起動「後」になると、atにキューがあっても、録画が実行されません。

ko-setuko-setu 2015/12/06 18:03 毎度おせわになってます

Smarty-2.6.29ではPHP7.0はどうやら駄目っぽいっすね
ちょっと環境残してたのでお遊びがてらぶっこんでみました
クラスの宣言で弾かれてるようなので3系列に期待です


[error] 1766#0: *1 FastCGI sent in stderr:
"PHP message: PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP;
Smarty has a deprecated constructor in /usr/share/nginx/html/epgrec/Smarty/Smarty.class.php on line 64"
while reading response header from upstream,
client: 192.168.***.***, server: 192.168.***.***,
request: "GET /epgrec/install/step2.php HTTP/1.1",
upstream: "fastcgi://unix:/var/run/php/php7.0-fpm.sock:", host: "192.168.***.***", referrer: "http://192.168.***.***/epgrec/install/step1.php"

ko-setuko-setu 2015/12/06 18:31 度々すみません
たぶんSmartyの更新履歴よりここらへんかと追記です


Requirements
Smarty 3.x: PHP 5.2+
Smarty 2.x: PHP 4 or 5

===== 3.1.22 ===== tag was deleted because 3.1.22 did fail caused by the missing entry for smarty-temmplate-config in autoloader
(中略)
30.10.2014
- bugfix access to class constant by object like {$object::CONST} or variable class name {$class::CONST} did not work (forum 25301)

kataunakatauna 2015/12/06 20:36 >>unyok
>atのキュー内容を生成する箇所を教えていただけると助かります。
Reservation.class.phpです。ソース内を"AT"で検索してください。

"Execution directory inaccessible"は、"実行ディレクトリにアクセスできない"というATのエラーです。
ATのジョブの内容を直接確認した方が良いかと
あとepgrecUNAのメンテナンスの録画ストレージ一覧を確認してください。

>>ko-setu
>Smarty-2.6.29ではPHP7.0はどうやら駄目っぽいっすね
ChangeLogには対応の痕跡がありますしPHP7そのものがリリース直後なので今後に期待ってことで
だめでもSmarty3系列に入れ替えれば動くと思います。が構文解析エンジンが変更されているのでその辺は個々人で判断で(予約遷移一覧のテンプレを意図的に修正しなかったのでエラーが出るかも)

名前名前 2016/01/03 19:22 >>ko-setu
[PHP7 raises E_DEPRECATED use __construct for compatibility](https://github.com/smarty-php/smarty/commit/e97b7d136c5667262f0fc02cb8eb7112baa01811)
非推奨のコンストラクタは、Smarty-2.6.29で対応されているみたいですが、
/usr/share/nginx/html/epgrec/Smarty/Smarty.class.php on line 64
のコンストラクタは、public function __construct() になっていますか?

また、
・[Smarty 2.x: PHP 4 or 5](http://www.smarty.net/download)
・[Smarty requires a web server running PHP 4.0.6 or greater.](http://www.smarty.net/docsv2/en/installation.tpl)
はどちらが正しいのか問い合わせ中です。

https://github.com/smarty-php/smarty/issues/148

nyannyan 2016/01/19 19:55 epgrecUNA 151114版用 fix1でrecpt1 httpサーバ機能追加パッチ 新本家[c8688d7d6382]以降対応版を使っています。
録画ファイルにEPG情報も含めたいので、config.phpの$rec_cmdsを'sidEXT' => 'epg'のように書いていますが、録画ファイルの先頭から録画開始の余裕時間を過ぎて番組が始まる(PMTが切り替わる)と以降はEPG情報が含まれなくなっているみたいです。
何か私が指定を間違っているか、もしくは勘違いをしているところがあれば教えていだだけないでしょうか?

kataunakatauna 2016/01/20 22:32 ご報告の件、確認しました。
PMTのリスキャンでEPGのPIDが対象外にされてました。
やっつけで対処したのを試験中です。
今週末ぐらいに公開できるかと

EPGパッチの目的は、EPG取得時にTSファイルサイズを減らすためで
それ以外での利用は仕様外です。とはいえ2chなどの書き込みに呼応して
改良してきました。
今回も対処しましたが前記したように「やっつけ」なのでEPGに無関係な
PIDはリスキャンで消されてしまいます。

nyannyan 2016/01/23 14:59 やはり、PMTのリスキャンで外れてたんですね。確認ありがとうございます。
仕様外でやっつけ対処なのは重々承知です。細かい要望に応えていただいて感謝します。
公開を楽しみに待って、また自分でもソースを追っかけていじってみようと思います。

kataunakatauna 2016/01/23 19:26 「やっつけ」とかいってましたが風呂でPIDの増減への対処を思いついたので変更しました。

bbbbbb 2016/02/04 15:43 パス解くのに3日かかりましたw

t 2016/02/06 21:34 こちらのファイルのパスワードのヒントを教えてください。

tt 2016/02/06 21:47 2016/02/06 21:34に登校したtです。
このサイトを隅々まで読み、2週間かかってやっとダウンロードできました。
お騒がせしました。
ちょっと難し過ぎます。

l3tnunl3tnun 2016/02/14 00:45 こんばんは、いつも便利に使わせて頂いてます。
何件か要望があって書き込みさせていただきます。

EPGRec UNA のスマートフォン用の Web UI を作成しているのですが、何件かお願いがあります。
開発しているものは↓になります (EPGRemote と言います)
https://github.com/l3tnun/EPGRemote

まず1つ目は、番組検索 (programTable.php) の事です。
POST でパラメータを送ることで検索結果が表示される仕様になっていると思いますが、
この検索結果を外部のプログラムから見れる API のようなものを提供してもらえないでしょうか?

EPGRemote では $programs の内容が必要なのですが、programTable.php に POST を投げると当たり前ですが html が返されるので programTable.php を以下のように複製して対応しています。

1. programTable.php をコピー(programTable2.phpとします)
2. programTable2.php を編集
$smarty->display('programTable.html'); をコメントアウト
print_r (json_encode($programs)); を追加

これで programTable2.php に POST を送ることで $programs の内容が取得できるようになるのですが、
解決方法が雑で良くない方法だと思うのでどうにかしたいです。
simpleReservation.php や customReservation.php のように GET or POST を投げると、
エラー or 検索結果が JSON で帰ってくる様な形のものを提供していただけると、とてもありがたいです。

2つ目は、自動録画のキーワードの編集、追加(keywordTable.php)のことです。
自動録画のキーワードを編集 or 追加するときは keywordTable.php にパラメータをセットして POST すれば良いのですが、
この時正常に処理が完了したか判別できないので、困っています。
これも simpleReservation.php や customReservation.php のように
GET or POST を投げると、エラー or 正常に更新または追加が出来たことを返す様なものを提供していただけると、とてもありがたいです。

3つ目は、機能追加のお願いで ↑の話は全く関係無いです。
EPGRec UNA は予約時に動画の変換の有無を指定できますが、
これを予約時だけではなく、録画済みのものを後から変換できるようにする機能の追加をお願いできないでしょうか?
あと録画済一覧で削除をする時、ts ファイルだけの削除や変換済みファイルだけを削除するような機能の追加をお願いできないでしょうか?

長文になってしまい、また、お願いばかりになってしまい申し訳ありません。
面倒なことばかりだと思いますが、お返事お願いします。

kataunakatauna 2016/02/15 22:47 >>l3tnun
>REST API
結論からいいますと『やってる時間が有りません』

2chのレスを拝見した時から構想・調査はしていましたが
いまは実装する時間を捻出できる状況ではありません。
時間を捻出できたとしても途中で投げ出している
BonDriverProxy対応を優先させます。

仮にAPI追加を行う場合は以下の方針で
・chinachuのREST API仕様を拡張
・PHPのスクリプト追加・変更のみで対応する。(httpd等での設定変更・モジュール追加を行わない)

>>手動トランスコード
実はロジック部分はできています。
ですがWUIで頓挫(思考停止)して放置中
あまりゴチャゴチャさせたくないんですよね・・・

>>特定動画削除
WUIが・・・

l3tnunl3tnun 2016/02/16 07:57 返信ありがとうございます。

>『やってる時間が有りません』
なるほど、了解しました。
作業も大変ですし、暇で仕方がない時があったら思い出していただけたらと思います。

> WUIが・・・
その気持よくわかりますw
WUIなんて余裕だろと思っていざ考えてみると、結構困りますよね。

分からないことがあったらここで質問させていただくと思いますが、
その時はどうぞよろしくお願いします。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/katauna/20151205/1449313773