Я не зміг знайти жодної документації, якщо Youtube реалізує функцію таймауту (макс. Відтворення) у своїх програвачах javascript / flash. Хтось натрапляв на це?
Моя команда стикається з проблемою, коли у нас є список відтворення, який запускається по телевізору протягом ночі. Ми виявляємо, що відео постійно заморожується у випадкові моменти (просто припиніть відтворення).
Відповідно до нашої команди мережі, у нас немає відключень, проблем тощо;
Чи можлива така проблема щодо часу очікування / максимального часу списку відтворення згідно з якоюсь документацією, яку я пропустив?
В даний час ми називаємо <iframe>
для списку відтворення та дайте йому запуститися.
Відповіді:
1 для відповіді № 1Мені невідомо жодної навмисної політикизупинить відтворення через певний проміжок часу. Моя пропозиція полягала б у вивченні запитів HTTP, що генеруються програвачем (досить легко це зробити, якщо ви запускаєте стандартний веб-браузер на ПК, який підключений до вашого телевізора), і з’ясувати, чи виникає збій, коли HTTP робиться запит, який не отримує відповіді (з якихось причин).
Крім того, додайте до свого додатку вхід, який виявляє onError
і onStateChange
подій та спробуйте співвіднести конкретні події із зупинкою відтворення.
Незалежно від першопричини, цілком можливо, що ви могли б обійти це, виявивши ПАРУЗОВАНІ / ЗАКІНЧЕНІ події в програвачі та використовуючи програвач Player для явного початку відтворення.
1 для відповіді № 2
Я працюю в чомусь подібному (для Amazon TV), але лише з одним відео. Я роблю перезавантаження, коли виявляю помилку. Ця помилка 0 - це помилка винятку (ви можете побачити події в цьому сторінка). У мене є інша проблема, можливо, ви можете мені допомогти. Я бачу відео чорним, і я не бачу рішення.
function startVideo(player,src){
player = new YT.Player(player, {
height: "100%",
width: "100%",
videoId: src,
playerVars: {
controls: 0,
showinfo: 0 ,
modestbranding: 1,
wmode: "opaque",
loop: true,
},
events: {
"onReady": onPlayerReady,
"onStateChange": onPlayerStateChange,
"onError": onPlayerError,
}
});
}
function onPlayerError(event){
var D = new Date();
var d = millisToTime(D.getTime());
$("#m").html($("#m").html()+"</br></br> <b>-Error: "+event.data+"</b> -"+d);
var url = window.location.href;
if (url.indexOf("?") > -1){
url += "&p=1"
}else{
url += "?p=1"
}
window.location.href = url;
}