midonia415のブックマーク (882)

  • イヤホン配信を支える音のプログラミング入門 - Mirrativ Tech Blog

    こんにちわ。shogo4405です。エントリーは普段UI開発を行なっているクライアントエンジニア向けに、Mirrativのイヤホン配信を支えている音のプログラムの基礎を紹介していきたいといます。 音のプログラミングの概要を掴んでもらい、より詳しい部分については文献を調べるための参考になれば幸いです。 はじめに イヤホン配信の概要になります。Mirrativの配信はゲーム音源をマイクからの集音に頼っています。ユーザーが配信を行う際に、イヤホンを装着するとゲーム音源が配信にのらず視聴側としては物足りない配信になります。 これを解決する手段として、OS内部で再生中のゲーム音源をキャプチャーした音源。マイクから集音した音源。これらの音源を合成する方法があります。この手段をとることにより、イヤホンしながらでもゲーム音声を視聴者に届けることができるようになります。サービス上では、イヤホン配信と呼称し

    イヤホン配信を支える音のプログラミング入門 - Mirrativ Tech Blog
  • Unityチームで出社してわかりあい会をしたお話 - Mirrativ Tech Blog

    こんにちは、ミラティブUnityエンジニアの菅谷です。 先日、ミラティブには新たなUnityエンジニアが加わったためUnityチームでオフィスに集まり、わかりあい会をしてみました。 ミラティブはリモートで業務を行っており、来年もリモート体制を続けることを宣言しています。 note.com 一方、リモートでの業務を続けていると同じ場所に集まり、直接顔を合わせることも重要だと考えるようになりました。 また、ミラティブには「わかりあう願いをつなごう」というミッションや、「わかりあおうとし続ける」という行動指針があり、わかりあうことを日頃から大事にしています。 Unityチームでもチームメンバーのわかりあい促進のため、新メンバーのジョインのタイミングで全員出社して2021年の振り返りや今後について話し合いました。 YWTでの振り返り はじめに、YWT(やったこと、わかったこと、次にやること)のフレ

    Unityチームで出社してわかりあい会をしたお話 - Mirrativ Tech Blog
  • 配信コメントバー 〜 PiP 描画パフォーマンスとの向き合い方 - Mirrativ Tech Blog

    こんにちは、クライアントエンジニアのちぎら(@_naru_jpn)です。先日 配信コメントバー 〜 iOS15 で実現する新しい PiP 体験 という記事を公開しました。ミラティブアプリ上では Unity を利用して 3D のアバターであるエモモを描画しており、配信コメントバーの描画コストが大きすぎるとエモモの動きや見た目に影響しますし、画面のスクロール操作にも支障が生じます。今回は、複数の描画方法についての計算コストの計測結果と共に、配信コメントバーの描画をいかに最適化したかについて書きたいと思います。 描画の基的な方針 配信コメントバーの全体像 前回の記事 で AVSampleBufferDisplayLayer と CMSampleBuffer に言及しました。CMSampleBuffer に表示する内容を描画する方法は、たくさんの種類があります。 画像をそのまま書き込んだり、ピク

    配信コメントバー 〜 PiP 描画パフォーマンスとの向き合い方 - Mirrativ Tech Blog
  • 配信コメントバー 〜 iOS15 で実現する新しい PiP 体験 - Mirrativ Tech Blog

    こんにちは、クライアントエンジニアのちぎら(@_naru_jpn)です。先日ミラティブの iOS アプリバージョン 9.38.0 にて「配信コメントバー」機能をリリースしました。この機能は iOS15 から利用可能になった PiP に関する技術を活用したもので、ミラティブ以外のアプリを開いている時に、端末の画面上にミラティブ固有のコンテンツを表示できる革新的な機能です。今回は、この「配信コメントバー」機能について背景や概要をご紹介したいと思います。 「配信コメントバー」機能とは 従来、iOS ではアプリがバックグラウンド状態に移行した後は、画面上に独自のコンテンツを表示するといったことは基的にできませんでした。例えば、ミラティブ iOS アプリでは配信中のコメントを届けるために、プッシュ通知を利用しています。 iOS 15 からピクチャ・イン・ピクチャ(以下: PiP)の柔軟性が増したこ

    配信コメントバー 〜 iOS15 で実現する新しい PiP 体験 - Mirrativ Tech Blog
  • ゲームエンジニアから見たミラティブ - Mirrativ Tech Blog

    はじめに こんにちは、Unityエンジニアのおはぎ @ohayo_ohayo_ です。 前職ではスマホゲームの開発をしており、今年の5月にジョインして約半年が経ちました。 現在はMirrativ内でエモモというアバター部分の開発をしています。 スマホゲーム開発とは結構違うなあと思ったので、 その辺をカジュアルに書こうという試みです。 プロダクト 大前提としてMirrativはゲーム配信アプリであり、ゲームではありません。 Unityを使っている部分は主にエモモの制御部分であり、一つのシーンで完結しています。 そのシーンに様々な機能を追加していくため、大きな一つのシーンとなります。 機能としては着せ替え、アニメーション、Cinemachineを使った演出が主であり、 それぞれはゲーム開発でも使われることがある技術です。 体力や攻撃力などのパラメータがないため、 パラメータのほとんどが見た目に

    ゲームエンジニアから見たミラティブ - Mirrativ Tech Blog
  • AndroidチームのIDE警告ゼロへの取り組み - Mirrativ Tech Blog

    こんにちは。エンジニアのshogo4405です。普段は、ミラティブで開発しながら、余暇にOSSのHaishinKit*1*2をつくっています。稿では、Androidチームで取り組んだAndroid Studioから出てくる警告対応ゼロの仕組み化について紹介します。 はじめに 筆者は、警告は一つ一つ適切なアクションを行うべき対象と考えています。警告一つ一つに意味を持っています。リリース後にクラッシュレポートを見て「あー警告」で指摘されてたという失敗経験もあります。チーム開発においては、IDEの警告ゼロが当然になるように働かきかけています。 Androidチームでは、2021年第3四半期のOKRの一つとして警告ゼロ対応を掲げました。着手当初は278 warnings, 306 weak warnings, 75 infosの警告等がありました。 ゼロ警告へのアプローチ まず初めにチームで実施

    AndroidチームのIDE警告ゼロへの取り組み - Mirrativ Tech Blog
  • 家事代行のお姉さんがおすすめしてくれたトイレ用洗剤がまじで強かった

    キリ子 @kiriko1231 まじで何の情報???って感じなんだけど家事代行のお姉さんにお勧めされたコレ使ってみたら、あれウチのトイレこんなに綺麗になるポテンシャルあったん??って誰がみてもわかるくらい一晩でピッカピカになったスゴイ(まじで何の情報??) pic.twitter.com/jByEqTQp2j 2021-10-20 11:50:18

    家事代行のお姉さんがおすすめしてくれたトイレ用洗剤がまじで強かった
  • ミラティブのプロダクト開発体制と組織を解説する: The Mirrativ Model, Autumn 2021 - Mirrativ Tech Blog

    はじめに みなさまお久しぶりです、前回記事を書いたのが1年前というよこて @n0mimono です。今回はミラティブのプロダクト開発の体制的な話を書いてみようと思います。 ミラティブではMirrativというサービスを作り、運営していますがこれをどういう体制で作っているのかというお話です。開発フローとか技術的な話というより、どういう組織構造で作ってるのか、あるいは開発するものをどう決めているのかというあたりを語ります。(開発フローってどうなってんの?みたいな話は他の誰かが書いてくれるはず!) 先にネタバレするとこの記事はこのの影響を受けています。 www.amazon.co.jp の影響を受けて開発体制をつくったというわけではなく、少しずつ改善していって後から振り返ったら「あれこれ似たようなことやってるな・・」という感じですね。 プロダクト開発と体制 The tribes ミラティブの

    ミラティブのプロダクト開発体制と組織を解説する: The Mirrativ Model, Autumn 2021 - Mirrativ Tech Blog
  • ミラティブ、コミュニティ施策の導入ゲームタイトル数が月間65タイトルに増加(前年比500%増)

    ミラティブ、コミュニティ施策の導入ゲームタイトル数が月間65タイトルに増加(前年比500%増)~スマホゲーム売上向上の定番施策として、2021年8月売上Top100のアプリのうち40タイトルが導入済 ※1 ~ スマホゲーム配信者数で日一のゲーム配信サービス「Mirrativ(ミラティブ)」(以下Mirrativ)を運営する株式会社ミラティブ(社:東京都目黒区 代表取締役:赤川隼一)は、Mirrativにおけるコミュニティ施策の導入ゲームタイトル数が月間で65を突破したことをお知らせいたします。この結果、2020年10月からの1年間で月間の導入ゲームタイトル数は約500%増加となり、ゲーム会社さまから長期的なゲーム売上向上のための定番施策として支持を拡大しています。(※1 調査会社調べ) ■コミュニティ施策のゲームユーザーへの影響 ゲーム会社さまと共同するコミュニティ施策では、ユーザー

    ミラティブ、コミュニティ施策の導入ゲームタイトル数が月間65タイトルに増加(前年比500%増)
  • 1ms 以下のリアルタイムオブジェクト検出/画像処理を目指して Goの配信サーバサイドで通知ぼかしを実装してみたこと - Mirrativ Tech Blog

    こんにちは ハタ です。 今回は以前iOSのクライアントサイドで実装していた通知ぼかし機能をサーバサイド(配信サーバ)上に再実装した事を書きたいなと思います 今回はかなり内容を絞りに絞ったのですが、長くなってしまいました、、 目次機能があったのでつけてみました、読み飛ばして読みやすくなった(?)かもしれません 目次 目次 通知ぼかし機能とは サーバサイド通知ぼかし プロトタイプの実装 苦労の始まり その1 画像処理速度 苦労の始まり その2 データ量 さらなる計算量の削減を求めて さらなる最適化へ Halide の世界へ 簡単な halide の紹介 苦労の始まり その3 いざ リリース リリースその後 We are hiring! 通知ぼかし機能とは 通知ぼかし機能は、ミラティブ上での配信中に写り込んでしまったiOSの通知ダイアログをダイアログの中身を見えないようにぼかし処理をしてあげる

    1ms 以下のリアルタイムオブジェクト検出/画像処理を目指して Goの配信サーバサイドで通知ぼかしを実装してみたこと - Mirrativ Tech Blog
  • ISUCON11予選に参加して予選敗退しました - Mirrativ Tech Blog

    こんにちわ、エンジニアのタテノです。 8/21 に ISUCON11予選 が開催され、ミラティブから私とかずたかさん、stakmeさんの3人でチームミラティブとして参加しました。 isucon.net 3人ともISUCON参加ははじめてで、各々事前準備しつつ、当日、一時30位くらいまでスコアが伸びる場面もあるなど健闘しましたが、残念ながら予選敗退しました。 ミラティブからは、牧野さんが別チームで参加しており、見事10位で予選通過しました!おめでとうございます! tech.mirrativ.stream 記事では、チームミラティブでのISUCON予選を振り返っていきます。 参加表明 5/28 にISUCON11 の予選受付日程がアナウンスされ、牧野さんからエンジニアチームに対して、ミラティブチームでも出ませんかとお声がけがあります。 私は、これまでちょくちょくISUCONの話を聞いていたも

    ISUCON11予選に参加して予選敗退しました - Mirrativ Tech Blog
  • ISUCON11予選に参加して10位で予選突破しました - Mirrativ Tech Blog

    こんにちは、バックエンドエンジニアのmakinoです。先日行われたISUCON11予選に参加し、10位で予選突破することができました。 isucon.net 私が所属している「カレーおじさん」チームは、前職の同僚の @sugaret, @lazydg と組んでいるチームで、ISUCON参加は3回目、予選突破は去年に続いて2回目になります。 それでは、さっそくISUCON11予選を振り返っていきたいと思います。 使用したツール alp pt-query-digest Cloud Profiler alpはaccess log解析、pt-query-digestはslow query解析で毎度使っているものです。 今年はCloud Profilerを新たに使ってみることにしました。いつもはベンチマーク実行時にpprofを手で叩いており面倒だったのですが、Cloud Profilerは継続的にプ

    ISUCON11予選に参加して10位で予選突破しました - Mirrativ Tech Blog
  • Mirrativ×Unity as a Library 活用事例と開発テクニック - Mirrativ Tech Blog

    こんにちは、Unityエンジニアの菅谷です。今回はUnity as a Libraryの活用事例と開発テクニックとして、以前のLTで紹介した内容をまとめました。Mirrativでの活用事例を通してUnity as a Libraryの強みや課題を共有し、他のプロダクトでの導入の参考になれば幸いです。2021/6〜2021/7にMirrativ×Unity as a Libraryのテーマで行った3のLTをまとめた内容となっています。 mirrativ.connpass.com meetup.unity3d.jp mirrativ.connpass.com MirrativにおけるUnity Mirrativにはエモモという配信をサポートする3Dアバターが存在します。ユーザーは衣装やアクセサリーなどのアイテムを組み合わせてエモモを着飾ることができます。MirrativはiOSはSwift

    Mirrativ×Unity as a Library 活用事例と開発テクニック - Mirrativ Tech Blog
  • Mirrativ のアバター活用事例を紹介します! - Mirrativ Tech Blog

    こんにちは、バックエンドエンジニアの平松です。今回は Mirrativ でのアバター(エモモ)を活用した機能開発事例を紹介します。 Mirrativ のエモモ Mirrativ にはエモモと呼ばれるUnityで動く独自の3Dアバター機能が存在します。 エモモはユーザが自身の好みに合わせて自由にカスタマイズ可能なアバターであり、 Mirrativ では定期的に開催しているイベントに合わせて様々なパーツや衣装などのカスタマイズ用のアイテムを多数リリースしています。 カスタマイズ用のアイテムの追加のみではなく、エモモを活用した様々な機能の開発・リリースも行っています。 記事ではこれまで開発してきた機能について紹介していきたいと思います。 なお、エモモがどのようにして動いているのかの詳細については今回は割愛しますので、興味のある方はこちらの記事をご覧ください。 tech.mirrativ.str

    Mirrativ のアバター活用事例を紹介します! - Mirrativ Tech Blog
  • 【iOS】ゲームアプリの音声設計とミラティブの配信について - Mirrativ Tech Blog

    こんにちは。エンジニアのshogo4405です。ゲーム開発会社様より、iOSで画面収録またはミラティブで配信をすると、SEは鳴るが、BGMが消える場合がある。技術的な仕様について教えてくださいと連絡をいただく場合があります。 エントリーでは、ミラティブの配信中にゲームBGMが鳴らない現象について、ゲームアプリ側での回避方法の例をご紹介したいと思います。 はじめに ミラティブのライブ配信は、iOS11で導入されたReplayKitAPIを利用して実現しています。iOS標準機能として画面収録と呼ばれています。画面収録の利用方法は、次の通りです。 [設定.app] → [コントロールセンター] → [コントロールを追加] → [画面収録]を追加する[画像1] コントロールセンターを開き、新規登場した ◉ マークを長押しする。[画像2] [写真] を選び。収録を開始する。 画面収録開始後に時

    【iOS】ゲームアプリの音声設計とミラティブの配信について - Mirrativ Tech Blog
  • 【iOS】Unity Framework とクラッシュ解析の取り組み - Mirrativ Tech Blog

    こんにちは、Mirrativ iOS エンジニアのちぎらです。クラッシュが発生して、その原因が分からないととてもかなしい気持ちになります。このブログでも以前から触れているように、Mirrativ のクライアントアプリではエモモなどの表示に Unity を使用しています。今回は、Unity の Framework とその内部で発生したクラッシュ解析の取り組みについて紹介をしたいと思います。 隠されたクラッシュ情報 Mirrativ iOS アプリではクラッシュ情報の解析と集計に Firebase Crashlytics を使用しています。Bitcode を有効にしている場合、App Store Connect からダウンロードした dSYM ファイルを Firebase Crashlytics にアップロードすることによってクラッシュ情報の詳細が見えるようになります。しかし、dSYM ファイ

    【iOS】Unity Framework とクラッシュ解析の取り組み - Mirrativ Tech Blog
  • Androidアプリをリアーキテクチャした話 - Mirrativ Tech Blog

    Mirrativ Androidエンジニアのmorizoooです。今回はAndroidアプリをFluxにリアーキテクチャした話をします。 背景 Mirrativは2015年春頃に開発が始まり、もうすぐリリースから6周年を迎えようとしています。以前はアーキテクチャについてのルールが決まっておらず、個々人が思うがままコードを書いており、開発しているメンバーでさえ処理の流れが追えなくなっているような状況でした。そこで、まずは既存のコードの改善を行いました。詳しくは以下の記事をご覧ください。 tech.mirrativ.stream 既存コードを改善した後に、開発の指針としてFluxアーキテクチャを選定しました。 Fluxを選定した理由 状態がどこで更新されているのか分からなくなるという一番の課題が、Flux の導入によって解消できそうだった iOSはFluxで実装していくという話が出ており知見を

    Androidアプリをリアーキテクチャした話 - Mirrativ Tech Blog
  • 【Unity】Mirrativのエモモ着せ替えの仕組みを解説する - Mirrativ Tech Blog

    こんにちは、Unityエンジニアの菅谷です。今回はMirrativのアバター(エモモ)の着せ替えについて解説します。Mirrativはゲーム配信のサービスではありますが、大きな特徴としてエモモがあります。エモモは2018年にリリースされ、ライブ配信のお供としてエモモが使われるようになりました。ユーザーは衣装やアクセサリーなどのエモモアイテムを組み合わせてエモモを着飾ることができます。エモモアイテムは主にイベントで追加されており、今では5000種類以上あります。 エモモの着せ替え エモモアイテムには以下の種類があります。 体型 体格や身長 顔のパーツ 髪型や目、口など 化粧や装飾 アイシャドウやフェイスペイントなど 服装 服やなど アクセサリーや置物 カテゴリーは全部で30種類以上あり、肌や目などのエモモアイテムは色が変えられます。ユーザーはエモモアイテムを組み合わせたり、色を変えたりして

    【Unity】Mirrativのエモモ着せ替えの仕組みを解説する - Mirrativ Tech Blog
  • ミラティブ おすすめ配信の仕組みについて解説 - Mirrativ Tech Blog

    こんにちは、エンジニアのタテノです。 ミラティブアプリを起動するとおすすめ配信の一覧が表示されます。 今回はこのおすすめ配信の仕組みについて解説しつつ、おすすめ配信の運用・改善を行う上でのポイントなどをまとめてみました。 システム面では機械学習などのトピックも含みますが、今回はサーバサイドの設計周り、特にパフォーマンスを考慮している部分にフォーカスしています。 おすすめ配信一覧 おすすめ配信の役割 ユーザはすでにお気に入りの配信があれば、フォロータブから配信に入室しますが、ミラティブをはじめて初期の段階やお気に入りの配信がない場合は、そのほとんどはおすすめ配信から配信に入室します。おすすめ配信はユーザが配信に興味を持つきっかけとしてその役割を果たしており、とても重要です。 ミラティブでは常時、多数の配信が行われており一度に全ての配信を表示することはできません。たくさんある配信の中からそのユ

    ミラティブ おすすめ配信の仕組みについて解説 - Mirrativ Tech Blog
  • テック業界で働く、社会人1年目から知っておきたい「分析の基本的な考え方」- 分割と分解の違い - | キャリアハック(CAREER HACK)

    スマホゲーム実況が楽しめる『Mirrativ(ミラティブ)』の分析部、坂登史文さんによる寄稿記事「分析の基的な考え方」を前後編の2立てでお届け。PM、マーケター、デザイナーはじめ、あらゆる職種で「分析」する前に知っておきたい、分割と分解の違いとは? 【プロフィール】ミラティブ分析部 坂登史文 @sakamoto_mirra ミラティブにてデータ分析グループリードと新規事業PMを務める。2010年京都大学理学研究科修了。大手メーカー系IT企業でSAPコンサルタントとして会計システムの開発に従事。その後、データサイエンティストとしてDeNAで活躍。2014年3月、freee株式会社に参画、データ分析チーム・グロースチームの立ち上げ、会社設立freeeのプロデュースなどを経て、現在はミラティブ。新規事業をの責任者を経て、現在は分析部部長。 はじめに こんにちは、株式会社ミラティブ分析部の

    テック業界で働く、社会人1年目から知っておきたい「分析の基本的な考え方」- 分割と分解の違い - | キャリアハック(CAREER HACK)