2013-10-08 49 views
2

我上傳了2個.mp4 videointo blobstore。
當我服務311.0KB mp4視頻時,它沒有問題。我可以播放視頻
但是,當我服務3.3MB的MP4視頻,視頻未加載。所以我去了管理控制檯,然後點擊Blob Viewer菜單。當我點擊查看3.3MB視頻時,它不會加載。爲什麼?Google App Engine無法提供一些mp4文件

我使用GAE的免費版本。

+0

你使用什麼瀏覽器? –

+0

我使用chrome ... – Lin

+0

我曾經有過從blobstore提供視頻文件的問題。我使用的方法是在響應中設置X-AppEngine-BlobKey標頭。此方法有時使用轉碼分塊。但是它會產生服務於mp4文件的問題。實際上,我在IE上遇到了問題。我所做的解決問題的方法是使用206響應代碼和字節範圍來實現服務文件,並確保沒有爲mp4文件設置緩存控制標頭。這當然不會解決管理控制檯問題。 –

回答

2

經過一段時間後,我發現使用X-AppEngine-BlobKey和X-AppEngine-BlobRange工作正常。我使用Django和這裏是我使用的代碼的一部分,它應該給你它是如何工作

response = HttpResponse() 
response['Accept-Ranges'] = 'bytes' 
response['Content-Type'] = content_type 
response['X-AppEngine-BlobKey'] = blob_key 
if 'HTTP_RANGE' in request.META: 
    response['X-AppEngine-BlobRange'] = request.META['HTTP_RANGE'] 
return response 

請注意,X-AppEngine上-BlobRange設置完全相同的值作爲請求範圍標頭的想法。對於這種情況,GAE文檔可能會有些混亂,因爲這些示例顯示值應該設置爲「字節= 0-499」時的值爲「0-499」。

相關問題