VLC: Android アプリを最適化し、大画面で臨場感あふれる動画体験を実現
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。

VLC は、VideoLAN プロジェクトが開発した無料のオープンソースのクロス プラットフォーム マルチメディア プレーヤーです。VLC の設計の中核には、あらゆるファイルと画面のシームレスな互換性があります。VLC ではローカルの動画ファイルと音声ファイルのほとんどが再生可能で、各種のストリーミング プロトコルにも対応しています。VLC エンジンは、多くのサードパーティ製アプリで動画の再生処理に使用されています。VideoLAN の開発チームの最終的な目標は、デバイスや画面サイズを問わず、あらゆるメディアをどこでも再生できるようにすることです。
開発チームが元々 Android 用に VLC アプリを設計しましたが、すぐにユーザーが Chromebook で同じエクスペリエンスをリクエストし始めました。そのとき VideoLAN は、VLC を ChromeOS に導入することで、デスクトップ スタイルのユーザー エクスペリエンスをユーザーに提供する機会を見出しました。
VideoLAN は Android アプリを ChromeOS や大画面向けに最適化し、x86 と 64 ビットの ARM を最初からサポートすることで、さまざまなデバイスやフォーム ファクタで VLC のユーザーに同じ没入感のあるエクスペリエンスを実現しました。
Eyecon の取り組み
チームはまず、VLC ユーザーがデスクトップで使うことを好む機能(マウス入力や右クリック メニューなど)に注目するとともに、外部ストレージ(ハードドライブと USB サムドライブ)が正常に機能することを確認しました。次に、アプリのレイアウトと機能を調整して、デスクトップのような環境でもユーザーが同じ機能を利用できるようにしました。
キーボードとマウスのサポート
チームが行った最も重要な最適化のひとつは、キーボード入力とマウス入力をサポートすることでした。キーボードについては、ショートカットと矢印キーでアプリを簡単に操作できるようにしました。マウスについては、右クリック操作と、ドラッグ&ドロップによる VLC プレーヤーとのファイルのやり取りを可能にしました。
動的なサイズ変更
VideoLAN は、ユーザーが簡単にアプリのスケーリングとサイズ変更を行えるようにするため、複数のバージョンのレイアウトを設計しました。チームはタブレット用の VLC レイアウトをすでに設計していたため、より大画面の幅広いレイアウトに合わせて調整するのは非常に簡単な作業でした。大画面上の追加のスペースを使えるという点を活かして、プレーヤーのオーディオ設定も調整しました。
従来は、個々のレイアウトをテストするには、それぞれについて個別のエミュレータまたはデバイスを使用する必要がありました。しかし、ChromeOS の Android サポートにより、チームはエミュレータを使用することなく、デスクトップ、タブレット、モバイルの UI レイアウトを同じデバイスで一度にテストできるようになりました。これにより、設計とテストの時間が大幅に短縮されました。
さらに、ChromeOS 上の Linux(ベータ版)により、デベロッパーは Android Studio を使用して Android アプリをネイティブにビルドおよびテストし、Chromebook の開発に適したデバイスを作成できます。
Kotlin によるコード作成
特に重要なのは、チームがすべての作業を Kotlin で行ったことです。この強力なプログラミング言語を使って安全で簡潔なコードを記述することは、生産性の向上に役立ちました。アプリのコードベースを削減することで、問題解決にかかる時間を短縮し、アプリのレイアウトと機能の最適化により多くの時間をかけることができました。
VideoLAN の Android 開発チームのリーダーである Geoffrey Métais 氏は次のように言います。「大幅なコードの再編成や書き直しは、機能を損なうリスクがあるので通常は気が進みません。嬉しいことに、Android Studio の組み込み移行ツールのおかげで、Java から Kotlin への移行は非常にスムーズでした。Kotlin のコルーチン フレームワークがパフォーマンスの改善に役立ちました。」
結果
VideoLAN は、モバイル、ChromeOS、Android TV で同じ APK を使用しているため、主任開発者はプラットフォームごとにアプリを最適化するのに 2 か月だけで済みました。ChromeOS での VLC サポートは、数か月前からユーザーから、特に DVD の再生に関して求められていました。これまでのところ、非常に好意的なフィードバックをいただいています。また、最新バージョンの ChromeOS は外部ストレージを完全にサポートしているため、すべての Android ユーザーが同じメリットを得ることができます。
VideoLAN の議長である Jean-Baptiste Kempf 氏は次のように述べています。「私たちはユーザーに最大級のインパクトを与える機会を常に探し求めています。Chromebook 向けに最適化したおかげで、多数のデバイスとフォーム ファクタにアプリを対応させることができました。この取り組みが成功だったことは、世界中のユーザーからの反応を見れば明らかです。」
使ってみる
ChromeOS 向けにアプリを最適化するおすすめの方法をご確認ください。
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2025-07-27 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-07-27 UTC。"],[],[],null,["# VLC optimizes its Android app for immersive video experiences on larger screens\n\n[VLC](https://www.videolan.org/vlc/index.html) is a free, open\nsource cross-platform multimedia player developed by the [VideoLAN project.](https://www.videolan.org/)\nSeamless compatibility with all files and screens is at the core of VLC's\ndesign. VLC is able to play most local video and audio files as well as various\nstreaming protocols, and a large number of third-party apps use the VLC engine\nto handle video playback. Ultimately, VideoLAN's developers want users to be\nable to play everything, everywhere --- no matter what device or screen size they\nprefer.\n\nThe team originally designed the [VLC app](https://play.google.com/store/apps/details?id=org.videolan.vlc)\nfor Android, and it wasn't long before users started requesting the same\nexperience on Chromebooks. That's when VideoLAN saw an opportunity to offer\nusers a desktop-style experience by bringing VLC to ChromeOS.\n\nBy optimizing the Android app for ChromeOS and larger screens --- as well as\nsupporting x86 and 64-bit ARM from the start --- VideoLAN ensured VLC users could\nenjoy the same immersive experience across a range of different devices and\nform factors.\n\nWhat they did\n-------------\n\nThe team started by noting which features VLC users preferred on desktop,\nsuch as mouse input, right-click menus, and making sure external storage\n(i.e., hard drives and USB thumb drives) worked just right. From there,\nthey started adjusting the app's layout and functionality to ensure users\ncould enjoy those same features in a desktop-like environment.\n\n### Keyboard and mouse support\n\nOne of the team's most important optimizations was to support keyboard and mouse\ninput. Supporting keyboards allowed people to use shortcuts and direction buttons\nto easily navigate the app, while mouse input enabled right-click commands and\nfile drag-and-drop to and from the VLC player.\n\n### Dynamic resizing\n\nVideoLAN designed multiple versions of the layout to allow users to easily\nscale and resize the app. Because the team had already designed VLC's layout\nfor tablets, accommodating larger, wider layouts was a fairly simple process.\nThey also tweaked the player's audio settings to take advantage of the extra\nreal estate available on larger screens.\n\nPreviously, the team needed to use individual emulators or separate devices to\ntest each layout. But, with Android support for ChromeOS, the team was able to\ntest UI layout for desktop, tablet, and mobile all at once, on the same device,\nand without having to use an emulator. This substantially sped up the design\nand test times.\n\nAnd now with [Linux (Beta) on ChromeOS](https://cros.page.link/linux-dev),\ndevelopers can use Android Studio to build and test Android apps natively,\nmaking Chromebooks development-ready devices. \n\n### Writing code in Kotlin\n\nBest of all, the team did all the work in [Kotlin](/kotlin),\na powerful programming language that helped them improve productivity by writing\nin safer and more concise code. By reducing the app's codebase, they were able\nto spend less time troubleshooting issues and more time optimizing the app's\nlayout and functionality.\n\n\"We're usually reluctant to majorly restructure or rewrite our code because we\nrisk losing functionality,\" said Geoffrey Métais, VideoLAN's lead Android\ndeveloper. \"We were pleased to find the transition from Java to Kotlin was\nreally smooth, thanks to Android Studio's built-in migration tool, and Kotlin's\n[couroutines framework](/kotlin/coroutines) helped us improve performance.\"\n\nResults\n-------\n\nVideoLAN used the same APK for mobile, ChromeOS, and Android TV, so it only\ntook the lead developer two months to optimize the app for each platform.\nUsers had been asking for VLC support on ChromeOS for months, especially for\nDVD playback, and the team has received overwhelmingly positive feedback so far.\nPlus, the latest version of ChromeOS fully supports external storage, so every\nAndroid user now enjoys the same benefit.\n\n\"Our team is always on the lookout for new opportunities to drive the biggest\nimpact for our users,\" said VideoLAN President Jean-Baptiste Kempf. \"Optimizing\nfor Chromebooks has helped us extend our app across a huge number of devices\nand form factors, and it's clear we hit the mark based on feedback from users\naround the world.\"\n\nGet Started\n-----------\n\nCheck out some best practices to [optimize your apps for ChromeOS](/topic/arc/optimizing)."]]