タグ

ブックマーク / tech.mirrativ.stream (56)

  • memcached proxyで使うハッシュアルゴリズムを比較した話 - Mirrativ Tech Blog

    memcached proxyのハッシュアルゴリズム比較 はじめまして!hibikiです(@add_bakkers) 現在大学3年生で、最近はネットワークに興味があり勉強中です。2023年8月からインフラチームにインターンとして参加しました。 記事ではmemcached proxyのハッシュアルゴリズム比較の結果を紹介します。 memcached proxyのハッシュアルゴリズム比較 1. 背景と目的 ミラティブでのmemcachedの利用 課題: クライアントサイドでサーバ決定をしている memcached proxyの検討 2. memcached proxyに求められるアルゴリズム キーの分散 移動率の抑制 パフォーマンス ハッシュアルゴリズムの比較 3. 今回行うベンチマークの概要 計測対象とシナリオ 分散と移動率のベンチ 処理性能のベンチ 4. ベンチマークの結果と比較 移動率

    memcached proxyで使うハッシュアルゴリズムを比較した話 - Mirrativ Tech Blog
  • Neural Audio Codec を用いた大規模配信文字起こしシステムの構築 - Mirrativ Tech Blog

    こんにちは ハタ です。 最近Mirrativ上に構築した配信の文字起こしシステムを紹介したいなと思います 音声からの文字起こしは、各社SaaSでAPI提供されているものがあると思いますが、今回紹介するものはセルフホスト型(自前のGPUマシンを使う)になります 構築していく上で色々試行錯誤したのでそれが紹介できればなと思っています どんなものを作ったか 前提知識: 配信基盤 前提知識: Unix Domain Socket Live Recorder Archiver DS Filter VAD Filter NAC / Compress Transcriber NAC / Decompress Speach To Text コンテナイメージ まとめ We are hiring! どんなものを作ったか 今回作ったものは Mirrativで配信されるすべての音声を対象に文字起こしを行う シス

    Neural Audio Codec を用いた大規模配信文字起こしシステムの構築 - Mirrativ Tech Blog
  • ミラティブでのアウトゲーム設計の紹介 - Mirrativ Tech Blog

    こんにちは。ミラティブUnityエンジニアの菅谷(tetsujp84)です。 今回はミラティブのライブゲーム開発で行ったアウトゲームの設計について紹介します。 以前アウトゲーム設計に関してXでポストしたらレスポンスをいただけたのでできるだけ丁寧に解説してみました。こんな話も聞きたいよというのがあったら是非教えてください。 よくありそうなソシャゲアウトゲームの設計について今更記事化してるんだけどどれだけ需要あるんだろう。MVPの概念とかクリーンアーキテクチャライクな知識って業界的な浸透率どんなもんなんだ。— 鉄 -TETSU- (@tetsujp84) 2023年8月28日 アウトゲームについて ゲーム開発者にとっては馴染み深いと思いますが、ゲームにはインゲームと呼ばれる部分とアウトゲームと呼ばれる部分に別れます。インゲームゲーム体験のコアでキャラクターを操作したり、アクションがあったりと

    ミラティブでのアウトゲーム設計の紹介 - Mirrativ Tech Blog
  • UnityでモバイルWebGLゲーム開発を頑張る話 - Mirrativ Tech Blog

    こんにちは。ミラティブUnityエンジニアの菅谷(tetsujp84)です。 ミラティブのライブゲームUnityで開発し、MirrativアプリのWebGLで動いています。 ライブゲームを支える仕組みと実際のライブゲーム開発で使用した技術については過去の記事で紹介しています。 tech.mirrativ.stream tech.mirrativ.stream UnityはWebGL向けにもビルドでき、モバイルのWebGLであってもUnity製プロダクトが動くようになっています。一方で、Unityは正式にはモバイルWebGL対応をサポートしておらず、ネイティブのモバイル開発と比べると開発の難易度は高いです。その難易度の高さは具体的にどこにあったのか、実際にモバイルWebGL向けのゲームを開発した経験を元に知見を共有します。 パフォーマンス編 モバイルWebGLの開発は常にパフォーマンスの意

    UnityでモバイルWebGLゲーム開発を頑張る話 - Mirrativ Tech Blog
  • Unityチームでの輪読会の取り組み紹介とUniRx/UniTaskクイズ - Mirrativ Tech Blog

    こんにちは。ミラティブUnityエンジニアの菅谷(tetsujp84)です。Unityチームの一員として、私たちが週に1時間を費やして行っている輪読会について紹介したいと思います。輪読会では、チーム内で読むを都度決め、それを読み進めていきます。これまでにはパフォーマンスチューニングのやUniRx/UniTaskのを読みました。また、後半にはUniRx/UniTaskので学んだことを元にクイズを作成しましたので是非挑戦してみてください。 具体的な流れ チーム内で読むを決め、全員が(現物 or 電子書籍)を用意します。輪読会では、前回の続きから読み始め、15分程度経ったら区切って次の人に交代します。ある程度のまとまりを読んだら、それぞれの意見や重要そうな点、気付きなどを議論します。1回の勉強会は1時間で、できるだけメンバー全員に参加してもらっています。 ポイント・メリット 輪読会に

    Unityチームでの輪読会の取り組み紹介とUniRx/UniTaskクイズ - Mirrativ Tech Blog
  • iOS16.1 以上でピクチャ・イン・ピクチャが CPU を異常に消費する問題の応急処置 - Mirrativ Tech Blog

    こんにちは、エンジニアのちぎら @_naru_jpn です。ミラティブの iOS アプリでは 配信コメントバー 機能の実現のためにピクチャ・イン・ピクチャを活用しています。ピクチャ・イン・ピクチャは iOS16.1 以上の端末において、特定のシチュエーション *1 で異常に CPU リソースを消費することが知られています。コードの調整によってこの現象が抑制できることが分かり、ミラティブの iOS アプリではバージョン 10.0.1 で応急処置を行ったのですが、今回はその詳細とトレードオフについて解説します。 加えて、この問題は既に Apple へバグレポートとして報告済みですが、Apple への事象の説明のために問題を簡単に再現できるプロジェクトを作成したので、そちらも併せてご紹介しています。 ピクチャ・イン・ピクチャが CPU を異常に消費する問題 iOS 16.1 以上の端末でピクチャ

    iOS16.1 以上でピクチャ・イン・ピクチャが CPU を異常に消費する問題の応急処置 - Mirrativ Tech Blog
  • ミラティブのインターンで趣味開発と大規模開発のギャップを体験しました - Mirrativ Tech Blog

    皆さんこんにちは、earlgray(@earlgray329) と申します。 10月17日〜12月19日の期間で、株式会社ミラティブの就業型インターンシップに参加していました。私は基盤開発技術部のバックエンドチームに所属して様々なタスクに携わらせて頂きました。 インターンシップの中で、普段行なっている趣味開発と Mirrativ という規模の大きいアプリケーションの開発の間で様々なギャップを経験することができたので、今回はインターンの中で着手したタスクとそれによって得られた知見等を紹介します。 目次 目次 基盤開発技術部とは 着手したタスク 1. Mirrativ 管理画面のログイン画面の SPA(React) 化 背景・概要 苦労したこと・得られたこと 2. 任意のユーザとしてログインできるようなデバッグ機能の追加 背景・概要 フィードバック 3. エモカラのオススメのアーティスト一覧と

    ミラティブのインターンで趣味開発と大規模開発のギャップを体験しました - Mirrativ Tech Blog
  • チーム開発だからできるビギナー向け最強学習術 - Mirrativ Tech Blog

    ミラティブでAndroidエンジニアのインターンをしています 中脇です。 個人開発でiOSを1年間した後、インターンでAndroidを1年半やっています。そこでチーム開発だからこそできる最速学習術があると思い、ブログを書いてみることにしました。 もったいぶらずに書くと、毎週金曜日に「コード共有会」というものを開き、新しく書いたコードを共有したり、お互いのコードを指摘したり、先輩エンジニアに指摘されたところを共有しあっています。 毎週コード共有会で集まり議論しています そもそもこのコード共有会はAndroid歴1,2年目の私たちビギナーが自発的にやりたいと言って生まれたもの。ビギナーが中心となって共有会を進めているからこそ、インプットからアウトプットまですることができ、しっかりとした理解に持っていくことができていると思います。 ビギナーは知らないことだらけ 1人で開発をしていた時、何もかも自

    チーム開発だからできるビギナー向け最強学習術 - Mirrativ Tech Blog
  • iOS 16のロック画面映え機能を実装したい衝動に駆られた話 - Mirrativ Tech Blog

    ピクミンのスマホゲームに歩かされ続けている福山です(現在Lv51 - 合計歩数1,415,248) iOS 16で音楽や動画を流しているときにロック画面がいい感じになりましたよね! 正式名称はわかりませんが、ここに表示される画像はアルバムアートやアートワークなどと呼ばれているようです。 Mirrativ iOSアプリの配信視聴時もいい感じになっているはず... と思ったのですが、ただの灰色の画面になっていました😨 「なんとかしたいなぁ」と思い既存のコードとリソースをほんの少しいじった結果、以下のようになりました!Mirrativアプリv9.88.0から反映されています。 大画面で画像を表示したくない or 他の通知もすぐ見たいという場合には画像部分をタップすることでコンパクトに表示されます。 コントロールセンターの右上のブロックを押すことでも画像を見ることができます。 iPhone 14

    iOS 16のロック画面映え機能を実装したい衝動に駆られた話 - Mirrativ Tech Blog
  • マルチモジュールでのリソース整理 - Mirrativ Tech Blog

    みなさん、こんにちは!2022年8月よりAndroidエンジニアとしてインターン中の kitakkun です。 現在MirrativのAndroidチームでは、アプリケーションの品質向上を目指してマルチモジュールの導入を進めています。 Mirrativでは、元々あったmirrorman(当時の開発コードネーム)という巨大なモノリスのモジュールから、新規開発部分をfeatureモジュールに切り出して開発をしています。 モノリスモジュールからfeatureモジュールを分離 元々モノリス部分だったmirrormanが巨大で、mirrormanにあるクラスをfeatureモジュールで使いたいケースがあり、未だmirrormanへの参照が残っている状態です。 なるべくmirrormanへの参照をなくすために、特定のfeatureモジュールでしか使われていないファイルをmirrormanから移動してい

    マルチモジュールでのリソース整理 - Mirrativ Tech Blog
  • ミラティブの社内勉強会の紹介 - Mirrativ Tech Blog

    みなさまこんにちは。@n0mimonoとshirakawaです。今日はミラティブの中で行われている社内勉強について紹介させていただきます。社外に公開しながら社内にも宣伝をする一石二鳥の作戦です。 ミラティブではエンジニアが自身やメンバーのために勉強会や交流会を開くことを奨励しています。 tech.mirrativ.stream その一つとして、毎週木曜日に行われている勉強会を紹介します。 勉強会 以下、社内文書からの転載になります。 なぜやるのか 新しい知識の獲得・技術レベルの向上のため ディスカッションを通してチームビルディング やらないこと 事前資料準備等: 参加者に負担がかかるため どうやるのか を決めます 参加者で読みたかった・読んでみたかったを出す 投票によって選ぶ 週一回、45分集まる曜日・時間(カレンダーは1時間抑える)を決めます 集まった人でを順番に音読していきます

    ミラティブの社内勉強会の紹介 - Mirrativ Tech Blog
  • 【変化・成長・課題】1年間のミラティブのインターンを振り返る - Mirrativ Tech Blog

    こんにちは。気づいたらミラティブに入って1年が経ってました。早いものですね。ブログを書いてて気づいたんですが、1年前の自分と大きく変わっていたことを再認識しました。プログラミング能力といった技術的なことから、仕事・仲間に対する意識といった内面的なことまで、たくさん変化がありました。そんなことをつらつら書いていきます。 目次 目次 自己紹介 ミラティブでの活動内容・働き方 生まれて初めて見たでっかいコード 毎週の勉強会 場所に囚われない働き方ができる 開発エピソード 1年前の自分と比較して We are hiring! 自己紹介 「お前誰やねん」と思われないように少し自己紹介。アプリ開発を始めたのは大学2年生の時。1年間くらい個人でスマホアプリを作ってました。どんなアプリかというと、同じ大学の友達同士で話し合えるTwitterのようなアプリです。オンライン授業で友達が作りづらい状況にあるため

    【変化・成長・課題】1年間のミラティブのインターンを振り返る - Mirrativ Tech Blog
  • 【ミラティブ】CEDEC2022 にスポンサーとして登壇 & 協賛しました - Mirrativ Tech Blog

    こんにちは、ミラティブの野呂です。 2022年8月23日(火)〜25日(木)に行われた CEDEC2022 にて、スポンサーとして登壇 & 協賛をさせていただきましたのでご報告させていただきます。 稿では、セッションの紹介と、資料を公開します。 ※CEDEC2022については、公式サイトをご覧ください https://cedec.cesa.or.jp/2022 ミラティブ登壇者によるセッション 登壇者 プロダクト開発技術Unityグループ マネージャー 菅谷 琢磨(@tetsujp84) エモモデザイン部 3Dグループ マネージャー 下原 雄大(@Youday313) 発表内容 ミラティブでのモバイル×ライブゲーミングへの取り組みと挑戦 ミラティブで取り組んでいるモバイルでのライブゲーミングの事例とライブゲーミングにおけるUnity技術について紹介しました。 ライブゲームにはMir

    【ミラティブ】CEDEC2022 にスポンサーとして登壇 & 協賛しました - Mirrativ Tech Blog
  • Go製ミドルウェアのメモリリークを解決した話 - Mirrativ Tech Blog

    インフラ・ストリーミングチームの id:udzura (@udzura)です。今回は、Goミドルウェアのメモリリークを見つけて解決する際に、どのようなプロセスを踏んでいったかを解説します。 Go製のミドルウェアの概要 ミラティブでは、Webアプリケーションのみならず、ミドルウェアに相当する部分についても必要なものは内製しています。その中の一つに、社内で「Radisha」と呼んでいる各種集計とキャッシュなどを行うためのミドルウェアがあります。Radishaは以下のような特徴を備えています。 GET、SET、SETEXなど基的なRedis互換のコマンドを実装している。そのため、既存のRedisクライアントライブラリから操作が可能である。 ランキング集計、一定時間内のアクセス集計などが行えるよう、Redis にない独自のコマンドを実装している。 高い可用性を志向しており、オンメモリのデータは

    Go製ミドルウェアのメモリリークを解決した話 - Mirrativ Tech Blog
  • ミラティブの開発組織をアプデしたよ Summer 2022 - Mirrativ Tech Blog

    みなさま、今年も夏(summer)がやってきました。よこて @n0mimono です。今回はミラティブのプロダクト開発組織を更新したよという話をします。ついでにこれまでの歴史と今後の展望も紹介します。 前回記事はこちら tech.mirrativ.stream プロダクト開発と体制 組織 まず基情報から、ミラティブの展開するサービスは『Mirrativ』です。メンバーは何らかの形でこのサービスに関わります。前回記事時点で80人と書きましたが、今確認したら100くらいのメンバーがいます。エンジニアが所属する技術部を数えたら40人くらいいます。 前回記事の時点では、単一の技術部の下にグループをぶら下げる構成にしていました。 技術部 アプリ バックエンド インフラ・ストリーミング 人数も増えてきたため、7月から 技術部を2つに分けました 。だいたいこんな感じ。 プロダクト開発 Unity アプ

    ミラティブの開発組織をアプデしたよ Summer 2022 - Mirrativ Tech Blog
  • Jetpack Composeを使った複雑なアニメーション事例 - Mirrativ Tech Blog

    ミラティブのAndroidエンジニアのmorizoooです。 MirrativのAndroidアプリでは、新規で作る画面には積極的にJetpack Composeを活用しています。 tech.mirrativ.stream Mirrativは、多くのユーザーがゲームや雑談などの配信をしており、配信を盛り上げるための演出として通常のアニメーションに加えてLottieも織り交ぜ、リッチなアニメーションを実装しています。 Jetpack Compose導入以前は、AnimationListenerのCallbackを入れ子にする形で複雑なアニメーションを実現していたのですが、いざJetpack Composeで実装しようとなるとどう実装するのが良いのか苦心しました。 今回の記事では、実際にアプリで使っているアニメーションを例に、Jetpack Composeで作ったアニメーションを紹介します。

    Jetpack Composeを使った複雑なアニメーション事例 - Mirrativ Tech Blog
  • テスト工程の可視化や自動化に向けた取り組みのご紹介 - Mirrativ Tech Blog

    こんにちは、エンジニアの千吉良(ちぎら)@_naru_jpn です。ここ最近 QA に関して考える機会があり、Systematic Software Testing というを読んでいたところ、色々と刺激を受けるところがありました。計画書の作成やリスク管理などテストの実施以外の領域についても多く書かれていましたが、まずはミラティブの現状に基づいた改善を行うべきだろうと考えました。今回は特にメトリクスの取得などに関して、GAS(Google Apps Script)を活用してミラティブの業務に応用してみたことについてまとめてみました。 以下では細かいことにも触れているので、3行まとめをおいておきます。 手動テストの進捗を見えるようにしたよ GAS(Google Apps Script)で実装したよ ついでに関連業務を自動化したよ ミラティブにおける QA と解決できそうと感じた課題 ミラティ

    テスト工程の可視化や自動化に向けた取り組みのご紹介 - Mirrativ Tech Blog
  • GitHub Actionsのセルフホストランナーを使ってJenkinsをサクッと叩けるようにする - Mirrativ Tech Blog

    7月からミラティブにUnityエンジニアとして入社した森田です。 弊社ではUnityのCIとしてJenkinsを利用していますが、GitHub Actionsのセルフホストランナーと連携させることで、JenkinsはそのままでGitHubのWeb画面からジョブを実行できるようにしてみたので、書いておきます。 課題 実装 GitHub Actionsのセルフホストランナーの設定 JenkinsのAPIトークンを発行する workflowファイルの作成 結果 残った課題 We are hiring! 課題 弊社ではアプリのUnity部分とアセットバンドルのビルドにJenkinsを利用しています。 tech.mirrativ.stream JenkinsはUnityエンジニアに貸与されているMac miniにそれぞれにインストールして運用をしていたため、CIビルドするためにはその都度Mac mi

    GitHub Actionsのセルフホストランナーを使ってJenkinsをサクッと叩けるようにする - Mirrativ Tech Blog
  • SwiftFormatを導入してコード記法を統一化 - Mirrativ Tech Blog

    ミラティブでiOS開発をしている福山(@fokotate)です。 今回はSwiftFormatをMirrativのiOSプロジェクト(約1500のSwiftファイル)へ導入したときのことを話します。 導入にあたって 私は当初、SwiftFormatについてよく知らなかったため導入にはあまり乗り気ではありませんでした。 しかし調べてみると、実行タイミングによってはチームにとってほぼストレスなくソースコードを綺麗に保てることがわかってきました。 コミット実行時にSwiftFormatがコードを変更してコミットを中断、その変更を取り入れて再度コミットするといった一手間だけです。 導入したい気持ちが高まってきたものの、いきなり新しいツールを持ち込むのはチームから反発も受けそうだったので、Slack上で様子をみたり、ドラフトPRを書いたり、勉強会を開いて徐々に受け入れられる状況を作りました (実際は

    SwiftFormatを導入してコード記法を統一化 - Mirrativ Tech Blog
  • ミラティブを退職します! - Mirrativ Tech Blog

    今日が最終出社、明日から有休消化期間だー!!!!うおおおおおおおおおおおお!!!!! 2019年の春から3年間、ライブ配信サービス「Mirrativ」のバックエンドを書いてきた stakme です。この夏で卒業です!お疲れさま〜!!!!! 頑張った、やりきった、当は退職後半年くらい休みたい。けれど借金と税金がそれを許してくれないので、今後も頑張ります。 この記事では、これからミラティブのバックエンドチームに加わる方に向けて 私はこういう理由でミラティブに来たよ 入社時はこういう経験値だったよ この会社ではこういう経験ができたよ という話をします。あとでのんびり自分のnoteに書いてもよかったんですけど、テンションのおかしい退職者の記事がテックブログに載っていたらクリックレート高い面白いかなって思って… ちなみに執筆時点では掲載許可とか取ってないのですが、たぶん大丈夫です。なので書きますね

    ミラティブを退職します! - Mirrativ Tech Blog