From: ashbb Date: 2011-10-16T08:14:41+09:00 Subject: [ruby-list:48471] Re: Ruby/Gstreamer for Windows --0015173fef08b4f9a404af5e89b2 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit おはようございます。リプライありがとうございます。> 須藤さん > > 埋め込んだビデオの画面サイズを固定するような方法がありませんでしょうか。 > > 埋め込むビデオの画面サイズを指定できるとより嬉しいです。 > > ビデオを埋め込んだウィジェット(video_sink.xwindow_idに設定し > たウィンドウIDを持つウィジェット)のサイズを固定すればよいの > ではないかと思いました。 > 例えば、Gtk::Widgget#set_size_requestとGtk::Box#pack_startを > 使えばできるかなぁと思います。X上で動かす場合の例ですが。。。 はい。Linux環境が手元にないので頂いたsample snippetを実機で 試してはいませんが。たぶんできるのではないかと思います。 が、Windowsの場合。。。 video_sink.xwindow_id = drawing_area.window.xid を使えない(xidメソッドがundefined)ので、win32apiを用いて、 video_sink.xwindow_id = Win32API.new('user32', 'GetForegroundWindow', [], 'N').call としているのですが。 そのため、ビデオを埋め込んだウィジェット=GTK2でオープンしたウィンドウそのもの、 となってしまうため、ウィンドウを開く際のサイズは指定できるのですが。 ウィンドウのリサイズに合わせてビデオの画面もリサイズしてしまうんです。 GetForegroundWindow以外でビデオを埋め込んだウィジェットそのもののハンドルを 取得できると良いかと思うのですが。その方法が分からなくて。。。 何か良い方法がありませんでしょうか。> Windowsユーザの皆様 ashbb --0015173fef08b4f9a404af5e89b2--