バグ修正
contentBitrate計算の改善
問題: contentBitrate属性は、再生中に実際に測定されたスループットではなく、マニフェストからのターゲットビットレートを報告していました。
修正: dash.jsのgetAverageThroughput()を使用するようにビットレート計算方法を更新しました。これにより、測定された平均スループットがキャプチャされ、再生中のコンテンツ消費率のより正確でリアルタイムな表現が提供されます。
実装の詳細
プライマリロジック:
player.getAverageThroughput('video')を使用して測定されたスループットを取得しますフォールバックロジック:
- スループット測定が利用できない場合は、マニフェストのビットレートを使用します。
- ビデオ品質の監視と分析の精度を向上させます。
影響:
- New Relicビデオ監視におけるより正確なビットレートレポート
- 実際のネットワーク状況とビデオ品質の可視性の向上
- 再生に関する問題のデバッグ機能の改善
新機能
このリリースでは、MPEG-DASHストリーミングの包括的な品質分析を提供する3つの新しいビットレートメトリクスが導入されるとともに、既存のビットレート計算およびdash.js v4/v5互換性に対する重要な改善が行われています。
新機能
新しいビットレートメトリクス
contentManifestBitrate: MPDマニフェストからの最大合計(ビデオ+オーディオ)ビットレート。利用可能な最高のストリームバリアントを表します。contentMeasuredBitrate: 測定されたダウンロードスループットに基づいて、プレーヤーのAdaptive BitRate(ABR)アルゴリズムによって推定されたネットワーク。このメトリクスを使用して、ABRの意思決定を分析します。contentDownloadBitrate: ビデオセグメントのリクエストデータ(bytesDownloaded × 8 / downloadTime)から計算された有効なダウンロードスループット。これはリアルタイムのネットワークパフォーマンス監視を提供します。
変更点
更新されたビットレートの計算
contentBitrate: アクティブなトラックからビデオのみのビットレートを返し、オーディオを除外します。以前のバージョンには結合ビットレートが含まれていました。contentRenditionBitrate: 完全な品質の全体像を提供するために、アクティブなレンディションのビデオおよびオーディオ帯域幅の合計を返します。
互換性の向上
getDashBitrate(): v4の互換性の問題を修正しました。v5専用APIを呼び出す前にバージョンチェックが行われるようになり、dash.js v4.xのインストレーションでのエラーを防ぎます。getManifestBitrate(): dash.js v5+ではgetRepresentationsByType()を使用し、v4.xではgetBitrateInfoListFor()にフォールバックするスマートなバージョン検出を導入しました。
バグ修正
- 重複した
getPlayhead()メソッド定義を削除しました getTrack()エラーハンドラーからconsole.logステートメントを削除しました
ビットレートメトリクスの概要
属性 | タイプ | 説明 |
|---|---|---|
| ビデオのみ | 現在アクティブなビデオトラックのビットレート |
| 結合 | アクティブなレンディションのビデオ+オーディオ帯域幅 |
| 最大 | MPDマニフェストの最高品質バリアント |
| 推定 | ABRアルゴリズムの帯域幅推定 |
| リアルタイム | 実効ダウンロードスループット |
バグ修正
ストリームビットレートを正確に報告するようにcontentBitrateを修正しました
問題:contentBitrate属性はestimatedBandwidth(ネットワーク容量の推定値)を主要なソースとして使用していましたが、これは再生中のビデオストリームの実際のビットレートを正確に表していませんでした。
解決策: Shaka Playerの統計情報から、マニフェストで定義されている現在のビデオバリアントの実際のコンテンツビットレートを提供するstreamBandwidthを優先するようにビットレートの計算を更新しました。
影響: contentBitrate属性は、推定ネットワーク帯域幅ではなく、再生中のビデオストリームのビットレート(ビット/秒)を正しく報告します。これにより、ビデオ品質の監視および分析のための、より正確なテレメトリーデータが提供されます。
技術的詳細
getContentBitratePlayback()メソッドの優先順位を変更しました- コンテンツビットレートの主要なソースとして
stats.streamBandwidthを使用します。 - 正確な定義を反映するように
DATAMODEL.mdのドキュメントを更新しました。
Bug fixes
- Removed github token (f5f9ade)
バグ修正
- github を削除しました(f5f9ade)
Enhancements
Improved error logging
Improved error logging by mapping Shaka errors to the following attributes: errorCode, errorPlatformCode, errorMessage, errorStackTrace, errorSeverity.
This enhancement ensures cleaner, more structured error data in New Relic by extracting only the essential error attributes from Shaka Player errors, removing unwanted properties like the data array.
Updates
Fixed CONTENT_ERROR Event
Attached the error EventListener to the player instead of its tag, following Shaka's specifications, to fix the CONTENT_ERROR event.
機能強化
エラーログの改善
Shaka エラーを次の属性にマッピングすることでエラー ログが改善されました: errorCode 、 errorPlatformCode 、 errorMessage 、 errorStackTrace 、 errorSeverity 。
この機能強化により、Shaka Player エラーから重要なエラー属性のみを抽出し、 data配列などの不要なプロパティを削除することで、New Relic のエラー データがよりクリーンで構造化されるようになります。
アップデート
CONTENT_ERROR イベントを修正しました
Shaka の仕様に従い、 CONTENT_ERRORイベントを修正するために、タグではなくプレーヤーにエラーEventListenerを添付しました。
Bug fixes
Content Bitrate detection enhancement
We've significantly improved the getBitrate() method with comprehensive Video.js technology support:
Key improvements
- VHS (Video HTTP Streaming) API support: Added native support for HLS and DASH content bitrate detection
- Enhanced bandwidth calculation: Implemented audio + video bitrate combination for accurate total bandwidth reporting
- Extended tech support: Added fallback support for popular streaming libraries:
- Shaka Player
- HLS.js
- DASH.js
- Improved reliability: Enhanced bitrate detection accuracy across different streaming technologies
- Dynamic bitrate updates: Fixed issue where bitrate values remained static throughout video playback
バグ修正
コンテンツビットレート検出の強化
包括的な Video.js テクノロジーのサポートにより、 getBitrate()メソッドが大幅に改善されました。
主な改善点
VHS (ビデオ HTTP ストリーミング) API サポート: HLS および DASH コンテンツのビットレート検出のネイティブ サポートが追加されました
強化された帯域幅計算: 正確な総帯域幅レポートのためにオーディオ + ビデオ ビットレートの組み合わせを実装しました
拡張テクニカルサポート: 人気のストリーミング ライブラリのフォールバック サポートを追加しました:
- シャカプレイヤー
- HLS.js
- DASH.js
信頼性の向上:さまざまなストリーミング技術におけるビットレート検出精度の向上
動的ビットレート更新: ビデオ再生中にビットレート値が一定のままになる問題を修正しました
Feature
Added IMA Ad tracking capability
- Improved Ad tracking capability for the agent with IMA ad tracking.