ID3標籤

ID3標籤提供音訊或視訊檔案的相關資訊,例如檔案的標題或藝術家的姓名。 TVSDK會在HLS串流的傳輸串流(TS)區段層級偵測ID3標籤,並派單事件。 應用程式可從標籤擷取資料。

重要

TVSDK可識別音訊(AAC)和視訊(H.264)串流中的ID3中繼資料(2.3.0或2.4.0版),以及任何可能的編碼(ASCII、UTF8、UTF16-BE或UTF16-LE)。 它會忽略不屬於其中一種識別版本或格式的ID3標籤。 未指定的編碼會視為UTF8。

當TVSDK偵測到ID3中繼資料時,會以下列資料發出通知:

  • InfoCode = 303007
  • 類型= ID3
  • 名稱=不存在
  • ID = 0
  1. 實作MediaPlayer.PlaybackEventListener#onTimedMetadata(TimeMetadata timeMetadata)的事件偵聽器,並將其註冊到MediaPlayer對象。

    TVSDK會在偵測到ID3中繼資料時呼叫此接聽程式。

    注意

    自訂廣告提示使用相同的onTimedMetadata事件來指示偵測到新標籤。 這不應造成任何混淆,因為會在資訊清單層級偵測到自訂廣告提示,而ID3標籤內嵌在串流中。 如需詳細資訊,請參閱custom-tags-configure。

  2. 擷取中繼資料。

    @Override
    public void onTimedMetadata(TimedMetadata timedMetadata) {
        TimedMetadata.Type type = timedMetadata.getType();
        if (type.equals(TimedMetadata.Type.ID3)){
            long time = timeMetadata.getTime();
            Metadata metadata = timedMetadata.getMetadata();
            Set<String> keys = metadata.keySet();
            for (String key : keys){
                String value = metadata.getValue(key);
            }
        }
    }
    

本頁內容