喫茶XRAYトップページ

[スレッド全体
]

[2317] #2240でお話したキャラクターでナレーションの音声合成について返信 削除
2009/4/26 (日) 19:34:29 KSCHomePage
KSCです。

#2240でお話したキャラクターでナレーションの音声合成についてですが、

少し前に「窓の杜」のニュースメールで知ったのですが、
「T2V Player」と言うフリーウェアがあり、テキストで書いた台本を
任意のキャラクターにしゃべらせ自分なりの番組作成ができる言うものです。

試しに自分のサイトニュースを作成してみました。
暇つぶしに見に来て下さい。

http://kazuyoshisc.sakura.ne.jp/joomla/index.php?option=com_content&view=article&id=35:2009-04-26-10-14-54&catid=1:2009-02-15-08-00-35&Itemid=12

ちなみに「T2V Player」は、台本テキストをTVML言語に変換・映像化
しているのですが、そのTVML言語はNHK放送技術研究所が提唱している
言語なのです。

「NHK」って、こんな事もしているんですね。
ちょっとイメージが変わりました。

こういう事をもっと世間にアピールすれば良いのにと思うのですが...。

「もう、既に知っているよ!」だったら、すいません。聞き流して下さい。

それでは、また。

[2319] 音声合成を使用して動画マニュアル返信 削除
2009/4/26 (日) 20:43:29 Mr.XRAY
感動です!!
やはり実際にできたものを観ると感動します.
それともう1つ,自分のサーバではなく,Youtubeの利用です.
時代の進化を感じさせます.

> 「NHK」って、こんな事もしているんですね。
> ちょっとイメージが変わりました。


通称NHK技研と言うのですが,何でも研究していますね.
私がまだ「研究者のはしくれ」だった頃,放射線画像の研究をしている方
がいました.
また,アニメーション動画作成の研究をしている方も.
その頃は,まだ骨だけ(線画の人物)が動くだけでしたが.


[2321] Re:音声合成を使用して動画マニュアル返信 削除
2009/4/26 (日) 21:09:24 KSCHomePage
KSCです。

> 感動です!!
> やはり実際にできたものを観ると感動します.


早速、見て頂けて光栄です!

> それともう1つ,自分のサーバではなく,Youtubeの利用です.
> 時代の進化を感じさせます.


YouTubeを利用している理由としては、
・動画ファイル管理が容易である事。
・自サイトの容量節約。
・色々な人に自分が作成した動画を見て欲しいから。

> 通称NHK技研と言うのですが,何でも研究していますね.
> 私がまだ「研究者のはしくれ」だった頃,放射線画像の研究をしている方
> がいました.


やはり知ってみてたのですね。さ・す・が...!

> また,アニメーション動画作成の研究をしている方も.
> その頃は,まだ骨だけ(線画の人物)が動くだけでしたが.


TVML言語も確立(?)されたようで、その言語を使って様々なツールが
登場してくるのでしょうかね?

そういえば、「MPF」と言うシステムにも非常に興味が沸いている私でした!

[2324] Re2:音声合成を使用して動画マニュアル返信 削除
2009/4/28 (火) 05:11:06 Mr.XRAY
> そういえば、「MPF」と言うシステムにも非常に興味が沸いている私でした!

何でも興味を持つのは進歩の証ですよね.
ところで,MPFって,ファイルのやつですか?


[2329] Re3:音声合成を使用して動画マニュアル返信 削除
2009/4/28 (火) 17:05:11 TS
▼ Mr.XRAYさん

「TVMLプレーヤー」の外部制御開発キット

Delphiで制御出来るのを確認しました。

スタートの確認のみです。


[2332] Re4:音声合成を使用して動画マニュアル返信 削除
2009/4/28 (火) 19:37:00 KSCHomePage
KSCです。

> 「TVMLプレーヤー」の外部制御開発キット
>
> Delphiで制御出来るのを確認しました。
>
> スタートの確認のみです。


Mr.XRAYさんと同意見です。

早っ.! と言うか、知りませんでした。
私も確認したいと思います。

TSさん、情報有難うございます。


[2334] Re5:音声合成を使用して動画マニュアル返信 削除
2009/4/28 (火) 20:05:00 TS
//以下てすとコード
Memo1は使っていません。
ボタンのみでテストしてます。

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons;

type
  TForm1 = class(TForm)
    BitBtn1: TBitBtn;
    Memo1: TMemo;
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private 宣言 }
  public
    { Public 宣言 }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses tvif;

procedure wait_command(wait_val:integer);
begin
  while tvifGetStatus() <> wait_val do
    begin
    end;
end;


(*
static void help(void)
{
        printf("ボブクロック\n2つの割り込みを使用したサンプルプログラムです。\nこのプログラムはオートリジュームオフで動作しています。\n");
}
*)

function FileSizeEx(const FileName: String): Integer;
var
  R: TSearchRec;
begin
  if FindFirst(FileName, faAnyFile, R) = 0 then Result := R.Size
  else Result := -1;
  FindClose(R);
end;


function read_script(filename:string;var script:Pchar):boolean;
var FS:TFileStream;
    ByteA:TByteArray;
    PByteA:^TByteArray;
begin
  result:=False;
  if FileExists(filename) then
    begin
      FS:=TFileStream.Create(filename,fmOpenRead);
      FS.Read(ByteA,FileSizeEx(filename));
      script:=@ByteA;
      result:=True;
      FS.Free;
    end;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
var script:Pchar;
begin
        tvifInit(0,TVIF_DEFAULT_SCRIPT_LINE,TVP_ON);
        // オートリジュームをオンに設定
        tvifAutoResumScript(TVP_OFF);

        // CGモデルを常駐させる。
        tvifModelStationed(TVP_ON);
        tvifSetWindowPosition(0,0);
        // スクリプトが停止したときの状態の指定
        // tvifSetStopTypeで指定される状態に切り替えない場合は下記のように指定する。
        // ディフォルトはTVP_ON。
        tvifSetStopMode(TVP_OFF);

        // プレイヤーの起動
        if (tvifSetCommand(TVP_EXECUTE) = TVP_OK) then
                wait_command(TVP_STOP); // showmessage('test'); //
  //if read_script('bobclock.tvml',script) then
  if read_script('kaiwa.tvml',script) then
    begin
                  tvifSetScript(script);
                  // メインスクリプトの更新
                   tvifSetCommand(TVP_UPDATE_SCRIPT);
                   // プレイヤーの更新を待つ
                  wait_command(TVP_UPDATE_SCRIPT);
      // 再生
                        if tvifSetCommand(TVP_PLAY) = TVP_OK then
        wait_command(TVP_PLAY);
    end;
        // スクリプト再生が停止したら(ここでは、割り込み&メインスクリプト共に監視する。)
  repeat
        until tvifGetStatus = TVP_STOP;


  tvifSetCommand(TVP_SHUTDOWN);
        tvifExit();
end;

end.

[2336] Re6:音声合成を使用して動画マニュアル返信 削除
2009/4/28 (火) 21:55:14 Mr.XRAY
▼ TSさん

う〜ん.なるほど.さて.こちらも
Visual C++ 2008 Express Edition
が必要なようですね.私は何かの時だか忘れましたがインストールしてあります.
もしかしたら古いかも知れませんが.
(ハハハッ,既にpascalMagickの時に使用しているんだったけ.ボケです)

でも,こちらは開発環境用ですからね.
実行環境に必要なImageMagick(PascalMagick)とは意味あいが違いますね.
こっちはPascalMagickと違い,面白そうです.


[2337] Re7:音声合成を使用して動画マニュアル返信 削除
2009/4/28 (火) 22:07:05 Mr.XRAY
もしかしたら,このスレッドを読んで,早速やっている人がいたりして...

そんな方,是非報告をお待ちしています.
コーヒーのいっぱいぐらい,ご馳走します.


[▼次のスレッド]
INCM/CMT
Cyclamen v3.82