birdきょうのつぶやき@digitune.bsky.social

きょうのつぶやき@digitune.bsky.social

この話、単純に -vf “fieldmatch=combmatch=full,yadif=1:-1:1” みたいに組み合わせるだけだと、テレシネソースにおいては1)fieldmatchが30p(1234456788)に変換、2)yadifがそれを2倍にして60pに変換するので、(続) (19:16 bskyから・詳細)

60pにした時のフレーム構成が2-3ではなく2-2-2-4になってしまう。うぅむ。 それにしても巷の情報は60i→24pに戻す、という例ばかりで、元24pのテレシネソースや30p、60iのソースが混在する60iなvideoを情報量最大で変換するなら60pにするのが正解だと思うんだが… (19:21 bskyから・詳細)

それはともかく、上記「24pや30p、60iなソースが混在する60iなvideoをできるだけ綺麗に60pに変換する」という問題をffmpeg filterで解く場合、とりあえず次の設定が正解っぽい。(続) (19:22 bskyから・詳細)

-vf “dejudder,fps=30000/1001,fieldmatch=combmatch=full,decimate=mixed=1,yadif=1:-1:1,fps=60000/1001” ↑こんな感じ。最初のdejudder、fps filterは単にソースを60iに揃えているだけ、 (19:24 bskyから・詳細)

fieldmatchでソースがテレシネ or 30pの場合は綺麗に30pになり60iならinterlace flagが残る、その後のdecimate filterでは30p化出来た時に重複フレームがあれば削除して24p化(30pやinterlace flag付きのフレームはそのまま)、 (19:27 bskyから・詳細)

でその後yadifがinterlace flag付きフレームについてはdeinterlace処理をしつつフレームレートを2倍にして(ここの出力は48pの場合と60pの場合がある)、最後に再びfps filterで60pにする、という感じ。 (19:29 bskyから・詳細)

いちおう手元で軽く検証した限り、テレシネソースはちゃんと2-3プルダウンされた60pになり、60iな動画は単純にフィールド補間されて60pに出来た。今のところ音ズレなども気にならない感じ。これでいけるかな? (19:31 bskyから・詳細)

birdきょうのつぶやき@digitune.bsky.social

きょうのつぶやき@digitune.bsky.social

Fire TV CubeのCCGTVより明確に良い点の一つはAV1デコーダを搭載しているところで、ちょうど1年前にlibsvtav1のテストをしたとき作ったAV1/60pな動画をKodiでサクサク再生できた。まぁ今はまだウチの環境だとエンコード時間がかかりすぎるので移行は厳しいけど… (10:43 bskyから・詳細)

ところでH.264はインターレースにも対応しているけれど、最近(?)の世代の規格はもう対応していないので、インターレースな動画をエンコードする場合はdeinterlaceして30pもしくは60pにする必要がある。 (10:48 bskyから・詳細)

これまでffmpegで使えるdeinterlaceフィルタではyadifが一番好き、と思っていたけれど、巷のいろいろなdeinterlaceテクの情報から、単にyadifのみを使うよりもfieldmatchフィルタと組み合わせた方が綺麗になることに気づいた。 (10:56 bskyから・詳細)

というのも元が24pのテレシネソースなら全体の3/5のフレームにはそもそも完全な情報が載っており、60p化の際に補間が必要なmixed frameは2/5だけなんですよね。なのでfieldmatchフィルタでmixed frameのみyadifが補間するようにしたらかなり綺麗になった感。 (11:02 bskyから・詳細)

optionとしては基本defaultで -vf “fieldmatch,yadif=1:-1:1” みたいな感じ。次世代のおうちサーバを構築する時は参考にしよう。 (11:04 bskyから・詳細)

そういや激しく今さらなのだが、AV1ならChromeで何もしなくても再生可能なのは地味にありがたい。 (11:05 bskyから・詳細)

fieldmatchフィルタのcombmatchオプションはデフォルトのsc(scene change)よりfullの方が良いかもなー。 (13:43 bskyから・詳細)

birdきょうのつぶやき@digitune.bsky.social

きょうのつぶやき@digitune.bsky.social

スプラのフェスで100倍マッチに勝てて嬉しい。特に最近全然塗れないホットブラスターカスタムなんていう参加するだけで味方に不利を強いるようなブキを使ってるだけになおさら(汗。ホッカス楽しいんすよホッカス。 (19:36 bskyから・詳細)

birdきょうのつぶやき@digitune.bsky.social

きょうのつぶやき@digitune.bsky.social

image 0絵の素晴らしさは言うに及ばず、さらにALT textをしっかり付けてくださっているのが先生らしくて素敵。 RT https://bsky.app/profile/shirahamakamome.bsky.social/post/3klhke6ffm22l (18:39 bskyから・詳細)

というわけでRe-post対応完了。Re-postはそのSNS内固有の操作なので、SNSから出てしまうと単なるlinkになってしまうのはある意味しょうがない。 (19:22 bskyから・詳細)

birdきょうのつぶやき@digitune.bsky.social

きょうのつぶやき@digitune.bsky.social

image 0さあテスト。 https://www.docs.bsky.app/docs/get-started (19:53 bskyから・詳細)

image 2image 1もう一回だけ。 https://atproto.blue/en/latest/index.html https://formatter.org/python-formatter (20:18 bskyから・詳細)

とりあえずBluesky→Twitterなbridgeを作って動かし始めた。ただこちらは300文字、あちらは144文字なのではみ出た分は有無を言わさずぶった切る適当仕様💦。 (20:34 bskyから・詳細)

そういやBlueskyのRate Limitsについては下記に情報あるんだけど、これを読むとREADはGlobal limitにしか制約されないのだろうか?ちょっと怖いので今は15分毎に実行するようにしてみている。 https://www.docs.bsky.app/docs/advanced-guides/rate-limits (20:35 bskyから・詳細)

image 3Facebookにも流れていくようにしてみたぞ。linkが展開されないのは待ち時間が足りていないのかな…?というわけでまたテスト。 https://youtu.be/zbgCgggOJvA?si=5kaB02rzWfcHeUq6 (23:39 bskyから・詳細)

というわけでBlueskyのAPIのおかげで久々に自分のつぶやきがTwitter/Facebookへ流れていく環境が戻った。後は日々のつぶやきをblogへまとめる部分も復活させないと… (23:45 bskyから・詳細)

image 4テストに使うならこのいよわさんの新曲(?)の方が良かったな。良い曲。 https://youtu.be/7-2PUEl-7a4?si=iSJiTfG7OtmEWfSy (23:51 bskyから・詳細)

First | Prev | 18 | 19 | 20 | 21 | 22 | Next | Last