rMBP 在播放视频的时候是怎么输出画面的? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ZRS
V2EX    Apple

rMB 在播放视频的时候是怎么输出画面的?

  •  
  •   ZRS 2015-09-02 04:11:31 +08:00 3826 次点击
    这是一个创建于 3743 天前的主题,其中的信息可能已经有所发展或是发生改变。

    默认设置情况下系统层面上识别出来的应该是 1280x800 的分辨率
    如果播放一个超过此分辨率的视频,如 1920x1080 的电影
    那么会不会出现反而 resize 到更小的尺寸的问题?这样做了无意义的 resize 缩小之后反而会损失掉更多的有效信息...
    有些不解..实际上到底是这么工作的吗

    17 条回复    2018-09-28 17:13:53 +08:00
    feikaras
        1
    feikaras  
       2015-09-02 04:56:25 +08:00
    识别的就是 2560 1600 啊,所以依然是拉伸并不是缩小。
    这个一看显示效果就知道的。
    iloveayu
        2
    iloveayu  
       2015-09-02 07:40:12 +08:00
    手动设置屏幕分辨率分辨率到 1280x800 ?然后再放电影?
    pH
        3
    pH  
       2015-09-02 08:09:09 +08:00
    这个好蛋疼啊=-= 深究的话估计要扯到系统层面上的,坐等解密
    small32
        4
    small32  
       2015-09-02 09:39:00 +08:00
    我用 Movist 的时候是严格按照影片分辨率来的。也就是如果是 1280*720 的话,会比想象中画面小很多

    但是设置里有 X2 的选项,如果勾选,会长宽都*2 来播放,这时候会和没有 retina 的屏幕一样大小了
    FurN1
        5
    FurN1  
       2015-09-02 12:08:38 +08:00
    15 寸是 2880x1800 ……我硬盘里有个 40G 原画的《复仇者联盟》, h264 格式用 mkv 封装,放起来好像是用到了整个像素…… rmvb 我不清楚,我对视频格式没有深入了解,不过我觉得和格式没有关系吧。

    我感觉操作系统对于窗口元素和图标、网页之类采取“ 2x2=4 ”个 retina 像素的方式来等同普通像素(默认分辨率设置的时候,更低分辨率会将更多 retina 像素等同普通像素),而全屏游戏和视频播放仍然是遵从原像素的。比如你玩一个大游戏,阿卡姆之城什么的,开始游戏前可以选择的最大尺寸是 2880x1800 ,即使你在系统设置中选择了低分辨率。

    我以前用过 13 寸的 MacBook , 08 年黑壳子非 retina 屏幕。用它放 720p 的视频,播放器选择“原始大小”,视频窗口会顶满屏幕宽度。我现在用的是 13 年的 15 寸 rMBP ,仍然原始大小播放 720p 的时候,视频窗口宽度目测是不及 13 寸屏幕的宽度的,说明操作系统在视频播放上没有使用 retina 像素处理的策略。

    想想也知道, retina 像素处理是蛮高级的显示功能,要是在视频播放的时候进行两次 resize 不得卡出翔…… VMware Fusion 7 Pro 声称可以对 Windows 虚拟机进行 retina 优化,进行勾选之后发现还是字小的看不清那种,还是得在控制面板里设置成 200%才好一些。 retina 优化什么的设计到窗口基准线位置的设定,要是软件或者操作系统本身没有这方面考虑的话, resize 什么的是没办法自然实现的。

    综上,你说 1280x800 的分辨率大概不会限制视频的,要按照 About This Mac 的 Displays 选项卡来看分辨率够不够。
    ZRS
        6
    ZRS  
    OP
       2015-09-02 12:51:46 +08:00
    @IgniteWhite 你用的是什么播放器?我用 MplayerX 播放视频的时候似乎的确是按照 1280*800 来计算的...
    放一个 4K 视频选择一半尺寸仍然铺满了屏幕
    kazarin
        7
    kazarin  
       2015-09-02 13:58:16 +08:00
    4:1 的 retina 缩放是系统级的,但是应用里应该可以突破这个限制,比如虚拟机

    不过这些看视频没有关系。如果如果视频渲染是在 retina 缩放之后: MplayerX 使用 1280*800 来播放视频,四个物理像素显示一个像素(也就是一个大像素),整块屏幕的有效像素实际上只有 1280*800 。想象一下屏幕分辨率只有 1280*800 的老笔记本,肉眼应该很容易看出区别才对。
    况且 retina 的缩放算法对不支持 retina 渲染的东西效果很差,比如老旧的应用,肉眼区别应该更大。

    如果视频渲染独立于 retina 渲染,你可以理解为播放器内的内容是一个特例不接受全局 retina 缩放,那理论上让它维持物理分辨率是最佳的结果,即 1920*1080 的视频只用屏幕中间那一小块 1920*1080 个像素去一对一播放。然而由于现在缩放算法的发展、人眼对动态分辨率的不敏感和实际的需要, 1920*1080 的视频缩放到 2560*1440 来播放并不会产生肉眼可见的差异。不管怎么说,也比在 1280*800 的老笔记本上效果更好。
    kazarin
        8
    kazarin  
       2015-09-02 14:03:50 +08:00
    题外话,在一些其他播放器都有针对 retina 缩放的选项: Movist 的通用设置里有“在 retina 下使用 1:1 像素", mpv 直接忽略这个问题默认就是 1:1 像素播放想要更改只能设置缩放百分比(好像是),选择如何并不影响最终播放的质量(拿一个分辨率刚好为屏幕物理分辨率一半的视频来测试就行)。 MplayerX 已经停止更新很久了,对字幕的支持也不好,换一个播放器吧。
    learnshare
        9
    learnshare  
       2015-09-02 14:24:25 +08:00
    考虑一下看大图时候缩小的时候,图片是怎么显示的
    FurN1
        10
    FurN1  
       2015-09-02 15:21:35 +08:00
    @ZRS 我的确忽略了这个问题!在 08 年的老机子里我用的是双系统,用的是 Windows 下的射手播放器。现在 rMBP 用的是 MplayerX 。我贴个图,是现在 2880x1800 的屏幕:


    @kazarin 我用的 MplayerX 和 VLC 都是 1:1 的。另外现在 MplayerX 在今年年初已经更新到了 1.1.0 ,我觉得它对字幕支持不错啊,就是解码能力不强,不过它界面极简而且格式支持好,还是我首选的轻量播放器。这边有个帖, http://bbs.feng.com/read-htm-tid-6837745.html 假设里面说的是正确的,那么 MplayerX 的字幕支持的确要比 Movist 好。
    FurN1
        11
    FurN1  
       2015-09-02 15:27:24 +08:00
    @kazarin 认个错,看图中明显不是 1:1 ……我想说 MplayerX 和 VLC 播放的时候画面一样大:)
    kazarin
        12
    kazarin  
       2015-09-02 15:31:00 +08:00
    @IgniteWhite MplayerX 对部分带特效的 srt 支持不好, Movist 在字幕方面是残疾完全不支持 ass 特效。 MplayerX 是个开源软件,最大的问题是还在使用老旧的 corevideo 渲染器,对一些新标准和格式都缺乏支持,比如对 YUV420P 和 YUV420P10 片源的播放质量明显弱于 Movist 。不在乎 ass 字幕特效的话 Movist 是相当好的播放器了。当然如果愿意稍微折腾一下的话 Mac 上最好的播放器还是 mpv 。
    FurN1
        13
    FurN1  
       2015-09-02 15:35:00 +08:00
    @kazarin 我不懂你说的那两个片源,不过我赞同你字幕的说法! MplayerX 的确不支持部分带特效的 srt ,我经常遇到,所以我一直用原配不带效果的 srt 或者字幕组有效果的 ass 。
    kazarin
        14
    kazarin  
       2015-09-02 15:40:45 +08:00   1
    @IgniteWhite 简单来说就是 8bit 和 10bit 的 H.264 编码。关于缺点可以看这篇: http://bbs.feng.com/read-htm-tid-7933875.html 不过我觉得用 MplayerX 和 Movist 全屏播放同一个视频文件自己看一下应该就能看出区别了,我从 MplayerX 换到 Movist 的时候第一个感想是“原来 retina 的字幕这么清晰锐利啊”……不过我不知道现在字幕的现实情况如何了
    FurN1
        15
    FurN1  
       2015-09-02 19:47:02 +08:00
    @kazarin 我刚刚折腾了一下,配置了 mpv 出来。你说对了, mpv 真是神器,现在看视频好像配了一副眼镜的感觉!而且各种可定制。涨姿势了!看来有人持续开发维护的软件就是不一样, mpv 的说明文档棒棒的。
    ZRS
        16
    ZRS  
    OP
       2015-09-03 14:23:10 +08:00
    试了好几个播放器..还是没搞明白...
    Limerencer
        17
    Limerencer  
       2018-09-28 17:13:53 +08:00
    @kazarin mpv 默认不是像素 1:1 渲染的,需要配置一下
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2905 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 14:01 PVG 22:1 LAX 06:01 JFK 09:01
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86