SDKとは?基礎知識や活用事例を紹介
![](https://www.nice2meet.us/hubfs/teleworknavi/images/post_header/blog_sdk_main.jpg)
「SDK」とは、Webサイトやアプリケーションに必要な「部品」や「要素」がセットになったツールキットのことです。
従来はWebサイトやアプリを開発する際、ゼロからソースコードを書き、組み立てていく必要がありました。SDKにはサイトやアプリに組み込む機能がすでに搭載されており、さまざまなSDKをうまく活用することによって、自社サイトやアプリ構築の手間を大幅に削減できます。
ここでは、SDKの基礎知識とともに、特に動画や音声のリアルタイム配信を可能にするSDKである「Agora」の活用事例をご紹介します。
目次[ 非表示 ][ 表示 ]
SDKとは
SDKは「Software Development Kit」の略称で、「ソフトウェア開発キット」と訳します。ソフトウェアやWebサービスなどの開発に必要なプログラムやAPI、サンプルコードや仕様書などをパッケージ化したものです。
効率的な開発が可能になるため、アプリ開発や既存システムへの機能追加などの目的で、多くの開発現場で活用されています。
SDKを活用するメリット
SDKを活用するメリットは、開発にかかる手間や時間を削減できる点です。SDKを利用しない場合、Webサイトやアプリを新規開発したり、既存のシステムに特定の機能を追加したりするには、基本的にゼロからソースコードを記述しなければなりません。
一方、機能の実装に必要なプログラムやサンプルコードなどをパッケージ化したSDKを使えば、開発の工数を減らして短期間での実装が可能です。開発者の負担が軽減されるため、少ない人員で開発しなければならない現場でも役立ちます。
例えば、ライブ配信アプリを開発する場合、ライブ配信機能に特化したSDKをアプリのプログラムに組み込むことで、ソースコードをゼロから記述しなくても目的のアプリが開発できます。既存のサイトに動画配信システムを組み込みたい場合も同様で、SDKの活用で機能追加にかかる工数の削減が可能です。
このように、SDKは開発途中で採用されるケースもあれば、すでに運用中のシステムやWebサイトへの機能追加のために使われるケースもあり、幅広い用途で活用できます。
自社サーバーが不要なSDKもあり、場合によっては開発コストだけでなく運用コストを下げられるのもメリットのひとつです。
SDKを活用するデメリット
SDKのデメリットは、SDK自体にバグが含まれるケースがある点です。もしSDKにバグがあると、サービス利用者側でそのバグを修正するのは困難です。もちろん、すべてのSDKにバグが含まれているというわけではありません。万が一利用者側で修正できないバグがあると、開発に大きな影響を及ぼします。
利用するSDKによっては、動作が重くなる可能性がある点にも注意が必要です。バグと同様、SDKが提供するプログラムなどの影響で動作が重くなっている場合は、利用者側で対応が難しいケースもあります。
SDKの費用
SDKの利用にかかる費用はサービスによって異なりますが、無料で利用できるSDKも数多くあります。有料のSDKの場合でも、サーバー通信量や接続回数などに応じた従量課金制が多く、SDKを利用した開発自体は無料で行えるサービスもあります。
APIとの違い
APIとは、「Application Programming Interface(アプリケーション・プログラミング・インタフェース)」の略で、ソフトウェアの一部を公開して、他のソフトウェアやプログラム、Webサービス間との連携を可能にするシステムです。
例えば、自社開発したカレンダーアプリを「Googleカレンダー」と連携させるような場合、Googleが公開している「Google calendar API」を自社のアプリに組み込むことで連携が可能になります。
SDKが開発キットであるのに対し、APIはソフトウェアの一部をWeb上に公開することによって、さまざまなサービスやアプリとの連携を促すものです。特に「Web API」はクラウドサービスとしてさまざまなものが公開されており、たとえばGoogleやFacebook、Twitterといった大手Webサービス企業は、自社サービスと連携するWeb APIを多く用意しています。
SDKと同様、サービス開発時にこうしたAPIを活用することで、複雑なプログラムを組む手間を減らせます。
SDK(Agora)の活用事例
SDKにはさまざまな種類がありますが、特に動画のライブ配信やストリーミング、音声通話を実装できるSDKとして「Agora」があります。
Agoraの最大の特徴は、キットの中に含まれるAPIやサンプルコードが豊富なこと。単に動画配信を可能にするだけでなく、配信中のメッセージング機能やチャット、あるいは「投げ銭」(オンライン送金の一種)といったさまざまなオプション機能に、デバイスを問わず柔軟に対応できるほか、既存のサービスやアプリに組み込む際にもさまざまな形にカスタマイズすることができます。
また、安定した通信と超低遅延なことも特徴。独自プロトコルとネットワーク技術により、平均0.4秒の超低遅延であるほか、ライブ配信、ビデオ・音声通話共に最大70%のパケットロスまで耐久するので、常に安定したスムーズな双方向通信が可能です。
また、従量課金サービスとなっており開発期間中は無料で利用できるため、サービススケールの見通しが立ちにくい場合でも、コストを抑えながら開発することができます。
どのようなWebサービスやアプリケーションで利用されているか、以下で活用事例をご紹介します。
【音声ライブ配信】NowVoice
「NowVoice」は、アスリートをはじめ、棋士や俳優、タレント、文化人など各界の「トップランナー」たちによる音声ライブ配信を、スマートフォンのアプリやPCから誰でも気軽に楽しむことができるプレミアム音声サービスです。
アスリートがテレビでの生放送を視聴しながら配信することも想定されることから、開発コスト抑制に加えて、超低遅延なSDKとしてAgoraが採用されました。
Agoraによって1対nの形式だけでなく、複数の配信者が離れた場所から配信を行うn対nの形式を行う「コラボ配信」にも対応。配信者が視聴中のリスナーを見て、急遽コラボ配信をスタートするといったことも可能なので、ほかでは聴けないライブ配信ならではの楽しみ方が提案されています。
詳細はこちら
【音声配信アプリ】Radiotalk
音声配信サービス「Radiotalk」は、1タップで誰でもすぐに始められるアプリです。ユーザーはライブ配信で収益化したり、収録・編集してSNSやポッドキャストへ配信したりすることが可能となっています。
音声のリアルタイム配信を可能にするだけではなく、リスナーとのメッセージングなども可能にするSDKとしてAgoraが実装されています。
ライブ配信の中で、メッセージを通じたコミュニケーションが取れるだけでなく、配信者とリスナーの「熱量」を可視化できる「スコア機能」や、感動や応援の気持ちをよりダイレクトに表現できる「ギフト機能」などもAPIやサンプルコードが豊富なAgoraが実現しています。
詳細はこちら
【ライブコマース】ライコマ
「ライブコマース」は、ライブ配信を視聴しながら、そのまま商品を購入することができる動画配信とEコマースをかけ合わせたサービス。Agoraを実装しているライコマでは、動画配信と同時にリアルタイムチャットで視聴者とのコミュニケーションが取れ、出品者が視聴者からの質問に映像で答えることができます。新型コロナウイルスの感染拡大に伴い小売業界で対面販売が難しくなるなか、ライブ感のあるシステムに置き換えることでユーザーと販売者のコミュニーケーションの促進につながっています。
既存のシステムに簡単に実装可能であること、チャットツールなどにも対応可能といった点から、Agoraが導入されました。
これによって、既存のEコマースサイトや運用中のカートとの連携はもちろん、配信視聴者の滞在時間や行動履歴も解析可能になり、それによって配信後のPRや広告戦略、次回の企画や集客にもつながっています。
詳細はこちら
【オンラインフィットネス】SOELU
国内初のオンラインヨガ・フィットネススタジオ「SOELU」は、インストラクターと複数の受講生を結ぶライブレッスンのサービス。
インストラクターは受講生からの映像を視聴できる一方で、受講者が他の受講者の映像を視聴することは当然できません。こうしたプライバシー保護のためのセキュアな配信環境を実現し、なおかつ安定したインターネット環境になくても遅延が生じにくいSDKとして、Agoraが実装されています。
実装によって、多くのインストラクターによるマタニティヨガやピラティス、脂肪燃焼サーキットトレーニングなど、毎日100種類以上のレッスンをさまざまな場所からオンラインで開講できるように。高品質な映像の送受信が可能になりました。
詳細はこちら
【オンラインクレーンゲーム】どこでもキャッチャー
ブラウザやアプリでリアルタイムに実写映像を配信し、臨場感のあるクレーンゲームが楽しめる「オンラインクレーンゲーム どこでもキャッチャー」。ゲームとECがミックスされており、ユーザーは景品を選択し、ゲームをプレイ。獲得した景品は全国一律送料無料で配送されます。
ユーザーは実際の筐体を複数のカメラで同時に撮影した動画を見ながら操作するため、タイムラグのない動画配信を可能にし、かつサーバーに負担をかけないSDKとしてAgoraが採用されています。
高画質・低遅延によってユーザーエクスペリエンスを向上させる一方で、運営側もすべてのカメラ映像を監視するオペレーター業務が画面一つにまとめられ、業務コストや負担の軽減につながりました。
詳細はこちら
【オンライン相談窓口】Elephant℃
株式会社センチュリオンが提供する「Elephant℃」(エレファント)は、ブラウザから簡単にアクセスできるオンライン相談窓口を提供するWebサービス。
既存のWebサイトに容易に組み込むことができ、高品質な映像の送受信を可能にするSDKとしてAgoraが採用されています。
Agoraによって、シンプルなサイトのUI/UXを損なうことなく、PCなどの操作に不慣れな人でも、アプリのインストールやアプリのID登録なしで簡単に接続できるように。30~90分という長時間のWeb面談でも映像や音声が途切れにくい、高品質なサービス提供が可能になりました。
詳細はこちら
まとめ | さまざまなサービスを実現するSDK「Agora」
SDKは、これから新たにアプリケーションを開発したりサービスを提供したりする際に、開発にかかる時間を大幅に短縮できるものです。
特に映像や音声のリアルタイム配信を伴ったサービスは今後も増加していくことが予想されます。そうした際、「Agora」は豊富なAPIやサンプルコードが用意されているため、既存のサイトやサービスにも柔軟に対応できるSDKの一つだと言えるでしょう。
また、サーバーの構築・運用が不要なため、開発時のコストだけではなく、長期的な運用コストを削減することにもつながります。
基礎知識を踏まえた上で、ぜひSDKを活用し、より良いサービスやアプリの提供につなげてください。