タグ

big5のブックマーク (231)

  • iOSDC Japan 2024のセッションを振り返る社内勉強会を開催しました! - Mirrativ Tech Blog

    こんにちは!iOSエンジニアのmuneです。 今回は、2024年8月22日(木)〜8月24日(土)に開催されました iOSDC Japan 2024 について、セッション内容を振り返る勉強会を社内で開催いたしましたので、その様子をご紹介します! ミラティブはiOSDC Japan 2024をスポンサーとして協賛しております。 tech.mirrativ.stream 勉強会の前に:会場でのエピソード 今年のiOSDCからはスポンサーブースを楽しく回れるようスタンプ形式のビンゴの取り組みが行われていました。 弊社メンバーもスタンプを押してもらいながら気軽にスポンサーブースに立ち寄れるのでとても良い取り組みだと感じたようです! いつか弊社でもブースを出してみたいと話していました。 また弊社インターンのメンバーは初めての現地参加だったそうで、 「実際にiOS界隈で有名な方と直接話すことができたり

    iOSDC Japan 2024のセッションを振り返る社内勉強会を開催しました! - Mirrativ Tech Blog
    big5
    big5 2024/10/30
  • DroidKaigi 2024 参加レポート - Mirrativ Tech Blog

    Androidエンジニアの北川と藤原です。9月11日〜13日に開催された DroidKaigi 2024 に参加してきました! 3日間濃密な時間を過ごしてきましたので、その内容をレポートします。 ミラティブは 2022 年から DroidKaigi に協賛しており、今年で3年目を迎えます。 tech.mirrativ.stream Workshop Day 1日目は、JetBrainsのSebastian Aignerさんによるワークショップ「From 0 to 100 with Kotlin and Compose Multiplatform」が開催されました。 github.com こちらは、Kotlin を活用したマルチプラットフォーム開発について、実際に手を動かしながら学ぶワークショップです。 前半は Kotlin Multiplatform、後半は Compose Multipl

    DroidKaigi 2024 参加レポート - Mirrativ Tech Blog
    big5
    big5 2024/09/27
  • 【ミラティブ】DroidKaigi 2024 にスポンサーとして協賛します - Mirrativ Tech Blog

    こんにちは、ミラティブの野呂です。 ミラティブは、2024年9月11日(水)〜13(金)の3日間にかけて開催される、「DroidKaigi 2024」に協賛します。 DroidKaigi とは 「DroidKaigi」は、Android技術情報の共有とコミュニケーションを目的に開催される、エンジニアが主役のAndroidカンファレンスです。 2024.droidkaigi.jp 協賛する背景 ミラティブは、ミッションである「わかりあう願いをつなごう」のもと、ゲーム配信プラットフォーム「Mirrativ」を運営しています。 ミラティブは「Mirrativ Tech Community & Activity Policy」を掲げ、エンジニアの社内外への発信を強く奨励しています。ミラティブのエンジニアは社外に対して積極的に発信し、イベントに参加し、OSSコミュニティに強く貢献しています。また、社

    【ミラティブ】DroidKaigi 2024 にスポンサーとして協賛します - Mirrativ Tech Blog
    big5
    big5 2024/09/10
  • メンバーの「スキ」をわかりあいたい!フロントエンドのLT会を開催しました - Mirrativ Tech Blog

    こんにちは!フロントエンドエンジニアの どじねこ です。 今回は少し前となりますが 2024年5月に社内で開催したLT会についてご紹介したいと思います。 よろしければ先日公開されました「iOS・Android 合同のLT大会を開催しました!」も合わせてご覧ください tech.mirrativ.stream ⛳️ LT会を開催した背景 ミラティブには多数のエンジニアが在籍しており、配信やライブゲームを楽しんでいただけるよう日々活動しています。メンバーの技術分野はバックエンド、フロントエンドUnity、インフラなど多岐にわたり、それぞれの専門性を活かして課題解決に取り組んでいます。 Webフロントエンドではモバイルと異なりチームではなく、強く興味を持ったメンバーで構成されるギルドが主体となって定期的に勉強会や知見の共有会を行っています。今回はそうした勉強会の延長として、社内外に向けて発信する

    メンバーの「スキ」をわかりあいたい!フロントエンドのLT会を開催しました - Mirrativ Tech Blog
    big5
    big5 2024/08/29
  • ログ基盤のFluentdをFluent Bitに移行して監視ツールを実装した話 - Mirrativ Tech Blog

    はじめまして、Azuma(@azuma_alvin)です。現在大学院の1年生で、2024年2月から4ヶ月間ミラティブのインフラチームにインターンとして参加しました。普段はインフラやMLOpsといった領域に興味があり、最近はVim環境の整備がマイブームです。 記事では、ログ基盤をFluentdからFluent Bitへ部分移行した経緯とその2種類の監視ツールの実装についてお話しします。 記事の最後に、インターンから見たインフラチームの特徴と私が4ヶ月間で学んだことを紹介しています。興味がある方は末尾までスクロールしてぜひご覧ください。 1. 背景と目的 2. ミラティブのログ基盤について 3. ログ欠損の原因調査 Fluentdのバッファリングの仕組み fsnotifyを用いたバッファリングの観察 負荷試験 日付時刻フォーマットとワイルドカードによるログ欠損 ログ保存とサーバータイムスタン

    ログ基盤のFluentdをFluent Bitに移行して監視ツールを実装した話 - Mirrativ Tech Blog
    big5
    big5 2024/06/28
  • AddressableによりWebGLゲームのクラッシュ率が改善した話 - Mirrativ Tech Blog

    こんにちは、ミラティブ菅谷です。MirrativのWebGL製ライブゲームにて、アセットのロード方法をインスペクタでの直接参照からAddressable Asset System(以下Addressable)に変更したことで、クラッシュ率が大幅に改善し、クラッシュせずにプレイが終了した「正常プレイ率」は98%まで改善しました。記事では、その具体的な手順と効果について紹介します。 課題背景 MirrativのライブゲームはWebGLで動いていますが、特にモバイルのWebGLではパフォーマンスに気をつける必要があります。今回改善を行ったプロジェクトではもともとAddressableを使用していませんでした。プロジェクトの初期リリース時点では大きな問題もなく運用できていましたが、アセットやリソースを追加していくにつれてクラッシュが多く見られるようになりました。ただし、WebGLではクラッシュし

    AddressableによりWebGLゲームのクラッシュ率が改善した話 - Mirrativ Tech Blog
    big5
    big5 2024/06/12
  • 【Go】time.Time.AddDateの注意点と対策 - Mirrativ Tech Blog

    こんにちは、バックエンドエンジニアの藤井脩紀です。 今回の記事では日付計算に潜む罠についてお話しさせていただきます。 なお今回はGoでの事例をご紹介しますが、原理的には他の言語やライブラリでも同様の事象が発生する可能性があります点にご注意ください。 time.Time.AddDateの注意点 突然ですがここでクイズです。 来月が何月か知りたいので以下のようなコードを書きました。 このコードを実行したのは10月だとします。 結果は何になるでしょう? // AddDateの引数は順に年、月、日でそれらの値を加算したtime.Timeを返してくれます fmt.Printf("%d月\n", time.Now().AddDate(0, 1, 0).Month()) 「え、11月でしょ?」と思う方もいらっしゃるかもしれませんが正確には異なります。 焦らさずに書きますが答えは「11月か12月のどちらか

    【Go】time.Time.AddDateの注意点と対策 - Mirrativ Tech Blog
    big5
    big5 2023/10/31
  • Jetpack ComposeにおけるViewの多重タップ、複数同時タップの防止策 - Mirrativ Tech Blog

    こんにちは。ミラティブのAndroidエンジニアのかねき@kanesyです。 以前の記事でも何度か紹介していますが、MirrativのAndroidアプリでは新規で作る画面には積極的にJetpack Composeを活用しています。 tech.mirrativ.stream Jetpack Composeでの開発が活発になるにつれて、Viewの多重タップや、リスト中の複数アイテムの同時タップなどの想定外の挙動に向き合う必要が出てきました。 そこで今回は、MirrativのAndroidアプリで採用したJetpack ComposeにおけるViewの多重タップや、リスト中のアイテムの複数同時タップに対する取り組みについて紹介します。 Android Viewにおける多重タップ防止 Jetpack Composeでの実装の説明に移る前に、まずは既存のAndroid Viewにおける多重タップ防

    Jetpack ComposeにおけるViewの多重タップ、複数同時タップの防止策 - Mirrativ Tech Blog
    big5
    big5 2023/04/12
  • マルチモジュールでのリソース整理 - Mirrativ Tech Blog

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

    マルチモジュールでのリソース整理 - Mirrativ Tech Blog
    big5
    big5 2022/11/02
  • DroidKaigi2022に若手3人が参加してきました - Mirrativ Tech Blog

    左から久賀、北川、中脇 こんにちは。Androidエンジニアの久賀と、インターン生の北川、中脇です。 2022年10月5日(水)〜7日(金)に開催された「DroidKaigi 2022」にミラティブのスポンサー枠で行ってきました。 2020年は中止、2021年はオンライン開催なので、2年ぶりの対面での開催となりました。僕ら3人はこのようなイベントに出席することが初めてなので、ワクワクしながら参加しました。 早めに東京ドームシティ会場に着いたのですが、既にたくさんの人がいて交流していたり、ブースの人と話し合っていたりしました。これが国内最大規模のAndroidイベントなのかと、今まで見たことのない景色だったのでびっくりしました。 DroidKaigiで色々な方と話し、たくさん学んできました。ではどう感じたかを書いていこうと思います。 公式アプリのコントリビュート まず、DroidKaigiの

    DroidKaigi2022に若手3人が参加してきました - Mirrativ Tech Blog
    big5
    big5 2022/10/27
  • Swift Concurrencyを利用した表示再開するUIViewControllerの実装 - Mirrativ Tech Blog

    こんにちは、クライアントエンジニアの竹澤(@to4iki)です。 iOSチームでは下記記事にある通り、チーム内でSwift Concurrencyに関してキャッチアップと知見の共有会を行っています。 ブログでは、勉強会を通し既存実装をSwift Concurrencyを利用することで安全に簡潔に書き換えることができそうな箇所があったので、その実装例と、並行処理を表す Task に関して興味深い点を紹介します。 tech.mirrativ.stream tech.mirrativ.stream 置き換え対象の実装 任意の1トリガーに対して、複数の画面を表示するケースを考えてみます。 Mirrativアプリの場合、配信者が視聴者から受け取るギフトに応じて複数のランキングが上昇し、演出用の画面を表示するといった仕様があります。 以下コードのように、上から順に画面を表示する必要があるかを検証し、

    Swift Concurrencyを利用した表示再開するUIViewControllerの実装 - Mirrativ Tech Blog
    big5
    big5 2022/05/31
  • Android12でのピクチャー イン ピクチャーの改善をR&Dしました - Mirrativ Tech Blog

    こんにちは。エンジニアのshogo4405です。普段はAndroidの開発を行いながらときどきiOSの開発を行なっています。稿では、Android12で改善したピクチャー イン ピクチャーをMirrativに導入できないか調査した内容を紹介していきます。 はじめに Mirrativのクライアントチームでは、四半期更新でOKRを運用しています。また、AndroidチームのOKRの取り組みの一環としてAndroid 12でPIPが改善されているので試してみたいなという話になり試してみました。 Android12での、PIPの改善のポイントは次の通りです。 ジェスチャー ナビゲーションでPIP モードにスムーズに遷移するための新しい API フラグ 動画以外のコンテンツのシームレスなサイズ変更を無効にする新しい API フラグ PIP モードの終了時のスムーズなアニメーション 新しいジェスチャ

    Android12でのピクチャー イン ピクチャーの改善をR&Dしました - Mirrativ Tech Blog
    big5
    big5 2022/03/11
  • 社内勉強会「Swiftの並行処理についてのセッションを見る会」を開催しました - Mirrativ Tech Blog

    こんにちは、クライアントエンジニアのちぎら(@_naru_jpn)です。Swift 5.5 で async/await が導入されて久しいですが、皆さま導入はされているでしょうか。プロダクトに導入して活用できればいいですが、すぐには導入できないプロダクトも多くあると思いますし、個人でキャッチアップするにも、温度感の違いや人によってキャッチアップできる分量にも差が出てくると思います。今回は社内勉強会の一環として、 Apple が公開している Swift の並行処理についてのセッションを見る会をした話を書こうと思います。 セッションを見る会をはじめた理由 Swift の並行処理についての機能は、キャッチアップしている人とそうでない人が分かれると思っています。Swift の並行処理については多くの技術記事が書かれていますが、業務にすぐには直結しない内容について技術を吸収する為にはそれなりの気持ち

    社内勉強会「Swiftの並行処理についてのセッションを見る会」を開催しました - Mirrativ Tech Blog
    big5
    big5 2022/03/04
  • ミラティブのUnityアセット運用とそれを支えるCI/CD - Mirrativ Tech Blog

    こんにちは、ミラティブUnityエンジニアの菅谷です。 ミラティブでは週に一回以上のペースでエモモのイベントを行っており、1つのイベントごとに約40個の衣装やエモモアイテムを追加しています。 エモモアイテムの多くはUnityを活用して作られており、アセットバンドルとして追加・更新されます。 今回はハイペースなアセットバンドルの更新と運用を支える技術について解説します。 エモモアイテムがユーザーに届くまでの流れ Unityでのエモモアイテムのセットアップ、アセットバンドルのビルド、アセットバンドルの配信のフローによりエモモアイテムがユーザーに届けられます。 全体の概要は以下となっています。それぞれについて解説します。 1. エモモアイテムのセットアップ 3Dデザイナーがエモモのアイテムを以下のようにしてUnityプロジェクトに追加します。 Mayaなどで3Dモデルを作成する Unity上で3

    ミラティブのUnityアセット運用とそれを支えるCI/CD - Mirrativ Tech Blog
    big5
    big5 2022/02/28
  • ミラティブの開発チーム編成をアプデしたよ Feb 2022 - Mirrativ Tech Blog

    みなさま、おはようございます。よこて @n0mimono です。令和になってなんと4年目に入りました。 今回はミラティブのプロダクト開発チームを更新したよ、という話をします。ついでに周辺の取り組みも紹介してみます。 前回記事はこちら tech.mirrativ.stream ちなみに今日はこのの影響を受けています。 チームトポロジー 価値あるソフトウェアをすばやく届ける適応型組織設計 作者:マシュー・スケルトン,マニュエル・パイス日能率協会マネジメントセンターAmazon プロダクト開発と体制 組織 まず基情報から。プロダクト開発に関わる組織そのものは今まで通りです。いわゆる機能別組織です。メンバー一覧見たら80人くらいいました、エンジニアは30人くらい。 技術部 ← エンジニアとか 分析部 ← 分析とか 企画部 ← PdMとか デザイン部 ← デザイナーとか エンジニアの組織はエン

    ミラティブの開発チーム編成をアプデしたよ Feb 2022 - Mirrativ Tech Blog
    big5
    big5 2022/02/08
  • 接続が途切れないストリーミングサーバの無停止アップデートを実装してみました - Mirrativ Tech Blog

    こんにちは ハタです。 最近 SO_REUSEADDR / SO_REUSEPORT を使ったストリーミング配信サーバの無停止アップデート(Hot Deploy)を実装してみたので紹介したいなと思います ことの経緯 HTTPサーバによる Hot Deploy の仕組み ストリーミング配信サーバへの応用 SO_REUSEADDR/SO_REUSEPORT を使った実装例 Hot Deploy の組み込み Hot Deploy 実装時に気をつけたこと その後 We are hiring! ことの経緯 ミラティブでは以前から何度か紹介したとおり自前の配信基盤設備を持っています。 配信基盤のミドルウェアも内製であり、機能追加やライブラリの更新などがあるたびにミドルウェアのバージョンアップ作業(メンテナンス)も自社で実施しています ストリーミング配信サーバといっても、何か特別な事はなく一般的なHTT

    接続が途切れないストリーミングサーバの無停止アップデートを実装してみました - Mirrativ Tech Blog
    big5
    big5 2022/02/01
  • 【北の国から】休学を決めてからミラティブで1年間インターンするまでを振り返る - Mirrativ Tech Blog

    初めまして!クライアントエンジニアのいっちー(@ichi1101)です。 今年の4月からインターンとして入社し、iOSチームの一員としてMirrativの開発業務を行ってきました。 普通に学生エンジニアをしていた自分にとって、ミラティブでの開発は新鮮なことばかり。高水準なチーム開発に慣れていくのに苦労しましたが、学びも多くとても成長できたと実感しています。 記事では、私が休学を決めてからインターン生活中の現在までのお話を紹介していきたいと思います。 目次 目次 インターンに参加するまで 休学を決めた 覚悟が必要だった ミラティブの存在を知った 偶然の力で面接にこぎつけた いきなりCTOと面接して入社 入社後から今まで こんなにでかいコードは生まれて初めて見た 初給料日までは白米をべた わかりあう願いに溢れていた CocoaPodsのソースコードを読むことになった 広告SDKの改修で障害

    【北の国から】休学を決めてからミラティブで1年間インターンするまでを振り返る - Mirrativ Tech Blog
    big5
    big5 2021/12/22
  • ミラティブでの配信画質改善の取り組み - Mirrativ Tech Blog

    こんにちは、ストリーミングチームの松です。 今回はミラティブの配信の画質を向上させるために行った対応の概要をご紹介したいと思います。 目次 目次 スマホゲームの配信の画質を改善したい 映像のエンコードの負荷が大きくなってしまう 映像のエンコード時のビットレートを高くする必要がある ミラティブでの配信画質改善への取り組み 映像ビットレートの向上 アップロード速度の調査 アップロード速度のでない配信ユーザーへの救済措置 映像ビットレートの動的な調整 配信サーバーの台数・コスト見積もり・増設 配信サーバー増設に関連する対応 サービスイン・サービスアウトの自動化 段階的なリリース まとめ We are hiring! スマホゲームの配信の画質を改善したい 配信の画質を改善したい場合には、画質が悪いとはどういうことかについて考える必要があります。 多くの場合画質が悪い一番の大きな理由は「配信される

    ミラティブでの配信画質改善の取り組み - Mirrativ Tech Blog
    big5
    big5 2021/12/13
  • イヤホン配信を支える音のプログラミング入門 - Mirrativ Tech Blog

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

    イヤホン配信を支える音のプログラミング入門 - Mirrativ Tech Blog
    big5
    big5 2021/12/09
  • 配信コメントバー 〜 PiP 描画パフォーマンスとの向き合い方 - Mirrativ Tech Blog

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

    配信コメントバー 〜 PiP 描画パフォーマンスとの向き合い方 - Mirrativ Tech Blog
    big5
    big5 2021/12/02