• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:長時間の動画に説明用のMCを埋め込みたい)

長時間の動画に説明用のMCを埋め込めない場合、他の実現方法はある?

このQ&Aのポイント
  • 長い動画ファイル+イラストや文字という場合、Flashで再生させるのが適切なのか、他によい方法はあるか?
  • プログレッシブダウンロードで、特定のフレームや秒から再生することは可能か?
  • 動画を分割してswfを作成し、順番に再生する方法は可能か?

質問者が選んだベストアンサー

  • ベストアンサー
  • ryo2501
  • ベストアンサー率46% (15/32)
回答No.4

動画形式が[flv]であることを前提でお話させて頂きます。 それ以外の形式で動画をインポートした場合はタイムラインでの制御になりますので。 申し訳ありませんが、AS2.0で書かせて頂きます。 まず、[ライブラリ]のウィンドを出します。(ショートカットキー Ctrl + L) 右上の×の下にある≡のマークをクリック。新規ビデオを選択します。 2つ項目が出ると思いますが、下のActionScript制御を選びます。 [ライブラリ]に[ビデオ1]というインスタンスが生成されます。 ステージ上に[ビデオ1]をドラックアンドドロップします。 プロパティウィンドで動画の表示サイズとインスタンス名を設定。(インスタンス名はお好みで構いません。下記のスクリプトではvidにしました。) スクリプト var nc :NetConnection = new NetConnection(); nc.connect(null); var ns :NetStream = new NetStream(nc); vid.attachVideo(ns); ns.play("貴方が製作したファイル.flv"); 上記を第一フレームに記述します。 ここまでがflvを再生するスクリプトになります。今現在作ったswfとflvを同じディレクトリに保存してパブリッシュ。動画が再生されることを確認して下さい。 文末に var videoInterval = setInterval(videoStatus , 100); function videoStatus() {  if(ns.time >= 5)  {   ns.pause();   clearInterval(videoInterval);  } } この例では動画の再生ヘッドが5以上になったら動画を止めています。if(ns.time >= ここの部分を変更)で時間を調整。 ns.pause();の部分をご自分が意図している処理に変更して下さい。

umioyo
質問者

お礼

無事動作確認できました。 ありがとうございました。 もう一点だけ^^ このビデオに、Flash標準のコントローラー(再生とか停止とかタイムラインバーとか音量とかの調整ができる、プログレッシブダウンロードのときに付加できるやつです)をつけることはできないでしょうか。 何度もすいません。よろしくお願いします。

umioyo
質問者

補足

ご丁寧にソース付きでありがとうございます。 今日は確認できないので、明日早速確認して回答させていただきます。 (たぶん質問とかありそうなので。。。) 取り急ぎ御礼まで。 ありがとうございました。非常に助かりました。

その他の回答 (4)

  • ryo2501
  • ベストアンサー率46% (15/32)
回答No.5

付けることは可能ですが、ソースが長くなりますので、ご自身で試行錯誤してみて下さい。

umioyo
質問者

お礼

わかりました。 ありがとうございました。

  • ryo2501
  • ベストアンサー率46% (15/32)
回答No.3

補足事項ですが…説明文や図はタイムラインで制御するのではなく、動画内に直接入れた方が良いと思いますよ。 それから質問を質問で返す様で恐縮ですが、プログレッシブダウンロードというのはプリローディングのことでしょうか?

umioyo
質問者

補足

ご回答ありがとうございます。 「動画」としか書かなかったので誤解を招いたかもしれないです。すいません。 プリローディングではなく、aviやmpgといった動画ファイルのことです。 ライブラリに読み込む際に、どのような形式で再生するか聞かれ、ストリーミング、プログレッシブダウンロード、タイムラインに埋め込みなど4,5個の形式があったと思いますが、そのうち私の環境で実現可能なのがプログレッシブダウンロード形式とタイムラインに埋め込む方法なのですが、タイムラインに埋め込むと35分ほどある動画なので埋め込めないのです。分割して埋め込んでみましたが、5分くらいの分割だと再生がおかしくなります。このあたりはHelpにも載っているので、おそらく1分刻みくらいで切り取ればタイムラインに埋め込んでも支障ないのだと思いますがw そうすると現実的なのはプログレッシブダウンロード方式で、その場合だとタイムラインという概念ではないようなので、gotoAndPlayなどは扱えないようで、mc.netStrem.play()やmc.netStrem.stop()で再生、停止はできたのですが、写真や文を動画に合わせて入れたいので、そちらは映像と別にMCを作りました。(動画の中に埋め込むと文字やグラフが読みにくいので) 閲覧者が素直に再生して最後まで見てくれればいいのですが、途中で戻った場合、先送りした場合にそのイベントを拾ってMCのほうも変化をくわえないといけないので、質問させて頂いた次第です。 よろしくお願いいたします。

  • ryo2501
  • ベストアンサー率46% (15/32)
回答No.2

方向性が違うのでは? まず、動画編集ソフト(adbe AfterEffect等)でflvを製作してから スクリプトで外部から読み込んだ方が現実的かと思われます。 実際、ニコニコ動画やyoutubeはそういった方法で実現しているんじゃないでしょうか。 また利点としてはflashでは専用のvideoクラスが用意されており、ある秒数まで再生されたら何々するといったことも容易に可能になります。

umioyo
質問者

補足

そうです。flvを作成したあとの話です。 専用のvideoクラスをもう少し詳しく教えて頂ければと思うのですが。。。

  • suzuko
  • ベストアンサー率38% (1112/2922)
回答No.1

FLASHのバージョンがわからないことにはお返事しようが無いでしょう。 また、質問されていることはアクションスクリプトで可能ですが、 go to And play もご存じない方が書けるものではないと思いますが。

umioyo
質問者

補足

CS3です。 プログレッシブダウンロードではgotoAndPlayは使えないです。

関連するQ&A