OSS への取り組み Webやソフトウェア業界全体の発展に向け、DeNAでは積極的にオープンソースソフトウェア(OSS)コミュニティを支援しています。また、OSSに貢献する社員の活動を推奨し、多くのOSSを公開しています。
pick up HEVCPlayerView HEVC Video with Alpha ファイルを Video Toolbox を用いて表示するアニメーションビューです。 動画エフェクト負荷を大きく軽減した HEVCPlayerView 詳解 → HandlerSocket MySQLとその派生で動作するプラグインです。SQLを使わずにInnoDB等のデータベースエンジンを直接アクセスすることによってエンジンの性能を限界まで引き出します。このプラグインはMariaDB等に含まれているので、試すにはそれらのバイナリを利用できます。 → Wahid ゲームのパフォーマンス向上を目的とした CreateJS 互換のライブラリです。詳細は 下記のエンジニアブログ を参照してください。 CreateJS 互換ライブラリ wahid の開発 → HandyRL 強い対戦ゲームAIの開発を目指した実践的な並列強化学習ライブラリです。最小限かつシンプルなコードで、誰でも手軽に扱える使いやすさ、拡張性を持たせた実装を重視しており、高いカスタマイズ性から様々なゲームドメインで利用可能です。 → Capistrano::DeployLocker Ruby製デプロイツールの Capistrano でデプロイの排他実行を可能にするgemです。 → Capistrano::NetStorage Ruby製デプロイツールの Capistrano で外部ストレージシステムを経由したpull型デプロイの汎用的な仕組みを提供するgemです。外部ストレージとして Amazon S3 との通信部分を担うプラグインがあります。 C::NetStorage::S3 → YOLOv3 in PyTorch 画像中の複数の物体を検出する物体検出アルゴリズムYOLOv3を、PyTorchにて再現実装したOSSです。我々はC言語によるオリジナルの実装をPyTorch上に再実装し、同等の検出精度を再現しました。 → App Engine Logger AppEngine 第2世代用のロガーです。go.opencensus.io の機能をラップしています。 → PacketProxy セキュリティ診断のためのローカルプロキシです。HTTP1/HTTP2/HTTPS通信だけでなく、gRPCや低レイヤーのTCP/UDPを利用したバイナリ通信にも対応しているのが特徴です。 → PacketProxyPlugin PacketProxy用の拡張プラグインを開発するための環境です。 → Interceptors for Cloud Datastore Cloud Datastore 用の gRPC Interceptor です。Redis, AppEngine Memcache, InMemory へのキャッシュ機能を実装しています。 → App Engine Http Client Authentication Service-to-Service を実装するにあたってのトークンを発行する機能を実装したライブラリです。新規性のあるロジックはなく、すでに公開されているライブラリを使ったラッパーです。 → devfarm モバイルデバイスのシミュレータ/デバイスクラウドの切り替えを容易にし、クラウド上のアプリ起動状況を管理するツールです。詳細は 説明スライド を参照してください。 説明スライド → digdag-operator-bq-wait BigQuery のデータロード、データ更新が行われたタイミングでそのデータを使った処理を開始させることができる digdag plugin です。maven リポジトリを公開しているのですぐに使えます。 → DeClang チートからアプリを守るために、プログラムコードにセキュリティ機能を適用するコンパイラです。現在のところコード難読化機能を提供しています。 → COCOA動作チェッカー 接触確認アプリCOCOAが接触確認に用いる信号を受信し反応することで、その動作を確認し、COCOAの普及促進を支援するためのWebアプリです。 → Nota 機械学習プロジェクトに利用できる高度にカスタマイズ可能なアノテーションシステムです。 → Unity meta checker Unity の生成する meta ファイルの過不足を高速に検査し、限定的な autofix を提供するツールです。詳細は 説明スライド を参照してください。 説明スライド → Dena.CodeAnalysis.Testing Roslyn を使った C# の静的解析器を実装する際に必要なこまめで小粒度のテストを助けるライブラリです。 → PacketProxyHub PacketProxyのユーザー間でPacketProxyの設定を共有するためのWebサービスです。 → Anjin Unityプロジェクト向けオートパイロットフレームワークです。 解説ブログ → MLogger Ruby標準のLoggerと同様に扱える、通常とは別のログローテーションの仕組みを持ったシンプルなロガーです。高負荷環境や一時的な環境との相性がよく、MobageやSakashoシリーズで培ったノウハウを活かしています。 → ommonitor ゲームサーバー向けのマッチメイキングフレームワークであるOpen Matchの内部状態をモニタリングするTUIツールです。 → MysqlRewinder MySQL を利用するテストにおいて、MySQL 上のデータを高速に削除する gem です MysqlRewinder という gem を作った → tflite-runtime-builder GoogleのTensorFlow LiteをGitHub Actionsでビルドし、各種プラットフォームのランタイムを提供します。リアルタイム画像認識といったエッジAIをスマートフォンで動かす際に有用です。 機械学習を用いたIRIAM顔認識機能の改善の取り組み → onnxruntime-builder MicrosoftのONNX RuntimeをGitHub Actionsでビルドし、各種プラットフォームのランタイムを提供します。より軽量かつ省メモリで動かすために、ビルドオプションをチューニングしています。 → mempatch Androidアプリやゲーム実行時のメモリデータを動的に改ざんするツールです。脆弱性診断や開発のサポートツールとして開発しています。 →