1
我使用ng2-file-upload來上傳視頻,最長上傳時間爲15分鐘。那麼如何才能在將其上傳到服務器之前獲取它的持續時間?這些擴展名只允許: - -.MOV -.MPEG4 -.AVI -.FLV -.3FPP -.WebM和-MPEGS。如果有人知道,請回復。如何使用ng2-file-upload在Angular 4.3.1中檢查視頻的持續時間?
我使用ng2-file-upload來上傳視頻,最長上傳時間爲15分鐘。那麼如何才能在將其上傳到服務器之前獲取它的持續時間?這些擴展名只允許: - -.MOV -.MPEG4 -.AVI -.FLV -.3FPP -.WebM和-MPEGS。如果有人知道,請回復。如何使用ng2-file-upload在Angular 4.3.1中檢查視頻的持續時間?
您可以在您的Angular應用程序中包含vanilla Javascript來執行此操作。
下面會給你一個區間(開啓MP4測試):
var inputBox = document.getElementById("videoInput")
inputBox.onchange = function(files) {
alert("starting")
var video = document.createElement('video');
alert("video created")
video.preload = 'metadata';
video.onloadedmetadata = function() {
alert("metadata loaded")
var duration = video.duration;
alert("duration is " + duration)
}
var selectedVID = document.getElementById("videoInput").files[0];
video.src = URL.createObjectURL(selectedVID);
}
<div id="input-upload-file">
<p>
Video Upload Duration test
</p>
<input id="videoInput" type="file" class="upload" name="fileUpload">
</div>
嗨米克, 謝謝!除了使用ng2-file-upload以外的任何其他方式的JavaScript? – Garima
可你的工具(角等)校驗字節值?您必須檢查每種格式的文件元數據部分的字節。這些視頻格式還有**規格**在線發佈。例如搜索「FLV格式規範」。使用十六進制編輯器打開_x_格式的視頻文件以查看其字節。如果您可以手動查找持續時間,則下一次編寫代碼即可完成此操作。 –
使用ng2-file-upload我只能得到視頻的大小。我怎樣才能找到它的持續時間? – Garima
大小意味着它包含的總字節數。如果你知道什麼是數組,那麼字節只是一個大數組。您需要檢查索引處的數字值,例如'myVideoBytes [0]'或'myVideoBytes [15]'。檢查格式規格,因爲MOV將持續時間字節放在AVI的不同位置,這對於FLV等也是不同的。要處理用戶選擇文件,您是使用HTML5的「File」API還是通過PHP? –