Ageha

今日の五条川。

1

ムクゲとクマバチ、花と昆虫シリーズ。
こういう角度もたまにはいいじゃないか。

2

ジャコウアゲハのメス、花は無いけど。
オスは黒いけどクロアゲハとは違うようで。

3

横から見ると腹色が少しキモい。

カワセミは飛んでいるのを二匹見た、見えただけ。
今はどこで狩りしてんのかな?

昆虫は野鳥よりは寄れるので LUMIX 内現像。
筆者はやっぱり Lightroom いらないかも。

-scaled を URL から、ってそろそろ面倒になってきたなぁ。
プロがよく利用している Flickr あたりを使おうかなって考え中。

Sunflower

もうしばらく夜勤が決まる、変則勤務は頭が回らないね。
プログラミング関係は連休までおやすみ。

日曜日にいつもの五条川でパナライカを背負って野鳥探し。
で、大口のメガドンキユニー(長い)近くにある向日葵畑が目についた。
多分だけど、一度帰宅してデジイチを持って再訪したみたいな人達がワンサカ。
その時筆者は LUMIX G 25mm も持っていた、ということで撮影会に参加。

あれ?なんか違う。
彼岸花の時もそうだった、実物は凄く綺麗なのに写真にするとつまらない。
42.5mm も持ってきたほうが良かった?いやココはもっと広角で撮りたいかも??
もしかして 25mm も割高みたいなパナライカを選んでいたら迷わなかった、かも。
迷ったけど早々に野鳥探しへ戻る、何もいなかったけど。

リベンジしたいけどなんか我が LUMIX では綺麗に撮れる気がしない。
そうだ NIKON を使おう、たまにはコッチも使ってやらないと。
ということで夜勤明けに D3400 を持ってリベンジしてみた。

1

うんなんかシックリきた、キットズームの広角端なのにイイ感じ。
4:3 ではなく 3:2 だからなのか、絵作りの差なのか。
野鳥は断然 LUMIX なんだけど、それはレンズの差だし。

2

単焦点も NIKON のほうがやっぱりイイな。
APS-C の入門レンズでこんだけ撮れれば十分ですよ。

3

クマバチがいたので f2.2 まで開けてコラボを。
背景はボカしすぎたかなって感じだけど悪く無いかも。
てかハチが逃げる前に撮らなきゃなので絞りを選んでいる暇無い。

マジで思う、カメラも信者にならず色々使ってみたほうがいいな。
さて出勤の準備でもするか。

今回はトリミング無し。
-scaled を URL から外すとフルサイズ画像になります。

Fedora 34 libav

Fedora 34 になってからアップデート通知が来なくなった。
時折 gnome-softwere を開いて手動アップデートする必要がある。
通知させる手段はあるんだろうけど別にこれでいいやって。

で、今日やったら GStreamer で動画が再生できなくなったんですけど。
再生は Celluloid 等を使えばいいんだけど Nautilus でサムネイルができない。
それは困る、とりあえず元に戻したい。

CentOS – Yum パッケージのダウングレード! – mk-mode BLOG

これで libav だけダウングレードしたら元通りになった。
Fedora 34 では yum でなく dnf コマンドです、オプションは同じ。
具体的には以下のコマンドを打ち込んだ。

# Listup
dnf --showduplicate list gstreamer1-libav

# Downgrade
sudo dnf downgrade gstreamer1-libav-1.18.4-2.fc34

バージョンを指定はハイフンの後に付ければいいようで。
指定しなければ勝手に一つ前になるみたいだけど一応。
そうそう、GStreamer のアップデートを禁止しないと。

sudo sh -c "echo 'exclude=gstreamer1*' >> /etc/dnf/dnf.conf"

dnf では /etc/dnf/dnf.conf に追記します。
dnf.conf は起動時読み込みなので再起動の必要があります。

これでアップデートされなくなるけど修正されても気が付くことができないw
まあ次の GStreamer アップデートは Fedora 35 の時でいいかなって。
SELinux を有効にしたままの Fedora ではセキュリティなんて無視でいいってばさ。

Flower Park

先週から久々に夜勤です。
歳をとったせいかキツイ、休日はずっと寝ていたい。

でも太陽にの光を浴びないとなんか体調が戻らない。
しかし鳥達はまだ川へ戻っていない、とはいえ田んぼも飽きた。
今日は趣向を変えてフラワーパーク江南で花でも。

アニスヒソップ?とクマバチ。
花のつもりだったけど蜜を吸っている虫がいっぱい。

セージ?とタイワンタケクマバチ。
羽まで真っ黒の蜂がいるんだ、へー。

バレンギク?とツマグロヒョウモン。
そういえば蝶も蜜を吸うよねって。

花???とオオスカシバ。
こんなヘンテコな形なのに蝶や蛾の仲間って面白い。

ぶっちゃけ花の名前は全然ワカラン。
Google レンズも的外ればかり出るし上記も合っているのかどうか。
筆者は向いていないとよく解った、ということで。
夏場は野鳥だけでなく蜂や蝶もやっていこうかなって。

今回はトリミング無し。
-scaled を URL から外すとフルサイズ画像になります。

pinch

今日の大口町。

chougenbou

チョウゲンボウ、ハヤブサ(スズキ)じゃないようで残念。
今日の収穫は以上、いやアオサギやダイサギは沢山いたんだけど。

って本当に野鳥ブログにするんかい。
いいかげんにプログラミングを再開しよう。
とりあえず macOS 用 RAW 画像選別アプリのほうを。

まずピンチを実装したい、トラックパッドで拡大縮小ね。
標準アプリはあたりまえにできるけど実装しなきゃできない。

cocoa – -[NSResponder swipeWithEvent:] not called – Stack Overflow

最初にまんまコレやって失敗した。
だってメソッド名がまぎらわしいんだもんもん。

Cocoaの日々: 1月 2011

こっちでいい、なんだ日本語で見つかるジャン。
NSResponder の magnifyWithEvent メソッドね。

ただ setFrameSize するのはどうなんだ。。。。。
拡大や縮小を指定し再描写にする。

#!/usr/bin/env python3

from AppKit import *
# Kill of control+C
import signal
signal.signal(signal.SIGINT, signal.SIG_DFL)

PATH = 'P1012925.RW2' # LUMIX(Panasonic) RAW image
RECT = NSMakeRect(0, 0, 600, 400)
wins = []

class RawView(NSView):
    def initWithFrame_(self, rect):
        objc.super(RawView, self).initWithFrame_(RECT)
        self.image = NSImage.alloc().initWithContentsOfFile_(PATH)
        self.draw_size  = 1
        #self.setWantsRestingTouches_(True) # ?
        return self

    def acceptsFirstResponder(self):
        return True

    def magnifyWithEvent_(self, event):
        print(event.magnification())
        if event.magnification() != 0:
            self.draw_size = event.magnification() + 1
            self.display()

    def swipeWithEvent_(self, event):
        print('swipe')

    def keyDown_(self, event):
        print('key down test')

    def mouseDown_(self, event):
        print('mouse down test')

    def drawRect_(self, rect):
        NSColor.blackColor().set()
        NSRectFill(rect)
        aw = rect.size.width * self.draw_size
        ah = rect.size.height * self.draw_size
        w = self.image.size().width
        h = self.image.size().height
        if aw * h > ah * w:
            width = w * ah / h
            height = ah
            x = (aw - width) / 2
            y = 0
        else:
            width = aw
            height = h * aw / w
            x = 0
            y = (ah - height) / 2
        r1 = NSMakeRect(x, y, width, height)
        self.image.drawInRect_(r1)

class MyWindow(NSWindow):
    def init(self):
        objc.super(MyWindow, self).initWithContentRect_styleMask_backing_defer_(
            RECT,
            NSTitledWindowMask | NSClosableWindowMask |
            NSResizableWindowMask | NSMiniaturizableWindowMask,
            NSBackingStoreBuffered, False)
        # NSView
        self.rawview = RawView.alloc().initWithFrame_(RECT)
        self.contentView().addSubview_(self.rawview)
        # self
        self.setTitle_('RAW image Viewer')
        return self

class AppDelegate(NSObject):
    def applicationDidFinishLaunching_(self, notification):
        window = MyWindow.new()
        window.makeKeyAndOrderFront_(window)
        # save
        wins.append(window)
        # Activate
        NSApp.activateIgnoringOtherApps_(True)

class AppMenu(NSMenu):
    def init(self):
        objc.super(AppMenu, self).init()
        item_app  = NSMenuItem.new().autorelease()
        self.addItem_(item_app)
        menu_app = NSMenu.new().autorelease()
        item_app.setSubmenu_(menu_app)
        # quit menu
        item_quit = NSMenuItem.new().autorelease()
        item_quit.initWithTitle_action_keyEquivalent_('Quit App', 'terminate:', 'q')
        menu_app.addItem_(item_quit)
        return self

pool = NSAutoreleasePool.new()

NSApplication.sharedApplication()
NSApp.setMainMenu_(AppMenu.new().autorelease())
NSApp.setDelegate_(AppDelegate.new().autorelease())
NSApp.run()

できたけど。
拡縮の原点は左下、ジェスチャ終了でゼロを投げてくる。
数値はアクション毎にリセット、うーん計算が難しい。
てかレスポンスが酷い、Preview.app 等と全然違う。

コレ違うだろって感じ、もう少し調べなきゃ。