【bash/zsh】検索付きリスト表示をターミナルで

iptv でテレビを見る。


モバイル、パソコンを問わずいろいろなOSで見ることができる。

ざっくり1分遅れで、気の利いた動画クライアントで見ることができるのだが、

GUI アプリでは、不具合時の状況が掴みづらい。

なので、ターミナル経由で見てみる。

👉 Roshan-R/termv: A terminal iptv player written in bash

この termv というアプリ。

ターミナル上の検索付き選択肢一覧リスト表示。

どうやって作ってるのか。

コードを見てみます。


SHELL="${BASH_BINARY}" \
            fzf -e -i --reverse --cycle --with-nth="1..-2"\
                --bind "enter:execute(_play {})"\
                --bind "double-click:execute(_play {})"\
                --header="Select channel (press Escape to exit)" -q "${*:-}" \
            < <( printf '%s\n' "${CHANNELS_LIST}" )

https://github.com/Roshan-R/termv/blob/0b7468d1bba239e50adc7e7693035f3652b9bec4/termv#L210

「fzf」というやつ。




多くの人が集まっています。


👉️ junegunn/fzf: :cherry_blossom: A command-line fuzzy finder

先人先生、今回も勉強になります。

いつもありがとうございます。


DJI OSMO ACTION シリーズの HDR って BT.709 なの?

まずは、HDR の規格を確認。


👉 よくわかる、HDR徹底解説! ガンマカーブの違い | EIZO株式会社 hatena-bookmark

10bit なんだけども、どうやっても BT.709 しか撮れない!

以下、HDR モードで撮影した動画の mediainfo


Video
ID                                       : 1
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main 10@L5@High
Codec ID                                 : hvc1
Codec ID/Info                            : High Efficiency Video Coding
Duration                                 : 25 s 192 ms
Bit rate                                 : 55.0 Mb/s
Width                                    : 3 840 pixels
Height                                   : 2 160 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 29.970 (30000/1001) FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 10 bits
Bits/(Pixel*Frame)                       : 0.221
Stream size                              : 165 MiB (95%)
Encoded date                             : 2024-08-23 08:24:56 UTC
Tagged date                              : 2024-08-23 08:24:56 UTC
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709
Codec configuration box                  : hvcC

まさか「HDR」というより「HDR モード」(のようなもの) では。。。。

You do not have HDR....is a pure commercial gimmick from producers, saying that they use a double exposure to gain more data...is not.
In fact, even that BT709 is cut, as is not Full but Limited RGB.
The 10bit is only for color, is not HLG or LOG true, but also a mambo-jumbo, as DR is not bigger but contrast is lowered, compressing the shadows and highlights (upper shadows, lower highs).
So...OA4 is not HDR, is not LOG, is not HLG. Is just BT709 with a possibility to get 10bit color profile and that is it.

Still, the good part (always is one, not only negative parts) is that this "LOG" (more like Neutral) profile will allow you to post edit better for scenes that have big contrast, like night footage with a lot of lights.

At this point you do not have a true HDR or LOG action camera on the market, GoPro is worst in dark and Insta ACE being 8bit.

Cheers.

HDR がないのは、プロデューサーが二重露光を使ってより多くのデータを得ると言っているだけの、純粋な商業的な仕掛けです...
実際は違います。BT709 もカットされており、Full ではなく Limited RGB です。10
ビットはカラー専用で、HLG や LOG ではありませんが、DR は大きくならずコントラストが下がり、シャドウとハイライト (上部シャドウ、下部高) が圧縮されるため、非常に複雑です。
つまり、OA4 は HDR でも LOG でも HLG でもありません。10 ビット カラー プロファイルを取得できる可能性のある BT709 であり、それだけです。

それでも、良い点 (常に 1 つあり、悪い点だけではありません) は、この "LOG" (ニュートラルに近い) プロファイルを使用すると、多くのライトがある夜の映像など、コントラストの大きいシーンを後から編集できる点です。

現時点では、市場には真の HDR または LOG アクション カメラはありません。GoPro は暗闇では最悪で、Insta ACE は 8 ビットです。

乾杯。

👉 10bit recording but not recorded in HDR? | DJI FORUM hatena-bookmark

Thank you for your feedback. The Osmo Action 3 does not use common standards such as HLG and HDR10, so some mobile devices and computer software do not recognize footage shot by the product as HDR footage. The product adopts HDR technology for camera sensors which supports shooting with a high dynamic range and 10-bit color depth, and can effectively restore highlight and shadow details. We appreciate your understanding.

ご意見ありがとうございます。Osmo Action 3はHLGやHDR10などの一般的な規格を使用していないため、一部のモバイルデバイスやコンピューターソフトウェアでは、製品で撮影した映像がHDR映像として認識されません。この製品は、カメラセンサーにHDRテクノロジーを採用しており、ハイダイナミックレンジと10ビットの色深度での撮影をサポートし、ハイライトとシャドウのディテールを効果的に復元できます。ご理解のほどよろしくお願いいたします。

It’s their own version of a high dynamic range. Not true HDR where you switch the monitor/tv (mine works in HLG and HDR10) to full brightness and contrast in order to take advantage of the extra range. The Action footage looks as though it flattens dynamic footage but that’s not HDR!

これは、ハイダイナミックレンジの独自のバージョンです。モニター/テレビ (私のモニター/テレビは HLG と HDR10 で動作します) を最大輝度とコントラストに設定して、追加のレンジを利用するという、真の HDR ではありません。アクション映像は、ダイナミックな映像を平坦化しているように見えますが、それは HDR ではありません。

👉 Osmo Action 3 HDR problem | DJI FORUM hatena-bookmark

👉 ffprobe vs mediainfo hatena-bookmark


【SwiftUI + SwiftData】MVVMパターンを考えたときに

SwiftUI ベースに MVVM のパターンを考えたとき。

Apple と Orange の子 View があるとして、こういう感じで認識していましたけども MVVM。

1つの View に対して、1つの ViewModel でライフサイクルは同期している。

その View の子の View に対しては親の ViewModel を渡したり、差し込んでいく。

著名な公開されているコードを見てると、こういう形が多いように見えるし、そのほうが書きやすいように思える。

世の中そんな流れですかね。

どうなんですかね。

ModelContext てそんな子に向けてのツールですよね。

どこかなんかいい参考記事ないですかね。

まあ、ざっくりの話なんですけども。