Javascript 强制为YouTube制作高质量的缩略图

Javascript 强制为YouTube制作高质量的缩略图,javascript,youtube,youtube-api,Javascript,Youtube,Youtube Api,有没有办法为YouTube强制提供高质量的缩略图 我的视频质量非常高,一旦开始流媒体,它们在720p的速度下运行良好,但是视频的缩略图质量参差不齐——有时很高,有时很模糊 有没有办法强制生成高质量的缩略图?我在API文档中发现了这一点,但它没有详细说明如何使用媒体标签。据我所知,YouTube只提供了4个缩略图: http://i.ytimg.com/vi/VIDEO_ID/default.jpg http://i.ytimg.com/vi/VIDEO_ID/1.jpg http://i.yti

有没有办法为YouTube强制提供高质量的缩略图

我的视频质量非常高,一旦开始流媒体,它们在720p的速度下运行良好,但是视频的缩略图质量参差不齐——有时很高,有时很模糊


有没有办法强制生成高质量的缩略图?我在API文档中发现了这一点,但它没有详细说明如何使用媒体标签。

据我所知,YouTube只提供了4个缩略图:

http://i.ytimg.com/vi/VIDEO_ID/default.jpg
http://i.ytimg.com/vi/VIDEO_ID/1.jpg
http://i.ytimg.com/vi/VIDEO_ID/2.jpg
http://i.ytimg.com/vi/VIDEO_ID/3.jpg
缩略图在上传后生成一次,因此您不能以任何方式更改缩略图的大小

编辑:
YouTube JS API可以强制视频质量,但我不知道这是否会影响视频预览。有关更多信息,请参阅。

还有一个“maxres”版本,如果视频分辨率足够高,这是一个“全高清”图片

http://i.ytimg.com/vi/VIDEO_ID/maxresdefault.jpg
但是,如果视频分辨率不够高,则似乎无法创建此图像。因此,如果“maxres”版本不存在,您可能需要一个显示低质量版本的函数


查看更多信息。

谢谢约翰的回答

http://i.ytimg.com/vi/VIDEO_ID/maxresdefault.jpg
如果您还希望将回放设置为HQ,请使用Javascript API

为了实现这一目标,我们首先需要调用:

self.players[iframeID].playVideo();
然后它就会触发

self.players[iframeID] = new YT.Player(iframeID, {
                        events: {
                            'onReady': function(event) {
                                var iframe = $(event.target.getIframe());

                                self.players[iframe.attr('id')].loaded = true;
                            },
                            'onStateChange': function(event) {
                                var iframe = $(event.target.getIframe());
                                var iframeID = iframe.attr('id');

                                if(event.data == 1) /* playing */
                                {
                                    var qualityLevels = self.players[iframeID].getAvailableQualityLevels();

                                    if(self.players[iframeID].getPlaybackQuality() != qualityLevels[0])
                                    {
                                        /* Set highest quality */
                                        self.players[iframeID].setPlaybackQuality(qualityLevels[0]);
                                    }
                                }
                            }
                        }
                    });
例如:

http://img.youtube.com/vi/xjFouf6j81g/hqdefault.jpg

此处报告了xjFouf6j81g、videoid问题:

这不是一个修复或解决方法,但如果您想避免获得低分辨率缩略图,您的播放器应该大于
430px
宽度


因此,建议的完美16:9外观的最小尺寸为
432x43像素
,这应该会得到一个好看的缩略图。

谢谢,但我如何将它们应用到视频中,以便在“播放”按钮下显示高质量的缩略图?嗯,虽然我的视频是780p,播放质量很高,但缩略图质量是可变的。问题不是猜测缩略图,而是让YouTube在“播放”符号下显示缩略图。目前看来还不可能。我不知道您使用的视频或大小,但当我尝试嵌入另一个高清视频时,如果视频播放器对象太小,它似乎会加载低分辨率图片。当我将相同的视频嵌入一个大型播放器(即1000x700)时,我得到了最大分辨率的版本。谢谢你的url。有没有一种方法可以强制在嵌入式视频播放器中使用它?我认为要求是iframe url中的
&hd=1
,并且iframe必须大于1280x720像素,但我不能发誓。你的回答是唯一对我有效的,即使在多个线程中也是如此。谢谢。这个链接是YouTube API V3或更低版本的一部分吗?因为如果它来自V2或更低版本,那么我很确定谷歌会反对它?@dmitry-看到这个:。此json用于视频Id:C2omic5yWRQ。它具有maxresdefault.jpg的分辨率为1280x720,而hqdefault.jpg只有480x360。@saurabheights此JSON是从哪个URL请求的?@agrath:。制作、打开任何youtube视频并替换v参数的值都很简单。
http://img.youtube.com/vi/xjFouf6j81g/hqdefault.jpg