プレーヤー関連

15 views
Skip to first unread message

coke

unread,
Oct 14, 2009, 9:36:39 AM10/14/09
to VASDAQ.TVオープンソース化準備室
VASDAQ.TVVASDAQ.TV Proからのプレーヤーインターフェース仕様の提案(原案)

VASDAQ.TVVASDAQ.TV Proに、各種プレーヤーの存在を認識させるためには、
YAMLファイルを使用する(TV、Proは起動時に該当ファイルを読み込み認識する)
そのYAMLファイルに対しての環境設定画面は必要ないと考えています

理由
 YAMLはXMLに比べ可読性にすぐれる
 RubyOnRailsなどの設定ファイルで既に使われている(VASDAQ.TVでも使用している)
 いざとなれば、XMLやJSonに変換し、HTTPプロトコルで効率的に転送も可能
 プレーヤを開発して追加したいユーザはプロなので、現時点では設定画面は必要ない
 (ただし将来的には、自動で追加する事もあるかもしれない)

YAMLのプレーヤー環境設定ファイルで設定する内容
 標準画面サイズ(そのプレーヤーがスタンダードで使用するサイズ)
 最大、最小画面サイズ(そのプレーヤーで描画可能な最大、最小サイズ)
 その他
   地域情報、ユーザ環境の情報(ハード、OS、その他)

◯起動と終了
 Rubyでは、`プログラム名 引数1 引数2 ...`
 で起動する (注意:バッククォートです)

 Javaでは、java.lang.Runtimeクラスのexec()を使用する

 どちらもForkする必要がある(と思う)

 終了コードは、$?で受け取る

下記参照
http://www.ruby-lang.org/ja/man/html/_A5EAA5C6A5E9A5EB.html#a.a5.b3.a5.de.a5.f3.a5.c9.bd.d0.ce.cf


起動引数
 新規作成なのか修正作成なのか?
 受け渡すプレーヤーの描画情報が入ったファイル名(フルパス)
 設定する画面サイズ
 画面の色(バックグラウンドを全部塗りつぶさないプレーヤーのみ使用すると思われる)
 その他、ユーザが使用しているディスプレー自身のサイズの情報等
 (今後引数を追加する事も考えて、「名前付き引数」にしてください)

終了コード
 保存して終了 例えば0 (正常終了)
 キャンセルして終了 例えば1
 エラー終了 例えば9
 (2から8は予備)

 上記の場合、1と9の場合は、既存のデータを上書きしない
 0の場合は、プレーヤーから渡された情報を上書きする

以上、プレーヤーインターフェースの提案です 永田

kj.maeda

unread,
Oct 14, 2009, 11:10:56 PM10/14/09
to VASDAQ.TVオープンソース化準備室
お疲れ様です。

12月版のプレーヤーとVASDAQ.TVとProの関係について
開発メンバーの足並みを揃えたいので再度意識合わせをしたいと思います。

以前を話し合いをした時のイメージをアップロードしました。
「12月版イメージ図.pdf」
認識がずれていたら教えて下さい。

色々と検討しなければならない事があり難しいと思いますが、
上海メンバーと大内さんと相談して、最初に決めなければならない部分を以下に挙げました。

●プレーヤーを何で作るのかを検討して決める。
プレーヤーはjavascriptとHTMLなら単体起動もVASDAQTVに組み込むことも可能。
(Airも視野に入れていたのですが、実装がなかなか難しそうです)
 再生するコンテンツはFlashで可能。

●プレーヤーの構成要素を決める。
 プレーヤーは起動ファイルだけではない。
設定内容を保存する為の設定ファイルが必要だし、Proで自由に加工できるようにするにはソースも
 公開する必要があります。他にもあるかも知れません。

●プレーヤー、VASDAQ.TV間のインターフェイスを決める。
 VASDAQ.TVからどのようにプレーヤーの存在を認識させるか。どのように起動するか。
 プレーヤーで生成したコンテンツの位置をVASDAQ.TV及びPro側からどのように認識させるか。

●プレーヤー、Pro間のインターフェイスを決める。
Proからどのようにプレーヤーの存在を認識させるか。どのように起動するか。
 プレーヤーで生成したコンテンツの位置をVASDAQ.TV及びPro側からどのように認識させるか。


以上です。
今回は3間のインターフェイスが重要になってきます。
各自担当の部分だけでなくプレーヤーとの関係を意識しながら作業するようお願いします。



On 10月14日, 午後9:36, coke <kouichi.nag...@gmail.com> wrote:
> VASDAQ.TVVASDAQ.TV Proからのプレーヤーインターフェース仕様の提案(原案)
>
> ◯VASDAQ.TVVASDAQ.TV Proに、各種プレーヤーの存在を認識させるためには、
> YAMLファイルを使用する(TV、Proは起動時に該当ファイルを読み込み認識する)
> そのYAMLファイルに対しての環境設定画面は必要ないと考えています
>
> 理由
>  YAMLはXMLに比べ可読性にすぐれる
>  RubyOnRailsなどの設定ファイルで既に使われている(VASDAQ.TVでも使用している)
>  いざとなれば、XMLやJSonに変換し、HTTPプロトコルで効率的に転送も可能
>  プレーヤを開発して追加したいユーザはプロなので、現時点では設定画面は必要ない
>  (ただし将来的には、自動で追加する事もあるかもしれない)
>
> YAMLのプレーヤー環境設定ファイルで設定する内容
>  標準画面サイズ(そのプレーヤーがスタンダードで使用するサイズ)
>  最大、最小画面サイズ(そのプレーヤーで描画可能な最大、最小サイズ)
>  その他
>    地域情報、ユーザ環境の情報(ハード、OS、その他)
>
> ◯起動と終了
>  Rubyでは、`プログラム名 引数1 引数2 ...`
>  で起動する (注意:バッククォートです)
>
>  Javaでは、java.lang.Runtimeクラスのexec()を使用する
>
>  どちらもForkする必要がある(と思う)
>
>  終了コードは、$?で受け取る
>
> 下記参照http://www.ruby-lang.org/ja/man/html/_A5EAA5C6A5E9A5EB.html#a.a5.b3.a...

kj.maeda

unread,
Oct 28, 2009, 12:28:26 AM10/28/09
to VASDAQ.TVオープンソース化準備室

お疲れ様です。

プレーヤーの利用形態について、皆さんの意見を基に再度検討、整理しました。

■プレーヤーを単体で利用する場合
 ・ユーザーは設定ファイルは手動で編集する。
 ・ユーザーはプレーヤー(設定ファイルと本体)を自分のホームページにアップする。
 ・プレーヤー本体のパスURLを自分のホームページのHTMLに埋めこむ。

■プレーヤーをTVから利用の場合
 ・設定画面から設定ファイルを編集する。(可能なら設定ファイルを読んでGUIを生成する)
 ・HTML生成時にプレーヤー本体のパスURLを生成画面に埋めこむ。

 ※TVからシステムコマンド(exec,fork等)でプレーヤーのプロセスを起動するご提案もありましたが、
  その方法だと、
   ・現在開発中のTVのプレビュー上でドラッグ&ドロップによるプレーヤーの配置変更が困難。
    よってTVから利用するケースに限っては、コンテンツの配置制御をTV側に任せた方が都合が良さそうです。

以上、よろしくお願いします。

永田浩一

unread,
Nov 1, 2009, 3:50:13 PM11/1/09
to vasd...@googlegroups.com
ちょっと待った!

いただいた文章では、細かいところまではわかりませんが、

今回プレーヤの導入の最大の目的は、「システムの複雑化の回避」です。
「単体起動で自分のHPにも貼付けられる」はあくまで、副次的産物にすぎません。

今後、様々なプレーヤの導入が検討されています。
先日、日本の役員会で決定したプレーヤの一覧だけでも
VJ GPSプレーヤ
VNH アンドロイドプレーヤ
VGJ メッセンジャープレーヤ
VSE RFIDプレーヤ
VRT ボイスプレーヤ
VWS アドバタイジングプレーヤ
VIC ARプレーヤ
CP XBRLプレーヤ

となります。
上記プレーヤは、開発メンバー以外にも、上記各社のエンジニアが開発に参加する事が予定されています。
(開発後は、上記各社の製品/独自技術として発展させていく)

詳細は马鞍山の会議でお伝えしますが、今後も様々なプレーヤが導入されます。
その都度、TV本体で、個別の制御をするとなると、プレーヤのモジュール独立性の意味がありません。
(最近の皆さんにもっとわかりやすく言うと、クラス化をやめて、メイン関数で全て制御し、プレーヤ開発者はサブルーチンだけ作ってください!に近いと思います)

すると永田のこれまでの経験から判断しても、仕様も莫大なものとなり、すぐに制御不能となるでしょう。

马鞍山で詳細をつめるまで、決して本体制御という方向にだけは行かないようにしてください。
よろしくお願いします。


2009年10月28日13:28 kj.maeda <shsv.k...@gmail.com>:

ouchi nobu

unread,
Nov 2, 2009, 6:28:41 AM11/2/09
to VASDAQ.TVオープンソース化準備室
お疲れ様です。

いくつか追記させてください。

> > ■プレーヤーをTVから利用の場合
> > ・設定画面から設定ファイルを編集する。(可能なら設定ファイルを読んでGUIを生成する)
> > ・HTML生成時にプレーヤー本体のパスURLを生成画面に埋めこむ。

■プレーヤーの挙動について
プレーヤーが表示されるまでの一連の動作
 ・設定画面の表示
 ・設定画面にコンテンツを追加・削除・変更させる
 ・VASDAQIT生成画面に表示させるためのHTML生成
 ●DBにアクセスし自身の登録・削除・変更
 ・設定ファイル(どのRSSや画像ファイル等を読み込ませるのかの設定)の作成・変更
 ・コンテンツファイル(RSSや画像ファイル)の作成/取得・保存
 ・VASDAQIT生成画面の生成

以上のような流れになると考えています。

上記の処理のうち、本体側で制御しなくてはならない部分が出てきます(フリーレイアウトでのコンテンツ枠の追加等)。
得に「●」についてはセキュリティ上、仕様を公開しプレーヤー側のプログラムで処理してほしくありません。

そのため、本体側からは(制約の意味でテンプレートパターンを適用して)インターフェースを提供し、各インターフェースを実装すれば全体の流れが完成す
るような作りをとりたいと考えています。
インターフェース例として、「設定ファイルの書き出しのための要素定義メソッド」、「画面表示のための要素定義メソッド」など
を定義していく形です。

ですのでプレーヤーの作り手は、決められたインターフェースを継承し、固有の処理をrubyでモジュール化して実装すればいいと考えています。


プレーヤーをTVから利用の場合は以上のように考えていました。
よろしくお願いいたします。


On 11月2日, 午前5:50, 永田浩一 <kouichi.nag...@gmail.com> wrote:
> ちょっと待った!
>
> いただいた文章では、細かいところまではわかりませんが、
>
> 今回プレーヤの導入の最大の目的は、「システムの複雑化の回避」です。
> 「単体起動で自分のHPにも貼付けられる」はあくまで、副次的産物にすぎません。
>
> 今後、様々なプレーヤの導入が検討されています。
> 先日、日本の役員会で決定したプレーヤの一覧だけでも
> VJ GPSプレーヤ
> VNH アンドロイドプレーヤ
> VGJ メッセンジャープレーヤ
> VSE RFIDプレーヤ
> VRT ボイスプレーヤ
> VWS アドバタイジングプレーヤ
> VIC ARプレーヤ
> CP XBRLプレーヤ
>
> となります。
> 上記プレーヤは、開発メンバー以外にも、上記各社のエンジニアが開発に参加する事が予定されています。
> (開発後は、上記各社の製品/独自技術として発展させていく)
>
> 詳細は马鞍山の会議でお伝えしますが、今後も様々なプレーヤが導入されます。
> その都度、TV本体で、個別の制御をするとなると、プレーヤのモジュール独立性の意味がありません。
> (最近の皆さんにもっとわかりやすく言うと、クラス化をやめて、メイン関数で全て制御し、プレーヤ開発者はサブルーチンだけ作ってください!に近いと思います)
>
> すると永田のこれまでの経験から判断しても、仕様も莫大なものとなり、すぐに制御不能となるでしょう。
>
> 马鞍山で詳細をつめるまで、決して本体制御という方向にだけは行かないようにしてください。
> よろしくお願いします。
>

> 2009年10月28日13:28 kj.maeda <shsv.kjma...@gmail.com>:

永田浩一

unread,
Nov 2, 2009, 3:15:13 PM11/2/09
to vasd...@googlegroups.com
以下、プレーヤ仕様で永田が最初に送付したものから抜粋です


> ◯VASDAQ.TVVASDAQ.TV Proに、各種プレーヤーの存在を認識させるためには、
> YAMLファイルを使用する(TV、Proは起動時に該当ファイルを読み込み認識する)
> そのYAMLファイルに対しての環境設定画面は必要ないと考えています
> 理由

>  プレーヤを開発して追加したいユーザはプロなので、現時点では設定画面は必要ない
>  (ただし将来的には、自動で追加する事もあるかもしれない)


プログラムの追加、削除はYAMLファイルを手入力で変更します。

難しく考えすぎないでください。
設計をするときは、何が一番大切かを考え、その機能に集中し、シンプルに考えれば、
いい設計が生まれます。


早急に、その仕様は破棄してください。

今後のプロジェクトを考えると、その仕様は複雑化を招きます。

実行プログラム単位で、モジュール分割を実施するのは、エンタープライズ開発の基本です。

すでに、VASDAQ.TVは、一つのプログラムで、クラス分けするには肥大化しています。
一般的なパターン入門書から、マーチンファウラーの「エンタープライズアプリケーションアーキテクチャパターン」
のレベルの設計が必要です。

勉強はおいおいしてもらうとして、この仕様に関しては、悪い事はいわないので、
実行プログラムとして、早急に分割してください。


くれぐれもよろしくお願いします。


それと、あまり、思いつきの小さい事を考えすぎても、どんどん時間がなくなり、変な方向にいってしまいます。
効率のためにも、早期の相談を、永田に直接メールください。


2009年11月2日20:28 ouchi nobu <n.o...@vasdaqj.jp>:

ouchi nobu

unread,
Nov 5, 2009, 7:34:39 AM11/5/09
to VASDAQ.TVオープンソース化準備室

お疲れ様です。

プレーヤーに関して、もしご存知でしたら教えてください。

現在、いくつかのプレーヤー本体をフラッシュで作成していますが、
得に、PDFプレーヤーについて実現方法が分かりません。

以前、調査された際に実現できる事を確認したとおっしゃっていたので、
お手数ですがなにか参考になるものがあれば、教えて頂きたいと思います。

よろしくお願い致します。

> 2009年11月2日20:28 ouchi nobu <n.ou...@vasdaqj.jp>:

> ...
>
> もっと読む »

kj.maeda

unread,
Nov 11, 2009, 9:16:26 PM11/11/09
to VASDAQ.TVオープンソース化準備室
お疲れ様です。

プレーヤーのインターフェイスの仕様をまとめたので、
VASDAQ.TVオープンソース化準備室にファイルをアップしました。

・インターフェイス_プレーヤー_TV_Proの関係.pdf
・インターフェイス_TV-プレーヤー間フロー.pdf
・インターフェイス_環境設定ファイル.pdf
・インターフェイス_プレーヤー共通仕様.pdf
・VASDAQTVディレクトリ構成図.pdf

各自ご確認をお願いします。
何かあればご一報を下さい。

> 2009年11月2日20:28 ouchi nobu <n.ou...@vasdaqj.jp>:

> ...
>
> もっと読む »

ouchi nobu

unread,
Nov 18, 2009, 9:44:25 PM11/18/09
to VASDAQ.TVオープンソース化準備室
お疲れ様です。

プレーヤーについての今後の方向性を簡単に説明します。

■標準プレーヤーについて(現在のところクロック/カレンダープレーヤーのみ)
 ・VASDAQ.TVで(ネットワーク上で)起動し設定ができる。
 ・ローカルで起動しVASDAQ.TVに対し設定ができる。

■オプションプレーヤーについて(上記以外のプレーヤー)
 ・ローカルで起動しVASDAQ.TVに対し設定ができる。

■標準、オプションプレーヤー共通事項
 ・VASDAQ-PROから起動ができる

※今後標準プレーヤーが増える場合があります。

大まかな部分では以上になります。
細かい仕様については個別に相談させてください。

以上、よろしくお願いします。

> ...
>
> もっと読む »

Reply all
Reply to author
Forward
0 new messages