C++におけるmp4の再生と動画処理について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
くうぉーてぃー

C++におけるmp4の再生と動画処理について

#1

投稿記事 by くうぉーてぃー » 10年前

DxLibのサンプル( http://homepage2.nifty.com/natupaji/DxL ... html#R14N1
の様な要領でウィンドウ内の指定位置に指定した大きさで動画を再生させたいと思っています。
DxLibではmp4は再生できないとのことで他の方法を探しています。

- やりたいこと
・指定ディレクトリからmp4の動画を読み込み指定サイズでウィンドウ内の指定位置にで再生する。
・再生している動画の音量、スピード、再生、一時停止などのコントロールをしたい。
・動画の上に図形や文字列を表示させたい。
・表示させる文字列(字幕)はカラオケ字幕のように時間と共に一部の色(文字の縁や中身の塗りつぶし)を塗り替える処理をしたい。
・できればmp4以外のファイル形式も読み込みたい

- 環境
Windows8.1 64bit
Memory: 4GB
CPU: Intel Core i5
Visual Studio 2013 Professional

- 最低限再生させたいMP4ファイル
ビデオ:AVC
オーディオ:AAC

- 調べたこと
・VLCのAPIはC++からアクセスすることができる
・DirectShowが様々なファイル形式をサポーしている。

- C言語の知識
 普段コマンドラインで数値計算的なプログラムを書く程度なのでゲームプログラミングや
GUIのプログラミングには不慣れです。

- 自分のわからない部分、知りたいこと
インターネトで調べるとどうやらVLCの機能へアクセスを可能にするAPIがあるということで、
その中のlibvlcを使えばよいということが海外サイトなどからわかりました。
しかし、使い方については調べてみてもいまいち思い通りのものがヒットしませんでした。
参考になるサイトや使い方をご存じの方がいらっしゃいましたらぜひご教示ください。
またVLCを利用した場合に上記「やりたいこと」で述べたことはできるのでしょうか。
DxLibの関数(機能)も同時に利用したいと思っています。
長文失礼します。ぜひよろしくお願いします。

ISLe()

Re: C++におけるmp4の再生と動画処理について

#2

投稿記事 by ISLe() » 10年前

リンク先のDXライブラリサンプルをmp4形式動画ファイルを読み込むようにして試したところ再生されました。
動画ファイルはNHKのサイトで配布されているフリー素材を使用しました。


技術的なことではないですが、mp4に関しては、既存のコーデックを使って個人利用の範囲で動画を作成したり再生したりする以外のことをする場合、ライセンス料が発生すると思います。
もしご存知でなければ注意してください。

くうぉーてぃー

Re: C++におけるmp4の再生と動画処理について

#3

投稿記事 by くうぉーてぃー » 10年前

ご回答ありがとうございます。
mp4形式の動画をサンプルのソースでも再生できるとのことで自分でも再度実験を
してみました。
SUPERを使って様々なコーディックのファイルを作成してみたところ、
以下のことが分かりました。
(ファイルは前回再生できなかったファイルと同じものを元ファイルとして変換
をしました)。

- 再生できないファイル(元のファイル)
ビデオ:H264/AVC
オーディオ:AACLC

- 再生できるファイル(実験の為変換してみたファイル)
ビデオ:MPEG-4
オーディオ:AACLC

また、ライセンス料の件ご指摘ありがとうございます。
今回のプログラムについては個人的な趣味の範疇ですので大丈夫だと思います。

----------追伸----------
前回の投稿にて誤字脱字がありました。
誤)・DirectShowが様々なファイル形式をサポーしている。
正)・DirectShowが様々なファイル形式をサポートしている。

誤)インターネトで調べると
正)インターネットで調べると

誤字脱字失礼しました。

閉鎖

“C言語何でも質問掲示板” へ戻る