オンライン ライブ ブロードキャスト機能を PHP で実装する方法: 1. コンソールでライブ ブロードキャスト クラウド サービスを見つけ、ライブ ブロードキャスト クラウド スペースを作成します; 2. 必要に応じてドメイン名を解析します; 3. Composer をインストールしますパッケージ; 4. liveStart メソッドで実装する ライブブロードキャストするだけです。
この記事の動作環境: Windows 7 システム、PHP バージョン 7.1、Dell G3 コンピューター。
オンラインライブブロードキャスト機能をphpで実装するにはどうすればよいですか?
php Qiniu Cloud はライブ ブロードキャスト機能を実装しています:
1: 現在、ライブ ブロードキャスト販売プロジェクトに取り組んでいます。背景はセットアップされ、準備ができています。アリババ、テキサス州、Qiniu を検索したところ、アリババのライブ ブロードキャスト PHP にはコードのみがあり、ドキュメントはありませんでした。テキサス州の友人はコードが汚いと言っていたので、検討しませんでした。 Qiniuにアカウントを登録しましたが、ライブブロードキャストスペースに申請したところ、ドメイン名でブロックされました。カード所有者がスタックしました。すでに登録されているドメイン名をWebサイトの公安に登録する必要がありますまたまた
https://developer.qiniu.com/af/kb/3987/how-to-make-website-and-inquires-the-police-put-on-record-information?ref=support.qiniu.com
再度調べてみたところ、オンライン公演事業に関わる場合は「インターネット文化事業許可証」の申請が必要とのことです。地方人民政府文化行政部門に相談し、申請をお待ちください。次のステップに進む前に完了する必要があります。
2: ドメイン名の登録の準備がついに完了しました。ライブ ブロードキャスト機能を実装するための 2 番目のステップを開始しましょう。モバイル端末 Niuyun SDK のセブンを参照してください。以下はサーバーサイド プッシュ ストリーミングの例です。今回は、rtmp ストリームを使用してライブ ブロードキャストを実装します。コンソールでライブ ブロードキャスト クラウド サービスを見つけて、ライブ ブロードキャスト クラウド スペースを作成します。 .
は、ライブ ブロードキャスト スペースの作成後に生成されます。いくつかの第 2 レベル ドメイン名が必要に応じてドメイン名を解析すると、次のようになります。 ## コードを実行すると、ライブ ストリームで作成したライブ ストリームの再生履歴やその他の情報が表示されます
コンポーザー パッケージをインストールします
php composer.phar require qiniu/php-sdk

<?php namespace App\Modules\Api\Http\Controllers; use App\Modules\Live\Models\Broadcast; use App\Modules\Live\Repositories\BroadcastRepositoryEloquent; use Illuminate\Http\Request; use Qiniu\Pili\Client; use Qiniu\Pili\Mac; use function Qiniu\Pili\RTMPPlayURL; use function Qiniu\Pili\RTMPPublishURL; use function Qiniu\Pili\SnapshotPlayURL; class LiveController extends ApiBaseController { private $auth; private $accessKey; private $secretKey; private $hubName; /** * Create a new controller instance. * * @return void */ public function __construct() { $this->accessKey = config("qiniu.accessKey"); $this->secretKey = config("qiniu.secretKey"); $this->hubName = config("qiniu.bucket"); parent::__construct(); } /** *开启直播 */ public function liveStart(Request $request) { $userInfo = parent::getAuthenticatedUser($msg); if (isset($userInfo['user']) && !empty($userInfo['user'])) { $request->offsetSet('user_id', $userInfo['user']['id']); } else { return $this->sendResponse($msg, 'error', '', 401); } $data = $request->all(); $broadcast = app(BroadcastRepositoryEloquent::class)->findWhere(['type' => $data['type'], 'user_id' => $data['user_id']])->first(); if (empty($broadcast)) { return $this->sendResponse(trans('admin.operate_failed') . '未找到直播间'); } $broadcast['name'] = $data['name']; //创建hub $mac = new Mac($this->accessKey, $this->secretKey); $client = new Client($mac); $hub = $client->hub($this->hubName); //获取stream $streamKey = $broadcast['show_id']; $stream = $hub->stream($streamKey); $list = $hub->listStreams($streamKey, 1, ""); //如果没找到对应的直播流创建新直播流 if (count($list['keys']) == 0) { //获取stream $hub->create($streamKey); } if ($data['type'] == 0) { $result = $this->updateShop($broadcast, $streamKey, $msg); if ($result == false) { return $this->sendResponse(trans('admin.operate_failed') . $msg); } } else { $result = $this->updateCurriculum($broadcast, $streamKey, $msg); if ($result == false) { return $this->sendResponse(trans('admin.operate_failed') . $msg); } } return $this->sendResponse(trans('admin.operate_succeeded'), 'succ', ['p_href' => $broadcast['p_href']]); } //更新商城直播间 public function updateShop($broadcast, $streamKey, &$msg = '') { //获取推流地址 $p_href = RTMPPublishURL("pili-publish.chengdulihong.com", $this->hubName, $streamKey, 3600, $this->accessKey, $this->secretKey); //获取播放地址 $g_href = RTMPPlayURL("pili-publish.chengdulihong.com", $this->hubName, $streamKey); //截图直播地址 $pic = SnapshotPlayURL("pili-publish.chengdulihong.com", $this->hubName, $streamKey); //更新直播间状态 $u_broadcast = $broadcast->fill(['name' => $broadcast['name'], 'chatroom_status' => 0, 'p_href' => $p_href, 'g_href' => $g_href, 'pic' => $pic])->save(); if ($u_broadcast == false) { return $this->sendResponse(trans('admin.operate_failed') . '更新直播间出错'); } return true; }推奨学習: 「
PHP ビデオ チュートリアル
」以上がオンラインライブブロードキャスト機能をphpで実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

SublimeText3 中国語版
中国語版、とても使いやすい

ドリームウィーバー CS6
ビジュアル Web 開発ツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)
