Что касается изменения размера самого проигрывателя, в отличие от масштабирования содержимого внутри него, в JW Player теперь есть функция изменения размера, которую вы можете комбинировать с событием onMeta для изменения размера проигрывателя в соответствии с размерами видео. Обратите внимание, что я пробовал это только для потокового видео, поэтому я не уверен на 100%, что мета-событие работает одинаково при воспроизведении на основе файлов.
Возможно, вы захотите использовать событие onMeta для вычисления правильного размера, но подождите, пока событие onPlay на самом деле не вызовет resize () - если у вас есть загруженное неподвижное изображение до начала воспроизведения, оно все равно будет работать, когда Вы изменяете размер события onMeta, и оно растягивается, но на секунду выглядело немного странно. Это все еще происходит в OnPlay, но это быстрее.
В вашей функции jwplayer ('video_id'). Setup () просто включите что-то подобное в опции:
events: {
onMeta: function(event) {
if(event.metadata.width != undefined && event.metadata.height != undefined && event.metadata.width != 0) {
var playerWidth = 700;
var playerHeight = (event.metadata.height/event.metadata.width)*playerWidth;
jwplayer("video_id").resize(playerWidth, playerHeight);
}
}
}
Это предполагает, что вы хотите сохранить ширину в 700, но масштабировать высоту плеера, чтобы она соответствовала медиафайлу, и, конечно, у вашего плеера есть идентификатор "video_id" в DOM.