月別アーカイブ: 2015年11月

ClutterGst 3.0 with Python

ClutterGst PyGI | PaePoi

以前こんなのを書いたけど

Clutter Gst 3.0.14 Reference Manual: Clutter Gst 3.0.14 Reference Manual

ClutterGst.VideoTexture なんて 3.0 の現在ではもう無い。
今はどうすれば ClutterGst を扱えるのかな?

そういえば Sushi は Gjs だったな。
一応、Sushi は Nautilus にて Space Key でプレビューするアプリね。
Fedora には最初から入っているよ。
だったらコイツのコードを参考にすればいいじゃないか。

sushi_gst

って VideoTexture のまんまや!
Nautilus で動画をプレビューすると緑色でやはり表示できない。

[sushi] viewer: gst: port to ClutterGst 3.0

見つけた、十月にはコミットされているはずなんだけどなぁ。
自力で置き換えして試してみる、Gjs は面倒だから Python で。

#!/usr/bin/env python3

import sys, gi
gi.require_version("Gtk", "3.0")
gi.require_version("ClutterGst", "3.0")
gi.require_version("GtkClutter", "1.0")

from gi.repository import Gtk, Gdk, ClutterGst, GtkClutter, Clutter

class ClPlayer(Gtk.Window):

    def __init__(self):
        Gtk.Window.__init__(self)
        # new
        self.actor = Clutter.Actor.new()
        self.content = ClutterGst.Aspectratio.new()
        self.player = ClutterGst.Playback.new()
        # set
        self.content.set_player(self.player)
        self.actor.set_content(self.content)
        self.actor.show()
        # size
        self.actor.set_width(320)
        self.actor.set_height(180)
        # add
        self.embed = GtkClutter.Embed()
        self.stage = self.embed.get_stage()
        self.stage.add_child(self.actor)
        self.add(self.embed)
        # play
        self.player.set_uri("file:///home/sasakima-nao/movie/kawasaki_h2r.mp4")
        self.player.set_playing(True)
        # show
        self.resize(320, 180)
        self.show_all()


    def do_delete_event(self, event):
        Gtk.main_quit()

#Clutter.init(sys.argv) # Error
GtkClutter.init(sys.argv)
ClutterGst.init(sys.argv)

win = ClPlayer()
Gtk.main()

cluttergst3

思っていたより簡単だった。
よしコレで我が Y901x の GtkHeaderBar 化に取り掛かりできそうだ。
いやまあ、いいかげんに自分で気になってきたので。

実は今まで Ubuntu 環境での Clutter がよく解らないので避けていた。
GNOME プロジェクトの成果物依存から脱却したいココは絶対に導入しないだろうし。

Ubuntu Sushi その1 – Nautilusでプレビューを行うアプリの紹介・Sushiの使い方 – kledgeb

でも Sushi を入れるだけで依存関係から必要な環境がそろうようだ。
だったら Clutter も問題ないか、多分まだ 3.0 じゃない気がするけど。

eog and Gedit 3.18 Plugin

うーん困った、って何が?

Eye of GNOME って見た目のショボさとは裏腹にかなり優秀である。
SVG 画像を綺麗に拡大できるだけでなく実はディレクトリ監視も行っている。

eog で画像を表示した状態で同一ディレクトリのファイルを別アプリからリネーム。
すると eog のリストへ即座に繁栄され矢印キーやスライドショーにも適用される。
ただ即時繁栄のためサムネイル画像がまだ作成されていない状態になってしまう。
サムネイル表示(F9)を出していないと気にならないけど。

なので今まで自作リネームプラグインはサムネイル画像を自前で入れ替えしていた。
それが 3.18 で上手く動作しない、仕様変更されたようだ。

どうも remove_image が無効になっているだけっぽいけどよく解らない。
とりあえず即元にもどせるようコメントアウトでしばらく様子見。

eog318_remove_image

Gedit はやはり gi.require_version 追記だけだった。
しかし eog もそうだけど Peas のバージョン指定もいるようだ。
Peas はソースで使っていないし 1.0 しかないのに、将来の伏線かな?

ついでに、筆者は Gedit Plugin を 4 つ公開しているのですが。
一つに書いただけで警告は出なくなった、おいおい…
まあ全部に書いたけどね。

gedit318_peas

というわけでプラグイン 3.18 版を公開。
最後に。

kuroe

いえーい、無課金なのにクロエ・ルメールを最終進化できるぞい!
貯めた炭酸を全部使った甲斐があった(ウチ姫はどうした!

PyGIWarning

Fedora を 23 にして環境の再構築しているのですが。
今回は GStreamer デコーダーが gnome-softwere に出てこない。
RPM Fusion を毎度のようにリポジトリに追加して

sudo dnf install gstreamer1-libav gstreamer1-plugins-bad-free gstreamer1-plugins-base gstreamer1-plugins-good gstreamer1-plugins-ugly

ぶっちゃけ必要なものは何も変わっていないようだ。
今回は”コマンドを打ってね”ということらしい。

ただ我が Y901x 等の GStreamer フロントエンドを使おうとすると

y901x_warn

PyGIWarning という今まで出なかった警告が出るようになった。
一応書くけど PyGObject と PyGI は同じ。
とにかく gi.require_version をする必要があるみたい。

require_version

これで警告は出なくなる。
実は GTK+ 3.16 でリサイズグリップが無くなったのを無視していた。
ついでに一部動画形式でサイズ取得を失敗する不具合が改善されているようだ。
よし一年ぶりに Y901x を更新だ、需要なんてないけど。

ただ最近は動画って Web ブラウザ上でしか見なくなったのよね。
最新動画が次々と出て来るのでダウンロードしようとか全然思わない。
まだデジカメ動画なんかで使うけどその需要もそのうち失くなりそう。

それはいいとして。
Gedit, Eog 自作プラグインにも PyGIWarning が出るや。
多分こっちにも gi.require_version が必要なんだろう。

警告が出るだけで普通に使えてはいるんだが。
いや、Eog のほうは少しおかしいみたい。
こっちの更新は明日、ウチ姫やんなきゃ(ぉい!

Fedora 23 Install (SSD)

前回のとおり無事 Fedora 23 Workstation ISO を手に入れた。
早速メインマシンの SSD を換装してインストールする。

Phenom2 955, AMD 880G マシンはまだメインでバリバリです。
SSD は Fedora 21 を入れていた奴に上書き、なんて安上がり。

注意点として筆者は US キーボードを愛用している。

uskeyboard

きたないので縮小して誤魔化していることは内緒。
そういう環境でのインストール記事ですのでご注意。

Live を立ち上げると今回も英語。
以前はいきなり日本語になった時期もあったのにな。
まあいい、とっととインストールのほうをクリック。

今頃知ったけどインストール中でもスクリーンショットが撮れる。
メニューから普通に gnome-screenshot を立ち上げられる。
外付け HDD や USB メモリを繋いで保存すればいい。
ということで今回は少しだけスクリーンショット付き。

日本語を選択し[次へ]の青いボタン。

f23a

日本語キーボードの人はそのままでいいと思うけど筆者は US キー。
[キーボード(K)]をクリックし設定する。

key

英語(US) を追加し一番上に移動。
これで普通に US レイアウトで入力ができる。

次に[インストール先(D)]をクリック。
空き領域確保済なら確認だけでいいはずだけど筆者は上書き。

f23c

[領域の再利用(R)]で上書き指定。
準備はこれで終わりなのでインストールを開始する。
インストール中に root パスワードと自分を設定。

全部終わったら Live を修了
再起動直後に DVD-R を取り出しするのを忘れずに。
起動すると WiFi の設定や確認作業になる。

ibus_kkc

日本語(かな漢字)を選択してね。
某人気ディストリは日本語入力に問題があるらしいけど Fedora は問題無し。

さて US キーの人はもう一仕事。
ibus-kkc の(ひらかな⇔直接入力)切り替えを設定。
US キー MacBook を使っているなら Alt+Space にするといい。
切り替え位置が同じなので直感的に使えるよ。

alt_space

ただそのキーはウインドウメニューに予約されているので無効化。
まあその辺りはお好みで。

以上インストール作業はおしまい。

さてデフォルト状態はいったい何が変わっているのかな?

まず気が付くのが Nautilus の左ペインがシンプルに。
外付け HDD やネットワークの接続切断は右ペインに。
でも iPhone は左ペインになった、なんだかな。

nautilus_318

F2 キーでのリネームがポップアップ式になっている。
Delete キーでの削除といいポップアップは判り易いね。

rename318

コンテキストメニューにキーボード操作が表示されるようになった。
やっとどこかに表示が無いと解らないことに気が付いたようだ。
それとアイコンの大きさは終了時を記憶するようになったみたい。

ただ、Nautilus を 2 つ立ち上げた時の動作が少しおかしい。
多分初期不具合なので修正を待つとしよう。

Gedit は流行りの全体像表示機能が、筆者はいらないけど。
プラグインでなく組み込みだとは思わなかった。

gedit318

だからいいかげんに gnome-terminal はメニューバーをヤメろ!
違和感が凄い、まあ gsettings で消せるんですけどね。

gsettings set org.gnome.Terminal.Legacy.Settings default-show-menubar false

他は Fedora 22 の時と別に違いを感じない。
さてアプリを入れたり拡張を入れたりしよう、続く。

DistroWatch

昨日夜勤から帰ると Fedora 23 がリリースされていた。
iso が落とせない…
四日午前 10 時起床、落とせない…
五日午前 0:30 帰宅、まだ落とせない…

筆者だけ?と思い検索するともう落とした人が結構いるみたいだ。
fedup というものなら即手に入るってことかな?
筆者はクリーンインストールしたいんですけど。

https://getfedora.org/ からは iij に転送されるようだ。
他国から落とすしか無さそうだ。

DistroWatch.com: Put the fun back into computing. Use Linux, BSD.
を覗くとリンクがあった。
http://dl.fedoraproject.org/pub/fedora/linux/releases/23/Workstation/x86_64/iso/Fedora-Live-Workstation-x86_64-23-10.iso
からなら落とせるようだ、あぁやっと手に入る。

fedora_dl

同じように ISO を落とせない人は御参考までに。
変更点レポートは明日。