配信基盤

CES 2026参加レポート (後編)

LVCC: Central Hall TOALLの軽量VRゴーグルと薄型タブレット 「例の黄色い袋」でみんながわかるInsta360 噂の「真の壁掛けテレビ」を展示するLG 毛色の違うブースを用意しているパナソニック REGZAがちゃんと存在感を出しているHisense 潤沢な資金が見受けら…

CES 2026参加レポート (前編)

はじめに CESって? どんなところを周ったか? LVCC: North Hall / West Hall 数多の「AI」を取り入れたロボットたち 一線を画す性能を見せてくれたボストン・ダイナミクス ロボットにも応用できる基礎技術でしっかりとプロダクトを作るエッジコンピューティ…

明日からちょっと自慢できる画質AUTOの仕組みについて

初めに 画質AUTOの仕組み スムーズな画質変更への工夫 実際のコードを見ながら処理を追ってみる まとめ・宣伝 初めに この記事は DMMグループ Advent Calendar 2025 の12日目の記事です。 こんにちは。メディア基盤開発部でフロントエンドエンジニアをしてい…

Google Cloud Next '24 参加レポート

はじめに パブリックプレビューのGemini 1.5 Proを早速試してみました Finopsセッション AIを活用できるか? 検索とAI Geminiに向けて強化されたインフラ Gemimi インフラ関連 気になったGemini関連と今後の利用など Gemini によるインフラ運用の進化 Gemini …

Diátaxisによる知見の体系化を図ろうとしている話

はじめに Diátaxisとは ~概要~ Diátaxisとは ~まずは簡略化して捉えてみる~ Diátaxisとは ~各要素について~ Tutorials How-To guides Reference Explanation 弊チームでの取り入れ方 別枠でドキュメントの歩き方(Q&A)を用意 How-To guidesをラベルで管理 Exp…

新卒数年目メンバーが贈るGoogle Cloud Next '23 参加レポート

はじめに GCP謹製CDNの今とCrunchyrollでの活用事例 Media CDNは地球規模のCDN Media CDNによるビジネスへの影響 (Mojの例) CrunchrollでのMedia CDN活用事例 GCPの最新LLM: PaLM2の新機能とデモ PaLM2での新機能 Demo : Grounding with Enterprise Search …

2023年のゼロランタイムCSS in JSを考える

はじめに 技術選定の背景 評価観点 ランタイムとゼロランタイム、そしてハイブリッドCSS in JS という選択肢 比較結果 パフォーマンス測定 ‍❄️Kuma UIについて Kuma UI導入にあたっての課題 最後に ⚠️この記事は、2023年11月20日時点の情報をもとに制作して…

なぜソフトウェア開発のドキュメント管理は難しいのか

ドキュメントは何を達成しようとしているのか なぜドキュメント管理は難しいのか 情報の鮮度を保つドキュメントを限定する 対象の性質に合わせてドキュメントを管理する 具体的な例 管理する場所 管理方法 最後に 宣伝 この記事は、DMM グループ Advent Cale…

DroidKaigi 2023に参加しました!

はじめに DroidKaigi 2023参加レポート ブース出展しました! DMMブース内でやっていたこと DMMブース紹介 DMMノベルティ紹介 スピーカーとして登壇しました! セッションの感想紹介 これで安心! Compose 時代のDon’t keep activities対応 Unleashing the P…

Jetpack Composeで自動でスクロールする無限スクロール可能な横方向のPagerを実装する

はじめに 今回作るもの AccompanistのHorizontalPagerについて HorizontalInfiniteAutoScrollPagerの実装 APIを考える 実装を考える InfiniteAutoScrollPagerState ページの計算 自動スクロールの実装 完成したrememberInfiniteAutoScrollPagerState関数 Hor…

サッカーワールドカップ日本代表戦から見る私たちの基盤トラフィック推移

11月23日 ドイツ戦 11月27日 コスタリカ戦 12月2日 スペイン戦 12月6日 クロアチア戦 感想 余談 ちなみに… この記事は DMMグループAdvent Calendar 2022 の11日目の記事です。 はじめましての人ははじめまして。知っている人はこんにちは。DMM.comのEC&デジ…

新卒1年目のエンジニアが動画の品質可視化ツールを作るまで

はじめに 新卒の初仕事 どんなデータが欲しい? お手軽に可視化ツールを作りたい 完成したもの 使ってみてどうだった? 終わりに はじめに 20新卒として、動画配信事業部配信基盤グループへ7月に配属された中村(@zyackusan)です。 配信基盤グループでは、DMM…

連載を終えて ~DMM動画配信サービスを支える配信基盤のこれまでとこれから~

なぜ連載をやるに至ったか まぁまずはこれを見てほしい 見えにくいところだけど結構すごいことをしている(つもり) なんで知られていないのだろう そんななかでプロダクトが完成し始める そうだ! 連載をしよう! 本連載の歩き方 動画の規格に興味がある / 今…

配信基盤を支えるオンプレ技術

はじめに DMMの動画配信の特徴とその基盤 各基盤の構成と技術について キャッシュサーバ オリジンサーバ ストレージ コストの考え方 各ティアで共通すること 運用面など キャンペーン負荷との戦いとVODST あとがき はじめに インフラ部 配信基盤グループ1の…

もしもに備えた動画配信基盤のDRシステム

はじめに DRについて DMM動画のバックアップ DMM動画の規模 AWSによるDRスタックの構築 1. DR Adminからレストア開始 2. レストア 3. エンコード 4. DRM・パッケージングの開始 5. 再生URLの保存 開発の小話 MediaConvertの性能検証 AWS SPEKEを用いたDRMの…

LOD 24時公開を支える技術

はじめに 「ライブのアーカイブ配信」について 「アーカイブ配信」における重要ポイント 進化してきたアーカイブ配信 配信初期の問題点 1.第1世代自動化 1-1.公開時間短縮と作業負担軽減 1-2.画質の向上 2.第2世代自動化 2-2.24時公開対応 第2世代の成果 今…

エンコーダーを支えるffmpeg活用

はじめに 分散エンコード 前処理 (プリエンコード~ファイル分割) エンコード 後処理 (映像と音声ファイルの結合) 高品質なエンコード Androidデバイスに最適化した画質 VRHQ高画質 おしまい はじめに こんにちは。 動画配信事業部・配信基盤チームの八…

パワーアップしたエンコーダーが成し遂げたこと ~爆速動画エンコーダーと改善されたワークフロー~

これまでの納品から配信までのフロー エンコーダー刷新の機会がやってくる JIROが成し遂げた納品から配信までのフロー JIROが成し遂げたこと その1. 受領加工フェーズ全体の高速化 その2. 進捗の可視化 その3. 垂直統合されたファイル管理 その4. 爆速エンコ…

エンコーダー刷新とマネジメントシステム

TL;DR 従来のエンコードシステムを振り返る エンコードの規模感を振り返る なぜエンコードシステムを移行するのか 作業を整理してみる 新エンコードシステムを設計する 高速エンコードの肝 命名コンペ Manager設計 技術選定 システム構成 Manager実装 タスク…

配信サーバー「VODST」

はじめに VODSTとは DMMの動画配信 DMMの配信の特徴 VODSTの歴史 VODSTv3の課題 VODSTv4アーキテクチャ VODSTv4ソフトウェア構成 ソフトウェア Wowza Streaming Engine OpenReasty Consul キャッシュ制御 動的負荷分散 高可用性 ログ ダウンロード配信 VODST…

NON TECHな知識と技術でチームを支える仕事

「進化する動画配信基盤」についての連載第4回目となるこの記事では、エンジニアリング以外の契約に関するお話 について記載します。 お客様に動画をお届けするためには、エンジニアリング以外の工程も大事 DRMを使用するために契約が必要 STEP1.契約書の雛…

DRMサーバー「mlic」

はじめに mlicとは DRM HLS AESとDRMの比較表 DRMベンダー マルチDRM マルチサービス mlic mlic処理フロー mlic構成 AWS構成 アーキテクチャ DRMアプリケーション Terraformによる環境構築 CodeBuild + HashiCorp Packer によるカスタムAMIの作成 Blue/Gree…

DMM Player v2を成し遂げるCMAF

はじめに CMAF とは これまでの配信技術 (~2016) 消えゆくもの WMV の終焉 業界の動向を追う 暗号化仕様の規格化 PlayReady Training Event in Shenzhen CMAF が目指したもの (理想) AES-CTR vs AES-CBC CMAF で達成されたもの (現実) 閑話: DRM とプレイヤ…

Electron製動画再生プレイヤー「DMM Player v2」

はじめに ダウンロード再生とは 新しくプレイヤーを作ることになった経緯(脱Silverlight) 新しいプレイヤーはElectron製 動画再生機能 クロスプラットフォーム対応 学習コスト・メンテナンス性 プレイヤーの技術的な部分 再生コア部分について 余談 ~プレ…

連載、始めます ~進化する動画配信基盤~

お品書き 過去の記事 こんにちは! EC&デジタルコンテンツ本部 動画配信事業部で配信基盤チームのプロダクトオーナーをやっている@yanoshiです。 私たちのチームでは、「動画」サービスの動画/画像コンテンツの配信基盤を開発・運用しています。 「動画配信…

購入済み動画一覧に検索機能を実装する際に使用したIndexedDBの話

こんにちは。動画配信事業部 EC-Growthチームの荒井です。 私たちEC-Growthチームは、DMMの動画配信サービスをGrowth(成長)させるためのチームで、アナリストと共に売上向上に繋がる施策を打ったり、ユーザのエンゲージメントを高める施策に日々取り組んだ…

DMM動画サービスでA/Bテストを1年間運用してわかったこと

はじめに A/Bテストとは A/Bテストとは、Webマーケティングにおける施策判断の手法の1つ ツールの紹介 用いたツールは Google Optimize Google Optimizeを用いた理由 Google Optimizeの導入 A/Bテストを運用してみて まずは開発環境で確認 A/Bテストの結果…

WebRTCを利用した超低遅延な映像配信

はじめに なぜFlash -> WebRTCにしたのか SFUによる配信側の負荷軽減 サイマルキャストによる複数画質の配信 コーデックの選択 地味な画質のチューニング 監視の回線とマシンスペック その他いろいろな問題 ブラウザのバージョンアップが怖い話 仮想カメラが…

DMM動画サービスの問題を解決しようとしている話(再生URL生成API編)

はじめに チーム紹介 再生URL生成ってなんぞや 20年間で積もり積もった様々な「課題」 旧システムの問題点 新システム(st-api)の概要 構成 特徴 st-apiを支えるツール ノードディスカバリー/ノードマネージメント: Consul APIドキュメント: Swagger CI/CD基…

DMM動画サービスの問題を解決しようとしている話(コンポーネント編)

はじめに フロントエンド側の問題と方針 規模感の話 技術選定の話 作成環境はstorybook for vue パーツの管理方法 カスタムコンポーネント作成のルール ビルドの話 ビルドしたファイルの使い方 SEOの話 まとめ はじめに みなさん、こんにちは。動画配信事業…