主にWeb関係のツールやライブラリをOSSとして公開しています
自宅サーバーは良いぞ
ニコニコ動画の公式プレイヤー互換の高パフォーマンスなコメント描画ライブラリ / High peformance High compatibility comment drawing library
Home Page: https://xpadev-net.github.io/niconicomments/
License: MIT License
確認中
npm上にTypeScript用の型定義を公開する
ニコ生の動画・コメントについてはコメントのフォーマット(ニコ生独自のタグ?)でエラーがでるからかコメントを読み込めません。
https://egg.5ch.net/test/read.cgi/software/1675234536/14
legacy apiは投稿者コメントにユーザーidがなかったためコメント単体で判別が出来たが、v1には差異が無いため、threadの名前を見るしか無い
現状thread名とか一切確認していないのでそこを修正する必要がある
入力の対応形式を追加
現在対応を考えているフォーマットは以下の通り
当面このissueは開けとくので他フォーマットの対応要望あればコメントにお願いします
要調査
現状のscale*行数/20は正しくないし、yammabooさんのやつも合わなかった
2行はみ出している
https://chu-commentart.ssl-lolipop.jp/2022/05/04/post-10944/
branch: feature/niwango
https://twitter.com/nico_nico_talk/status/1539496227179741184
らしいので@秒数コマンドを視聴者コメントにも適用できるようにする設定を追加する予定
40米制限見たいな機能を作る
上限値は任意
saccubusみたいに消す法則も設定できるようにする?
Windowsとmacは基本どの環境にも同じフォントが入っているが、モバイル端末だと物によって入っているものが違うため、
予めデータセットを用意しておき、初期化時に表示サイズが同じになるように補正を行う
設定で有効無効切り替えられるようにしてconstructor内で横幅を元にリサイズする
データセットは全角半角文字と空白、タブ文字などいくつか用意する
WebWorker上でcanvasが使用できないため、OffscreenCanvasにFirefox及びSafariが対応するまでは保留
ブラウザシェア?そんなもん知らん
少なくともFirefoxが対応してから実装予定
@置換で置換元と置換先が等しい場合に無限ループが発生する
投稿者コメントの上に通常のコメントが表示されている
@秒を適用した長いコメントを流すと画面半分まで来た時点でコメントが消えてしまう
現状コメントを読み込んだタイミングですべてのコメントの配置を決定しているため、
途中からコメントを追加できるように、新たにメゾットを追加する
追加したタイミングから、再計算を初めて、結果がおなじになった時点で処理を停止すれば負荷を最小限に抑えられる
現状すべてのコメントをmeasureTextしているが、
中を流れるコメントは当たり判定的に消費する範囲は必ず一定で、
高さもDRなどが存在しないためある程度絞れる
そこで、nakaのmeasureTextはgetImage時に行い、初期化時はコマンドを処理して高さ計算をするだけに変更する
※ueやshitaのコメントは今まで通りmeasureTextを行う必要がある
コメントを大量に読み込むと、コメントのキャッシュが溜まってメモリが爆発する
Brave@m1 macで試したところ12GBを越えたあたりで爆発した
キャッシュの最大保持数を設定する必要があるかも
そもそも50000件も普通読み込まないから問題ないと思うけど
とりあえず this.timeline の参照だけ Math.floor したものを使って、それ以外は非整数な vpos を使ったパッチを用意しました (これで何も出ないということはなくなる) rinsuki@9770991
一見ちゃんと動いているように見えますが、適当に一本の動画で試しているだけなので、プラグインとかCA依存で壊れるかもしれません (内部構造に詳しくないのでこれでいいかわからない)
現状同一ユーザーが積みを複数回投稿している場合に衝突が発生してしまうためこれをどうにかしたい
ユーザーを絞った上で投下時間をもとにCAごとのグループを生成してグループ化する?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.