Vue+webrtc (Tencent Cloud) ライブブロードキャスト機能の実装実践

Vue+webrtc (Tencent Cloud) ライブブロードキャスト機能の実装実践

1. 生放送効果

1. PC側

醜すぎる、顔がない

2. モバイル

ここに画像の説明を挿入

2. ライブストリーミングを開始する手順

2.1 Tencent Web(高速ライブ)スクリプトの紹介

スクリプトはindex.htmlの本文に導入する必要があります。

 <body style="padding:0;margin:0">
    //Tencent ライブストリーミング スクリプト<script src="https://imgcache.qq.com/open/qcloud/live/webrtc/js/TXLivePusher-1.0.2.min.js" charset="utf-8"></script>
    <スクリプトなし>
      <strong>申し訳ありませんが、JavaScript が有効になっていないと <%= htmlWebpackPlugin.options.title %> は正しく動作しません。続行するには JavaScript を有効にしてください。</strong>
    </noscript>
    <div id="アプリ"></div>
    <!-- ビルドされたファイルは自動的に挿入されます -->
  </本文>

2.2 ライブ放送が必要なインターフェースにビデオコンテナを追加します(ライブ放送を開始すると、ビデオの場所が表示されます)

.vue ファイルで直接使用できます。コンテナのスタイルを自分で調整できますが、id は破棄できません (name も使用できます)

<div id="id_local_video" style="margin:0 auto;width:80%;display:flex;align-items:center;justify-content:center;"></div>        

2.3 ライブ放送オブジェクトを作成し、ライブ放送を開始する

ライブ開始ボタンをクリックし、対応するメソッドにメソッドを記述します。注: プッシュ ストリーム アドレスのプロトコル ヘッダー rtmp を webrtc に変更する必要があり、プッシュ ストリーム アドレスに中国語が表示されてはなりません。そうしないと、プッシュ ストリームが成功してもエラーが報告されます。

      //ビデオオブジェクトの livePusher 変数を作成します。これをデータに書き込んでコピーしなくなりました。メソッド内で直接変数を宣言することもできます。this.livePusher = new TXLivePusher()
      ライブプッシャーのレンダリングビューを設定します。
      // オーディオとビデオのストリームを設定します this.livePusher.setVideoQuality('720p');
      // オーディオ品質を設定します this.livePusher.setAudioQuality('standard');
      // フレームレートをカスタマイズします this.livePusher.setProperty('setVideoFPS', 25);   
        
      // ライブ放送を開始します // カメラを開きます this.livePusher.startCamera();
      // マイクをオンにします this.livePusher.startMicrophone();    
      //ここではストリーミングを 4 秒遅延させました。ストリーミング アドレスはバックエンドから受信する必要があります。
       setTimeout(() => { this.livePusher.startPush(ストリーミングアドレス);
       }, 4000);  

ストリーミングの成功

2.4 ライブ放送を終了する

対応するメソッドで使用するだけです。ライブ ブロードキャストを終了するときは、ビデオ コンテナーを破棄する必要があることに注意してください。

      // 1. ストリームのプッシュを停止します this.livePusher.stopPush();
      // 2. カメラを閉じる this.livePusher.stopCamera();
      // 3. マイクをオフにします this.livePusher.stopMicrophone();      
      // 4. コンテナ オブジェクトを破棄します。this.livePusher.destroy(); 

これで、vue+webrtc (Tencent Cloud) によるライブ ブロードキャスト機能の実装の実践に関するこの記事は終了です。より関連性の高い vue+webrtc Tencent Cloud ライブ ブロードキャスト コンテンツについては、123WORDPRESS.COM で過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vueのライブ放送機能の詳しい説明
  • vue-video-player を使用してライブ放送を実現する方法
  • vue-video-player はリアルタイムのビデオ再生を実装します (監視機器 - rtmp ストリーム)
  • 2 分で Vue リアルタイム ライブ ブロードキャスト システムを実装するためのサンプル コード
  • Vueはビデオストリームを読み込み、ライブブロードキャスト機能を実装します

<<:  DIV 背景半透明テキスト非半透明スタイル

>>:  ウェブサイトのカラースキーム ウェブサイトに適した色の選択

推薦する

Docker Compose ワンクリック ELK デプロイ方式の実装

インストールFilebeat は、より軽量でより安全なため、Logstash-Forwarder に...

Docker-compose を使用して ELK クラスターを構築する方法

すべてのオーケストレーション ファイルと構成ファイルは、私の Github からアクセスできます。構...

Vue3 ページ、メニュー、ルートの使用

目次1. メニューをクリックしてジャンプ1. ページ名の統一2. 管理ページを追加3. ルートを追加...

Docker コンテナにおける Patroni の簡単な分析

目次イメージの作成ファイル構造Dockerファイルエントリポイント関数ファイルを生成するイメージを構...

MySQL関数の包括的な概要

目次1. MySQLでよく使われる文字列関数2. 数値関数3. 日付と時刻の機能4. プロセス機能5...

Vue3のサンドボックスの仕組みの詳しい説明

目次序文ブラウザコンパイル版ローカルプリコンパイルバージョン要約する序文vue3サンドボックスには主...

2 つの Linux サーバー間の自動ファイル同期

サーバーB(172.17.166.11)の電源がオンまたは再起動されると、サーバーA(172.17....

WeChatアプレットの入力レベルとテキストエリアレベルの浸透率が高すぎる問題の解決策

WeChat ミニプログラムのネイティブ コンポーネントであるカメラ、キャンバス、入力 (フォーカス...

Baidu百科事典UIの開発動向について議論する

<br />百度百科事典の正式版がついにオンラインになりました。2年間の「テスト版」の帽...

Reactエラー境界コンポーネント処理

React 16の内容です。最新技術ではありませんが、ドキュメントで調べるまであまり話題に上がらなか...

nginx がアップストリーム アドレスにジャンプしない問題の解決方法

序文今日、nginx で非常に奇妙な問題に遭遇しました。フロントエンドの tomcat がページにジ...

動的なテーブル効果を実現するJavaScript

この記事では、動的なテーブル効果を実現するためのJavaScriptの具体的なコードを参考までに紹介...

CentOS 7.2 に SuPHP をインストールするための詳細な手順

デフォルトでは、CentOS 7 上の PHP は apache または nobody として実行さ...

MySQL InnoDB ReplicaSet の簡単な紹介

目次01 InnoDBレプリカセットの紹介02 InnoDBレプリカセットの制限03 導入前に知って...

Node.js で MySQL データベースにバッチデータを挿入する方法

プロジェクト(nodejs)では、一度に複数のデータをデータベースに挿入する必要があります。データベ...