Ubuntu22.04之mpv播放器高频快捷键(二百七十)

简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者

新书发布:《Android系统多媒体进阶实战》🚀
优质专栏: Audio工程师进阶系列原创干货持续更新中……】🚀
优质专栏: 多媒体系统工程师系列原创干货持续更新中……】🚀
优质视频课程:AAOS车载系统+AOSP14系统攻城狮入门视频实战课 🚀

人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.

更多原创,欢迎关注:Android系统攻城狮

欢迎关注Android系统攻城狮

🍉🍉🍉文章目录🍉🍉🍉

    • 🌻1.前言
    • 🌻2.mpv播放器介绍
    • 🌻3.MPV播放器高频快捷键
    • 🌻4.MPV全部快捷键

🌻1.前言

本篇目的:Ubuntu22.04之mpv播放器高频快捷键

🌻2.mpv播放器介绍

  • MPV播放器是一款开源、跨平台的多媒体播放器,广受用户喜爱。它基于MPlayer、mplayer2和FFmpeg项目,继承了这些项目的优秀特性,并在其基础上进行了优化和改进。MPV播放器支持多种操作系统,包括Windows、macOS、Linux等,是一款功能强大、性能卓越的播放器。
  • MPV播放器的界面简洁,采用无边框设计,让用户可以将更多注意力集中在观看视频上。播放器支持自定义皮肤,用户可根据个人喜好调整界面风格。此外,MPV播放器还具备丰富的快捷键功能,方便用户在观看过程中进行快速操作。
    在视频格式支持方面,MPV播放器表现十分出色。得益于FFmpeg库的支持,它能够播放几乎所有常见视频格式,如MP4、AVI、MKV、FLV等,以及对高清视频、4K视频的流畅播放。同时,MPV播放器还支持音频、字幕等多种媒体文件格式,满足用户多样化的播放需求。
  • MPV播放器具有强大的视频解码能力,支持硬件加速,充分利用GPU性能,降低CPU占用率。这使得播放器在播放高清视频时,能够保持较低的硬件资源消耗,提高播放流畅度。此外,MPV播放器还支持多种画面比例和缩放方式,确保视频播放效果的舒适度。
  • 在音频方面,MPV播放器同样表现出色。它支持多种音频解码器,如AAC、AC3、DTS等,提供丰富的音效设置,如均衡器、音量放大等。用户可以根据自己的需求调整音频输出,获得更好的听觉体验。
  • MPV播放器的字幕功能也非常强大。它支持多种字幕格式,如SRT、ASS、SUB等,并能自动加载与视频文件同名的外挂字幕。播放器还支持字幕样式调整、字体替换等,让用户在观看外语视频时,能够获得更好的字幕体验。
  • 值得一提的是,MPV播放器还具有丰富的扩展功能。用户可以通过安装脚本、插件等方式,为播放器增加更多实用功能,如视频截图、网络播放、直播源添加等。这使得MPV播放器在功能上具有极高的可扩展性,满足不同用户的需求。
  • MPV播放器是一款功能强大、性能优异、定制性高的多媒体播放器。它凭借丰富的格式支持、强大的解码能力、简洁的界面设计等优点,在众多播放器中脱颖而出,成为了许多用户观看视频的首选工具。

🌻3.MPV播放器高频快捷键

快捷键功能
]增加0.1倍速播放
[减小0.1倍速播放
}增加2平方倍速播放
{减小2平方倍速播放
删除键:<—恢复1.0倍速播放
空格键播放/暂停
,上一帧视频
.下一帧视频
0增加音量
9减小音量
f切换全屏
v显示/隐藏字幕
T切换最前端显示播放
o显示进度条
I显示音视频编解码信息(大写i)
l设置一个时间段循环播放,按1次l开始,按2次l结束开始循环,按3次l清除循环(小写L)
#切换声道
q退出

🌻4.MPV全部快捷键

# mpv keybindings
#
# Location of user-defined bindings: ~/.config/mpv/input.conf
#
# Lines starting with # are comments. Use SHARP to assign the # key.
# Copy this file and uncomment and edit the bindings you want to change.
#
# List of commands and further details: DOCS/man/input.rst
# List of special keys: --input-keylist
# Keybindings testing mode: mpv --input-test --force-window --idle
#
# Use 'ignore' to unbind a key fully (e.g. 'ctrl+a ignore').
#
# Strings need to be quoted and escaped:
#   KEY show-text "This is a single backslash: \\ and a quote: \" !"
#
# You can use modifier-key combinations like Shift+Left or Ctrl+Alt+x with
# the modifiers Shift, Ctrl, Alt and Meta (may not work on the terminal).
#
# The default keybindings are hardcoded into the mpv binary.
# You can disable them completely with: --no-input-default-bindings# Developer note:
# On compilation, this file is baked into the mpv binary, and all lines are
# uncommented (unless '#' is followed by a space) - thus this file defines the
# default key bindings.# If this is enabled, treat all the following bindings as default.
#default-bindings start#MBTN_LEFT     ignore              # don't do anything
#MBTN_LEFT_DBL cycle fullscreen    # toggle fullscreen
#MBTN_RIGHT    cycle pause         # toggle pause/playback mode
#MBTN_BACK     playlist-prev       # skip to the previous file
#MBTN_FORWARD  playlist-next       # skip to the next file# Mouse wheels, touchpad or other input devices that have axes
# if the input devices supports precise scrolling it will also scale the
# numeric value accordingly
#WHEEL_UP      add volume 2
#WHEEL_DOWN    add volume -2
#WHEEL_LEFT    seek -10         # seek 10 seconds backward
#WHEEL_RIGHT   seek 10          # seek 10 seconds forward## Seek units are in seconds, but note that these are limited by keyframes
#RIGHT seek  5                          # seek 5 seconds forward
#LEFT  seek -5                          # seek 5 seconds backward
#UP    seek  60                         # seek 1 minute forward
#DOWN  seek -60                         # seek 1 minute backward
# Do smaller, always exact (non-keyframe-limited), seeks with shift.
# Don't show them on the OSD (no-osd).
#Shift+RIGHT no-osd seek  1 exact       # seek exactly 1 second forward
#Shift+LEFT  no-osd seek -1 exact       # seek exactly 1 second backward
#Shift+UP    no-osd seek  5 exact       # seek exactly 5 seconds forward
#Shift+DOWN  no-osd seek -5 exact       # seek exactly 5 seconds backward
#Ctrl+LEFT   no-osd sub-seek -1         # seek to the previous subtitle
#Ctrl+RIGHT  no-osd sub-seek  1         # seek to the next subtitle
#Ctrl+Shift+LEFT sub-step -1            # change subtitle timing such that the previous subtitle is displayed
#Ctrl+Shift+RIGHT sub-step 1            # change subtitle timing such that the next subtitle is displayed
#Alt+left  add video-pan-x  0.1         # move the video right
#Alt+right add video-pan-x -0.1         # move the video left
#Alt+up    add video-pan-y  0.1         # move the video down
#Alt+down  add video-pan-y -0.1         # move the video up
#Alt++     add video-zoom   0.1         # zoom in
#ZOOMIN    add video-zoom   0.1         # zoom in
#Alt+-     add video-zoom  -0.1         # zoom out
#ZOOMOUT   add video-zoom  -0.1         # zoom out
#Ctrl+WHEEL_UP   add video-zoom  0.1    # zoom in
#Ctrl+WHEEL_DOWN add video-zoom -0.1    # zoom out
#Alt+BS set video-zoom 0; set panscan 0; set video-pan-x 0; set video-pan-y 0 # reset zoom and pan settings
#PGUP add chapter 1                     # seek to the next chapter
#PGDWN add chapter -1                   # seek to the previous chapter
#Shift+PGUP seek 600                    # seek 10 minutes forward
#Shift+PGDWN seek -600                  # seek 10 minutes backward
#[ multiply speed 1/1.1                 # decrease the playback speed
#] multiply speed 1.1                   # increase the playback speed
#{ multiply speed 0.5                   # halve the playback speed
#} multiply speed 2.0                   # double the playback speed
#BS set speed 1.0                       # reset the speed to normal
#Shift+BS revert-seek                   # undo the previous (or marked) seek
#Shift+Ctrl+BS revert-seek mark         # mark the position for revert-seek
#q quit
#Q quit-watch-later                     # exit and remember the playback position
#q {encode} quit 4
#ESC set fullscreen no                  # leave fullscreen
#ESC {encode} quit 4
#p cycle pause                          # toggle pause/playback mode
#. frame-step                           # advance one frame and pause
#, frame-back-step                      # go back by one frame and pause
#SPACE cycle pause                      # toggle pause/playback mode
#> playlist-next                        # skip to the next file
#ENTER playlist-next                    # skip to the next file
#< playlist-prev                        # skip to the previous file
#O no-osd cycle-values osd-level 3 1    # toggle displaying the OSD on user interaction or always
#o show-progress                        # show playback progress
#P show-progress                        # show playback progress
#i script-binding stats/display-stats   # display information and statistics
#I script-binding stats/display-stats-toggle # toggle displaying information and statistics
#` script-binding console/enable        # open the console
#z add sub-delay -0.1                   # shift subtitles 100 ms earlier
#Z add sub-delay +0.1                   # delay subtitles by 100 ms
#x add sub-delay +0.1                   # delay subtitles by 100 ms
#ctrl++ add audio-delay 0.100           # change audio/video sync by delaying the audio
#ctrl+- add audio-delay -0.100          # change audio/video sync by shifting the audio earlier
#Shift+g add sub-scale +0.1             # increase the subtitle font size
#Shift+f add sub-scale -0.1             # decrease the subtitle font size
#9 add volume -2
#/ add volume -2
#KP_DIVIDE add volume -2
#0 add volume 2
#* add volume 2
#KP_MULTIPLY add volume 2
#m cycle mute                           # toggle mute
#1 add contrast -1
#2 add contrast 1
#3 add brightness -1
#4 add brightness 1
#5 add gamma -1
#6 add gamma 1
#7 add saturation -1
#8 add saturation 1
#Alt+0 set window-scale 0.5             # halve the window size
#Alt+1 set window-scale 1.0             # reset the window size
#Alt+2 set window-scale 2.0             # double the window size
#b cycle deband                         # toggle the debanding filter
#d cycle deinterlace                    # cycle the deinterlacing filter
#r add sub-pos -1                       # move subtitles up
#R add sub-pos +1                       # move subtitles down
#t add sub-pos +1                       # move subtitles down
#v cycle sub-visibility                 # hide or show the subtitles
#Alt+v cycle secondary-sub-visibility   # hide or show the secondary subtitles
#V cycle sub-ass-use-video-data         # cycle which video data gets used in ASS rendering to fix broken files
#u cycle-values sub-ass-override "force" "scale" # toggle overriding SSA/ASS subtitle styles with the normal styles
#j cycle sub                            # switch subtitle track
#J cycle sub down                       # switch subtitle track backwards
#SHARP cycle audio                      # switch audio track
#_ cycle video                          # switch video track
#T cycle ontop                          # toggle placing the video on top of other windows
#f cycle fullscreen                     # toggle fullscreen
#s screenshot                           # take a screenshot of the video in its original resolution with subtitles
#S screenshot video                     # take a screenshot of the video in its original resolution without subtitles
#Ctrl+s screenshot window               # take a screenshot of the window with OSD and subtitles
#Alt+s screenshot each-frame            # automatically screenshot every frame; issue this command again to stop taking screenshots
#w add panscan -0.1                     # decrease panscan
#W add panscan +0.1                     # shrink black bars by cropping the video
#e add panscan +0.1                     # shrink black bars by cropping the video
#A cycle-values video-aspect-override "16:9" "4:3" "2.35:1" "-1" # cycle the video aspect ratio ("-1" is the container aspect)
#POWER quit
#PLAY cycle pause                       # toggle pause/playback mode
#PAUSE cycle pause                      # toggle pause/playback mode
#PLAYPAUSE cycle pause                  # toggle pause/playback mode
#PLAYONLY set pause no                  # unpause
#PAUSEONLY set pause yes                # pause
#STOP quit
#FORWARD seek 60                        # seek 1 minute forward
#REWIND seek -60                        # seek 1 minute backward
#NEXT playlist-next                     # skip to the next file
#PREV playlist-prev                     # skip to the previous file
#VOLUME_UP add volume 2
#VOLUME_DOWN add volume -2
#MUTE cycle mute                        # toggle mute
#CLOSE_WIN quit
#CLOSE_WIN {encode} quit 4
#ctrl+w quit
#E cycle edition                        # switch edition
#l ab-loop                              # set/clear A-B loop points
#L cycle-values loop-file "inf" "no"    # toggle infinite looping
#ctrl+c quit 4
#DEL script-binding osc/visibility      # cycle OSC visibility between never, auto (mouse-move) and always
#ctrl+h cycle-values hwdec "no" "auto-safe" # toggle hardware decoding
#F8 show-text ${playlist}               # show the playlist
#F9 show-text ${track-list}             # show the list of video, audio and sub tracks
#g ignore
#g-p script-binding select/select-playlist
#g-s script-binding select/select-sid
#g-S script-binding select/select-secondary-sid
#g-a script-binding select/select-aid
#g-v script-binding select/select-vid
#g-t script-binding select/select-track
#g-c script-binding select/select-chapter
#g-l script-binding select/select-subtitle-line
#g-d script-binding select/select-audio-device
#g-b script-binding select/select-binding
#g-r script-binding select/show-properties#Alt+KP1 add video-rotate -1 # rotate video counterclockwise by 1 degree
#Alt+KP5 set video-rotate  0 # reset rotation
#Alt+KP3 add video-rotate  1 # rotate video clockwise by 1 degree#KP1 add video-zoom    -0.01 # zoom out video
#KP2 add video-scale-y -0.01 # scale down video vertically
#KP4 add video-scale-x -0.01 # scale down video horizontally
#KP5 set video-scale-x  1.00; set video-scale-y 1; set video-zoom 0 # reset video scale
#KP6 add video-scale-x  0.01 # scale up video horizontally
#KP8 add video-scale-y  0.01 # scale up video vertically
#KP9 add video-zoom     0.01 # zoom in video#Ctrl+KP1 add video-pan-x -0.01; add video-pan-y  0.01 # move video left and down
#Ctrl+KP2 add video-pan-y  0.01                        # move video down
#Ctrl+KP3 add video-pan-x  0.01; add video-pan-y  0.01 # move video right and down
#Ctrl+KP4 add video-pan-x -0.01                        # move video left
#Ctrl+KP5 set video-pan-x  0.00; set video-pan-y  0.00 # reset video position
#Ctrl+KP6 add video-pan-x  0.01                        # move video right
#Ctrl+KP7 add video-pan-x -0.01; add video-pan-y -0.01 # move video left and up
#Ctrl+KP8 add video-pan-y -0.01                        # move video up
#Ctrl+KP9 add video-pan-x  0.01; add video-pan-y -0.01 # move video right and up#Ctrl+KP_END   add video-align-x -0.01; add video-align-y  0.01 # align video left and down
#Ctrl+KP_DOWN  add video-align-y  0.01                          # align video down
#Ctrl+KP_PGDWN add video-align-x  0.01; add video-align-y  0.01 # align video right and down
#Ctrl+KP_LEFT  add video-align-x -0.01                          # align video left
#Ctrl+KP_BEGIN set video-align-x  0.00; set video-align-y  0.00 # reset video alignment
#Ctrl+KP_RIGHT add video-align-x  0.01                          # align video right
#Ctrl+KP_HOME  add video-align-x -0.01; add video-align-y -0.01 # align video left and up
#Ctrl+KP_UP    add video-align-y -0.01                          # align video up
#Ctrl+KP_PGUP  add video-align-x  0.01; add video-align-y -0.01 # align video right and up#
# Legacy bindings (may or may not be removed in the future)
#
#! add chapter -1                       # seek to the previous chapter
#@ add chapter 1                        # seek to the next chapter#
# Not assigned by default
# (not an exhaustive list of unbound commands)
## ? cycle sub-forced-events-only        # display only DVD/PGS forced subtitle events
# ? stop                                # stop playback (quit or enter idle mode)

Link

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1552833.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

微软准备了 Windows 11 24H2 ISO “OOBE/BypassNRO“命令依然可用

Windows 11 24H2 可能在未来几周内开始推出。 微软已经要求 OEM 遵循新的指南准备好 Windows 11 24H2 就绪的驱动程序&#xff0c;并且现在已经开始准备媒体文件 (.ISO)。 OEM ISO 的链接已在微软服务器上发布。 一个标有"X23-81971_26100.1742.240906-0331.ge_release_sv…

【Python】探索自然语言处理的利器:THULAC 中文词法分析库详解

THULAC&#xff08;THU Lexical Analyzer for Chinese&#xff09;是清华大学开发的一款中文词法分析工具&#xff0c;集成了分词和词性标注两大功能。THULAC 拥有强大的分词能力和高效的词性标注&#xff0c;适用于多种中文文本处理场景。该工具能够在保证高准确率的同时保持较…

网络编程套接字TCP

前集回顾 上一篇博客中我们写了一个UDP的echo server&#xff0c;是一个回显服务器&#xff1a;请求是啥&#xff0c;响应就是啥 一个正常的服务器&#xff0c;要做三个事情&#xff1a; 读取请求并解析根据请求&#xff0c;计算响应把响应写回到客户端 DatagramPacket res…

基于大数据的大屏高速公路收费系统的开发设计与实现SpringBoot+vue

目录 1. 需求分析 2. 技术选型 3. 系统架构设计 4. 开发实现 5. 代码示例和效果演示 6. 持续优化 由于我国高速公路的建设和发展与国外先进国家有很大差距。在高速公路建成后&#xff0c;收费系统往往选用国外的成熟产品。虽然这些产品在功能上基本满足了高速公路收费的要…

【AI大模型】深入Transformer架构:编码器部分的实现与解析(上)

目录 &#x1f354; 编码器介绍 &#x1f354; 掩码张量 2.1 掩码张量介绍 2.2 掩码张量的作用 2.3 生成掩码张量的代码分析 2.4 掩码张量的可视化 2.5 掩码张量总结 &#x1f354; 注意力机制 3.1 注意力计算规则的代码分析 3.2 带有mask的输入参数&#xff1a; 3.…

电子竞技信息交流平台+ssm论文源码调试讲解

2系统关键技术 2.1 微信小程序 微信小程序&#xff0c;简称小程序&#xff0c;英文名Mini Program&#xff0c;是一种全新的连接用户与服务的方式&#xff0c;可以快速访问、快速传播&#xff0c;并具有良好的使用体验[1]。 小程序的主要开发语言是JavaScript&#xff0c;它与…

利用PDLP扩展线性规划求解能力

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

【Maven】依赖管理,Maven仓库,Maven核心功能

Maven 是一个项目管理工具&#xff0c;基于 POM&#xff08;Project Object Model&#xff0c;项目对象模型&#xff09;的概念&#xff0c;Maven 可以通过一小段描述信息来管理项目的构建&#xff0c;报告和文档的项目管理工具软件 大白话&#xff1a;Maven 是一个项目管理工…

IDEA 2024将Java项目(module)打成JAR包

说明&#xff1a;标题中所说的项目在IDEA中被称为Module(模块)&#xff0c;这里实际上是要将IDEA中的建立的Module打成JAR包。 目标&#xff1a;将module打包为JAR文件&#xff0c;随后在另一Module中导入并使用该JAR包。流程&#xff1a;新建chpt03与test两个Module&#xff0…

解决银河麒麟操作系统V10软件包架构不符问题

TOC &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在银河麒麟桌面操作系统V10中安装软件包时&#xff0c;如果遇到“软件架构与本机架构不符”的提示&#xff0c;可以尝试以下步骤来解决问题&#xff1a; 1. 确认架构一致性 查看本机架构…

小学一年级教材识字表,写字表,笔画名称表,偏旁名称表大全,方便大家学习打印!

前言 本次巧手打字通&#xff08;一起来打字&#xff09;小课堂文章主要为大家带来小学一年级语文识字表、写字表、笔画名称表以及偏旁名称表。这份资料不仅涵盖了一年级语文课程中必须掌握的核心字词&#xff0c;还列出教程里的笔画名称表&#xff0c;旨在帮助孩子们在识字的…

开源模型应用落地-模型微调-语料采集-数据核验(三)

一、前言 在自然语言处理(NLP)的快速发展中,语料采集作为基础性的步骤显得尤为重要。它不仅为机器学习模型提供了所需的训练数据,还直接影响模型的性能和泛化能力。随着数据驱动技术的不断进步,如何有效并高效地收集、清洗和整理丰富多样的语料,已成为研究者和工程师们亟…

使用OneAPI+Ollama+Dify搭建一个兼容OpenAI的API发布及AI应用开发系统(二)客户端设置

这一编我们介绍Ollama客户端的设置&#xff0c;那么客户端在这里指的就是你放在家里的Ollama服务器&#xff0c;通过与VPS里安装的OneAPI配合&#xff0c;从而实现了为Ollama生成API访问的服务&#xff0c;并为后端服务器提供安全保障。 一&#xff1a;安装客户端软件 客户端…

【Linux】进程优先级、调度、命令行参数:从理论到实践(二)

&#x1f308; 个人主页&#xff1a;Zfox_ &#x1f525; 系列专栏&#xff1a;Linux 目录 &#x1f680; 前言一&#xff1a; &#x1f525; 进程优先级 &#x1f375; 基本概念&#x1f375; 查看系统进程&#x1f375; PRI and NI&#x1f375; PRI vs NI&#x1f375; 用to…

【数据管理】数据脱敏解决方案(word原件)

1 概述 1.1 数据脱敏定义 1.2 数据脱敏原则 1.2.1基本原则 1.2.2技术原则 1.2.3管理原则 1.3 数据脱敏常用方法 3.1.1泛化技术 3.1.2抑制技术 3.1.3扰乱技术 3.1.4有损技术 1.4 数据脱敏全生命周期 2 制定数据脱敏规程 3 发现敏感数据 4 定义脱敏规则 5 执…

本科生已不够 AI公司雇佣各领域专家训练大模型

9月29日消息&#xff0c;人工智能模型的性能在很大程度上依赖于其训练数据的质量。传统方法通常是雇用大量低成本劳动力对图像、文本等数据进行标注&#xff0c;以满足模型训练的基本需求。然而&#xff0c;这种方式容易导致模型在理解和生成信息时出现“幻觉”现象&#xff0c…

<<迷雾>> 第5章 从逻辑学到逻辑电路(5)--异或门 示例电路

!ABA!B 的逻辑电路组成 info::操作说明 鼠标单击开关切换开合状态 注: 这个实际就是 异或门, 当两个输入相异时输出高电平, 否则输出低电平 primary::在线交互操作链接 https://cc.xiaogd.net/?startCircuitLinkhttps://book.xiaogd.net/cyjsjdmw-examples/assets/circuit/cyj…

读数据湖仓04数据架构与数据工程

1. 大容量存储器 1.1. 几乎是到最后时刻&#xff0c;大容量存储器才被引入基础数据的基础设施中 1.1.1. 分析人员通常不会直接在大容量存储器中进行数据分析 1.1.2. 大容量存储器在基础数据中扮演的角色也特别重要&#xff0c;它能够在许多方面支持数据分析人员自由灵活地完成…

从零开始搭建UVM平台(七)-加入monitor

书接上回&#xff1a; 从零开始搭建UVM平台&#xff08;一&#xff09;-只有uvm_driver的验证平台 从零开始搭建UVM平台&#xff08;二&#xff09;-加入factory机制 从零开始搭建UVM平台&#xff08;三&#xff09;-加入objection机制 从零开始搭建UVM平台&#xff08;四&…

Github 2024-10-02C开源项目日报 Top9

根据Github Trendings的统计,今日(2024-10-02统计)共有9个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量C项目9BitBake项目1Netdata: 开源实时监控平台 创建周期:4020 天开发语言:C协议类型:GNU General Public License v3.0Star数量:68982 个For…