【入門者向け】Javaにおける動画の扱い方を分かり易く解説

  • このエントリーをはてなブックマークに追加
  • Pocket

Javaプログラムで動画を扱うために、ここでは表示方法を紹介する。

Javaで動画を再生するためには、Java 8から標準になったJavaFXが使える。このライブラリーは、グラフィカルなユーザインタフェースを使って動画を再生するための機能をWebアプリケーションに提供している。

例えば、下の画面には再生や時間や音量を制御するためのボタンやスライダーが用意されている。これらは、すべてJavaFXのライブラリーを使って追加したものだ。

再生可能な動画の種類は、次の通りである。

  • FLV:VP6ビデオMP3音声を含む
  • MPEG-4:264/AVC (Advanced Video Coding)を含む

これらの動画がどのようにJavaFXで再生されるかを説明しよう。

動画再生の仕組み

最初に動画が保存されている場所などメディアに関係する情報をMediaクラスのオブジェクトに入れる。これをMediaPlayerクラスに渡し、再生を制御するメソッドを使って再生開始を要求すると動画の再生が始まる仕組みになっている。再生が始まると、MediaPlayer がMediaViewクラスに動画を表示する。

  • Media:メディアについての情報(場所、解像度、メタデータ)
  • MediaPlayer:メディアを再生のために制御機能を提供する主要なコンポーネント
  • MediaView:アニメーション、透過、エフェクトをサポートするノードオブジェクト

  

動画再生のサンプルプログラム

このサンプルプログラムは、ディスク上のMPEG-4ファイルを再生する。再生は画面下にある「>」ボタンを押すことにより再生が始まり、ボタンが「||」に変わる。次に、変更された「||」ボタンを押せば。再生は一時停止して、制御ボタンが「>」になる。

実行結果

サンプルプログラムの説明

それでは簡単にプログラムの解説をしてゆこう。

  • [1] クラスSimpleMediaPlayerをApplicationから継承して定義する。
  • [2] 変数mediaPlayerを定義する。
  • [3] 変数buttonを定義する。
  • [4] 定数MEDIA_URLにfile:/C:/temp/sample.mp4を設定する。
  • [5]-[6] メソッドstartをオーバーライドして定義する。
  • [7] ウィンドウのタイトルにSimple Media Playerを設定する。
  • [8] Mediaクラスのmediaオブジェクトをメディア情報にMEDIA_URLを設定して作る。
  • [9] MediaPlayerクラスのmediaPlayerオブジェクトを引数にmediaオブジェクトを設定して作る。
  • [10] MediaViewクラスのmediaViewオブジェクトを引数にmediaPlayerオブジェクトを設定して作る。
  • [11] 「>」マークの再生ボタンオブジェクトを作る。
  • [12] 再生ボタンの大きさを設定する。
  • [13] ボタンのイベントハンドラーを設定する。
  • [14]-[17] mediaPlayerの状態がUNKNOWN やHALTEDの時に再生ボタンが押されても何もしない。
  • [18]-[23] mediaPlayerの状態がPAUSEDかREADYか STOPPEDの時に再生ボタンが押されたら、動画の再生を開始し、ボタンのマークに「>」を設定する。
  • [24]-[25] mediaPlayerの状態が上の状態のいずれでもない時、動画を一時停止して、ボタンのマークに「||」を設定する。
  • [26]-[27] controlPaneオブジェクトを作り、ボタンオブジェクトを配置する。
  • [28]-[30] paneオブジェクトを作り、mediaPlayer とcontrolPaneオブジェクトを配置する。
  • [31]-[34] primaryStage オブジェクトを引数としてsceneオブジェクトを作り、表示する。
  • [40] mainメソッドの定義を行う。
  • [41] アプリケーションを起動する。

 

まとめ

このページではJavaで動画を扱う方法について、サンプルプログラム付きで簡単に紹介した。

それぞれの処理内容の解説を参考にプログラムを少しずつ変えていくことで様々な応用が出来るので、参考にしていただければと思う。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できる。

短期間でエンジニアになる方法

・「まったくの初心者だけどエンジニアになりたい!」

・「プログラマーとして転職をしたい!」

という方はリナックスアカデミーの資料を見てみてください。短期間で未経験からエンジニアになることができるスクールとして15年間選ばれ続けてきた理由やノウハウが載った資料です。

エンジニアの入り口に立つために必要な勉強技術の最新動向本当に使えるIT資格学習に役立つ国からの奨励金などの情報が詰まっています。

無料で2,3日中にお手元にお届けします。


資料を見てみる

SNSでもご購読できます。

コメントを残す

*

ゼロからエンジニアを目指す方へ
短期間でエンジニアになる方法

必要な勉強や技術の最新動向、本当に使えるIT資格、学習に役立つ国からの奨励金などの情報を無料でお届け

資料を見てみる