2016-08-19 71 views
1

嘿傢伙,所以我有這個問題將標題放入我的視頻。使用JWPlayer將文件轉換爲JSON

我把我的.vtt作爲一個值放在我的對象中,但它好像瀏覽器不喜歡它的輸出方式。我按照本指南here

這是我的控制檯

{name: "", message: "Converting circular structure to JSON", error: TypeError: Converting circular structure to JSON at Object.stringify (native) at Object.<ano…} 

字幕,en.vtt上彈出

00:00:01.000 --> 00:00:15.000 
What brings you to the land 
of the gatekeepers? 

00:00:15.500 --> 00:00:20.500 
I'm searching for someone. 

00:00:36.500 --> 00:00:39.000 
A dangerous quest for a lone hunter. 

00:00:41.500 --> 00:00:44.000 
I've been alone for as long 
as I can remember. 

的Javascript

jwplayer("my-video").setup({ 
    file: "<my-video-file>", 
    width: "100%", 
    aspectratio: "24:10", 
    primary: "flash", 
    tracks: [{ 
     file: "/assets/captions/captions-en.vtt", 
     label: "English", 
     kind: "captions" 
    }] 
}); 
錯誤

我也確保我保存爲「UTF-8」編碼。

是否有另一步我失蹤。像解析方法一樣?

另請注意,我從AWS S3 Bucket流式傳輸視頻。那會是導致錯誤的原因,我不得不在那裏上傳vtt文件?

錯誤在這個post是一樣的,但他們顯示了他們是如何通過放置在一個字符串中。如果它來自一個vtt文件,我會怎麼做?

+0

可能重複[JSON.stringify,避免TypeError:將圓形結構轉換爲JSON](http://stackoverflow.com/questions/11616630/json-stringify-avoid-typeerror-converting-circular-structure-to-json ) –

+0

你已經用這樣的東西檢查過VTT了嗎? https://quuz.org/webvtt/ – zer00ne

回答

2

Also note that I'm streaming the video from AWS S3 Bucket. Would that be the reason causing the error that I would have to upload the vtt file on there?

是的,無論您的視頻是在哪裏上傳VTT文件。 VTT存在安全限制,而且根據我自己的經驗,我尚未使用與視頻不同的存儲桶中的VTT成功運行JWPlayer。

確保您在https://quuz.org/webvtt/

檢查VTT文件是否有效運行一下S3可能被拖欠是content-typeapplication/octet-stream一般對待你的VTT。我不知道你是如何使用S3,但如果它上傳後,您可以檢查VTT的屬性,看看該物業:

Content-Type: binary/octet-stream 

如果你看到這一點,那麼你需要將其更改爲這:

Content-Type: text/vtt 

如果你沒有一個既定的程序和/或工具來檢查S3的VTT,S3使用瀏覽器或雲莓S3瀏覽器的免費版本。

關於這個錯誤:

{name: "", message: "Converting circular structure to JSON", error: TypeError: Converting circular structure to JSON at Object.stringify (native) at Object.<ano…}

我不認爲這是VTT文件是什麼,錯誤的約。如果你看看它的格式,VTT與JSON沒有任何相似之處,但是JW設置語法的結構非常相似。