gpt4 book ai didi

video - 根据ffmpeg视频动态调整jwplayer大小

转载 作者:行者123 更新时间:2023-12-04 23:29:52 25 4
gpt4 key购买 nike

我正在使用 jwplayer、ffmpeg 和 crtmpserver 进行直播。我想知道是否可以根据 ffmpeg 流式传输的视频动态调整 jwplayer 的大小。例如,假设以下 ffmpeg 命令用于流式传输视频:

ffmpeg -re -i 'myVideo.mp4' -vf scale=30:30 -vcodec flv -acodec copy -s 30x30 -f flv rtmp://localhost/flvplayback/livestream

Jwplayer 端代码:
<script type="text/javascript">
jwplayer("myElement").setup({
playlist: [{
image: "/uploads/myPoster.jpg",
sources: [{
file: "/uploads/myManifest.smil",
type: "rtmp"
},{
file: "/uploads/myVideo.mp4"
}]
}],
primary: "flash",
listbar: {
position: 'right',
size: 100
},
stretching: "exactfit"
});

现在,由于 ffmpeg 正在以 -s 为 30x30 流式传输视频,因此视频太模糊了。那么,是否可以调整 jwplayer 的大小以适应视频?在这种情况下,应该减小 jwplayer 的大小。
我尝试使用 jwplayer.resize()基于 jwplayer().getCurrentQuality()但不确定在这种情况下如何使用它。

最佳答案

找到了答案。以上可以使用jwplayer().onQualityChange完成事件如下:

    jwplayer().onQualityChange( function(event){
resizePlayer();
});

function resizePlayer(){
if (jwplayer().getCurrentQuality() == 0)
{
jwplayer().resize(1024, 720);

}
if (jwplayer().getCurrentQuality() == 1)
{
jwplayer().resize(640, 360);
}
if (jwplayer().getCurrentQuality() == 2)
{
jwplayer().resize(320,180);
}
}

上述事件在jwplayer的质量发生变化时触发。这个网址在这里 http://www.longtailvideo.com/support/jw-player/29365/rtmp-dynamic-stream展示了如何为 jwplayer 创建不同质量的视频。上述函数 resizePlayer()也可以根据需要使用其他合适的 jwplayer 事件来调用。

关于video - 根据ffmpeg视频动态调整jwplayer大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21135088/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com