mpv player (Windows) Files x86_64和x86_64-v3之间的区别在于默认启用的指令集不同;进一步优化 mpv 的使用体验。你可以在 mpv.conf 文件中编辑这些配置

 

 


mpv player (Windows) Files

x86_64和x86_64-v3之间的区别在于默认启用的指令集不同。

x86_64-v3构建版本默认启用以下指令集:

avx avx2 bmi bmi2 fma lzcnt movbe sse3 sse4 sse4.1 sse4.2 ssse3 xsave sahf mwait crc32 cx16 popcnt f16c

以下是对这些指令集的详细解释:

AVX(Advanced Vector Extensions):AVX是一组扩展指令,用于向量运算和浮点运算。它可以提高多媒体、科学计算等应用程序的性能。

AVX2:AVX2是AVX的进一步扩展,增加了更多的矢量指令和整数运算指令,使得处理器能够更好地并行处理多个数据。

BMI(Bit Manipulation Instructions):BMI指令集包含了一系列位操作指令,用于进行位级别的操作和计算,例如位移、与、或等。

BMI2:BMI2是BMI指令集的扩展版本,增加了更多位级操作指令,如乘法、除法、取余等。

FMA(Fused Multiply-Add):FMA指令集提供了一种同时执行乘法和加法的指令,可以加速浮点数的计算过程。

LZCNT(Leading Zero Count):LZCNT指令用于计算一个数的二进制表示中前导零的数量。

MOVBE(Move Big-Endian):MOVBE指令用于在大端字节序和小端字节序之间进行数据移动。

SSE3(Streaming SIMD Extensions 3):SSE3扩展了原有的SIMD指令集,提供了更多的单指令多数据并行处理能力。

SSE4(Streaming SIMD Extensions 4):SSE4是SSE指令集的第四个版本,增加了大量新的指令和功能,包括字符串操作、整数运算等。

SSSE3(Supplemental Streaming SIMD Extensions 3):SSSE3是对SSE3指令集的补充,提供了更多的单指令多数据并行处理能力。

XSAVE:XSAVE指令用于将寄存器状态保存到内存中,以便进行上下文切换和恢复。

SAHF(Store AH into Flags):SAHF指令用于将AH寄存器的值存储到标志寄存器中。

MWAIT:MWAIT指令用于在等待事件时进入低功耗状态,节约能源。

CRC32(Cyclic Redundancy Check):CRC32指令用于计算循环冗余校验码,通常用于数据完整性校验。

CX16:CX16指令集扩展了处理器的原子操作能力,使得多线程编程更加方便和高效。

POPCNT(Population Count):POPCNT指令用于计算一个数中二进制位为1的数量。

F16C:F16C指令集提供了浮点数和半精度浮点数之间的转换指令。

这些指令集的存在使得处理器能够支持更多的功能和优化,提高了计算机系统的性能和效率。

如果CPU不支持这些特性,则无法成功启动x86_64-v3构建版本。
mpv 0.35.0-453-g78285e98 Copyright © 2000-2023 mpv/MPlayer/mplayer2 projects
 built on Sun Jun 25 12:20:37 2023
libplacebo version: v6.287.0-rc1-14-g9b4e561
FFmpeg version: N-111273-g10f1bbfe1
FFmpeg library versions:
   libavutil       58.13.101
   libavcodec      60.21.100
   libavformat     60.9.100
   libswscale      7.3.100
   libavfilter     9.8.102
   libswresample   4.11.100

Usage:   mpv [options] [url|path/]filename

Basic options:
 --start=<time>    seek to given (percent, seconds, or hh:mm:ss) position
 --no-audio        do not play sound
 --no-video        do not play video
 --fs              fullscreen playback
 --sub-file=<file> specify subtitle file to use
 --playlist=<file> specify playlist file

 --list-options    list all mpv options
 --h=<string>      print options which contain the given string in their name

您的mpv版本是0.35.0-453-g78285e98,构建于2023年6月25日12:20:37。以下是一些基本选项:

基本选项:
--start=<time>    跳转至指定的位置(百分比、秒数或hh:mm:ss)
--no-audio        不播放音频
--no-video        不播放视频
--fs              全屏播放
--sub-file=<file> 指定要使用的字幕文件
--playlist=<file> 指定播放列表文件

其他选项:
--list-options    列出所有mpv选项
--h=<string>      打印包含给定字符串在其名称中的选项


mpv 播放器在 Windows 系统下的 mpv.conf 配置文件示例模板,包含了常见的配置选项:

mpv.conf 示例

ini
# mpv 配置文件 (Windows 版)

# 视频播放设置
# 设置视频输出驱动程序 (硬件加速)
vo=direct3d

# 强制启用硬件加速 (对于支持硬件解码的播放器)
hwdec=auto

# 设置视频缩放算法 (如需要更清晰的图像,使用bicubic等)
video-filter=scale

# 设置输出视频的显示比例 (例如 16:9)
ratio=16:9

# 窗口设置
# 启动时默认全屏
fullscreen=yes

# 设置视频的最大宽度与高度
video-aspect=yes

# 禁用鼠标控制视频暂停与播放
no-mouse-input=yes

# 默认音量 (范围:0-100)
volume=70

# 设置字幕样式
# 字幕大小和字体
sub-font-size=36
sub-font="Arial"
sub-color="#FFFFFF"

# 显示字幕时的默认背景色与透明度
sub-bg-color="#000000"
sub-bg-opacity=50

# 设置音频输出
audio-device="DirectSound"  # 使用系统默认音频设备(可以改为其他音频设备名称)

# 启用音频的均衡器 (如果需要)
eq=0.0:0.0:0.0:0.0:0.0:0.0:0.0:0.0:0.0

# 控制视频画面的帧率
framedrop=no

# 设置字幕路径 (可以是绝对路径,也可以是相对路径)
sub-files="C:\path\to\your\subtitles"

# 视频播放结束后是否退出
# 退出时不要显示播放日志
on-end=quit
log-file="C:\path\to\log\mpv-log.txt"

# 启用/禁用跳过片头片尾功能
# [skip=seconds] 用于跳过片头片尾(例如跳过片头 10 秒,片尾 20 秒)
# chapter-start=10
# chapter-end=20

# 用户自定义的快捷键设置(可选)
# 此部分可以根据需要修改(参考官方文档获取更多快捷键)
input-conf="C:\path\to\your\input.conf"

# 设置默认视频播放目录
# 如果需要指定播放器启动时的目录,可以设置这个选项
start=0  # 开始播放时从文件的头部开始

常见配置项说明

  1. 视频设置:

    • vo=direct3d: 设置视频输出驱动为 Direct3D,这在 Windows 上是常用的驱动。
    • hwdec=auto: 自动启用硬件解码(如果支持硬件加速)。
    • video-filter=scale: 设置视频缩放算法。可以使用 bicubic 等算法来提高画质。
  2. 字幕设置:

    • sub-font-size=36: 设置字幕的字体大小。
    • sub-font="Arial": 设置字幕的字体。
    • sub-color="#FFFFFF": 设置字幕的颜色(此处为白色)。
    • sub-bg-color="#000000": 设置字幕背景颜色。
    • sub-bg-opacity=50: 设置字幕背景的透明度。
  3. 音频设置:

    • audio-device="DirectSound": 设置音频输出设备为系统默认的 DirectSound 设备。
    • eq=0.0:0.0:0.0:0.0:0.0:0.0:0.0:0.0:0.0: 设置均衡器的音频配置。
  4. 播放控制:

    • fullscreen=yes: 播放时自动全屏。
    • volume=70: 设置音量为 70%。
    • framedrop=no: 禁用帧丢弃,保证视频播放的流畅度。
  5. 文件路径设置:

    • sub-files="C:\path\to\your\subtitles": 设置字幕文件的路径。
  6. 退出设置:

    • on-end=quit: 播放完毕后自动退出。
    • log-file="C:\path\to\log\mpv-log.txt": 设置日志文件路径,记录播放过程中的信息。

补充说明

  • 音视频输出选项:

    • vo 和 hwdec 设置可影响视频解码和渲染性能。Direct3D 驱动和硬件加速(如 GPU 解码)通常能提升播放性能,尤其是在高清视频播放时。
  • 快捷键配置:

    • input-conf="C:\path\to\your\input.conf" 可以指向自定义的快捷键配置文件。该文件可以指定你在播放过程中使用的快捷键操作。
  • 日志文件:

    • log-file 配置选项将会记录播放器的活动日志,方便排查错误或调试。

配置文件位置

Windows 系统中,mpv.conf 文件通常放置在以下路径:

  • 用户配置文件C:\Users\<用户名>\AppData\Roaming\mpv\mpv.conf
  • 系统级配置文件C:\Program Files\mpv\mpv.conf 或 C:\Program Files (x86)\mpv\mpv.conf

根据需求,你可以选择编辑用户配置文件或系统级配置文件来定制自己的设置。


更高级的配置选项,帮助你进一步定制 mpv.conf 文件:

更多高级配置选项

视频输出设置

  1. vo(视频输出)

    • vo=opengl: 使用 OpenGL 渲染,适用于大多数平台,支持更多的高级图形效果。
    • vo=direct3d: 使用 Direct3D 渲染,通常在 Windows 系统上表现较好。
    • vo=gpu: 使用 GPU 渲染(例如 Vulkan 或 OpenGL)。
  2. deinterlace(去交错)

    • deinterlace=yes: 启用去交错功能,适合播放较旧的视频文件(如 30fps、60fps 视频)。
    • deinterlace=auto: 自动选择是否启用去交错。
  3. gamma(视频伽玛校正)

    • gamma=1.2: 调整显示的亮度和对比度。数值大于1会使画面变亮,数值小于1会使画面变暗。
  4. contrastbrightness

    • contrast=1.0: 设置视频的对比度,1.0 为默认值。
    • brightness=0.0: 设置视频的亮度,0.0 为默认值,正值会使视频更亮。

音频设置

  1. audio-device(音频设备选择)

    • audio-device=Windows DirectSound: 选择特定的音频设备,DirectSound 通常适用于大多数 Windows 系统设备。
    • audio-device=Speakers (Realtek High Definition Audio): 可选择你的实际音频设备名称。
  2. mixing(音频混音)

    • mixing=softvol: 启用软件音量控制,可以在播放器中更灵活地控制音量。
    • audio-channels=stereo: 设置音频输出通道为立体声(stereo)。
  3. resample(音频重采样)

    • resample=soxr: 使用 SoX 库进行音频重采样,提供更高质量的音频处理。
    • resample=ffmpeg: 使用 FFmpeg 库进行音频重采样。
  4. volume-max(最大音量限制)

    • volume-max=100: 限制音量的最大值为 100%。

字幕设置

  1. sub-auto(自动字幕加载)

    • sub-auto=yes: 自动加载字幕文件。如果你的媒体文件夹中有对应的 .srt 或 .ass 文件,mpv 会自动加载字幕。
    • sub-auto=all: 除了自动加载外,mpv 会加载所有可用的字幕格式。
  2. sub-text(字幕文本渲染)

    • sub-text-font="Tahoma": 设置字幕的字体,确保该字体在系统中存在。
    • sub-shadow-color="black": 设置字幕的阴影颜色,帮助提高字幕的可读性。
    • sub-shadow-offset=2: 设置字幕阴影的偏移量。
  3. sub-delay(字幕延迟)

    • sub-delay=0.5: 设置字幕的延迟,单位为秒。用于调整字幕的显示与视频的同步。

播放控制

  1. seek(跳转)

    • seek=5: 每次按下跳跃键时跳过 5 秒钟的视频。
    • seek-backward=10: 设置向后跳跃 10 秒钟。
  2. start(播放起始位置)

    • start=30: 播放时从第 30 秒开始。
  3. pause(暂停控制)

    • pause=yes: 默认自动暂停播放,通常在播放完成后或暂停时启用。
  4. fullscreen(全屏设置)

    • fullscreen=no: 默认不全屏。
    • border=no: 在全屏时隐藏窗口边框。

网络和流媒体设置

  1. cache(缓存设置)

    • cache-secs=60: 设置缓存大小为 60 秒,适用于网络流媒体播放,能改善流畅度。
    • cache=auto: 自动调整缓存大小。
  2. stream-lavf-o(流媒体设置)

    • stream-lavf-o="http_proxy=proxy.example.com:8080": 通过代理服务器进行流媒体播放。

高级调试与日志

  1. log-level(日志级别)

    • log-level=debug: 设置日志级别为调试,记录更多的调试信息。适合用于故障排查。
    • log-level=info: 设置日志级别为普通信息,显示较为简洁的日志。
  2. msg-level(消息级别)

    • msg-level=all=v: 设置所有消息的日志级别为详细(verbose),显示更多播放器内部信息。

硬件加速与解码

  1. hwdec(硬件解码)

    • hwdec=dxva2: 使用 DXVA2 解码,适用于 Windows 的硬件加速解码。
    • hwdec=vdpau: 使用 VDPAU 解码,适用于 Linux 系统(主要用于 NVIDIA GPU)。
  2. vd-lavc-skiploopfilter(跳过循环滤波器)

    • vd-lavc-skiploopfilter=all: 启用硬件解码时跳过所有的循环滤波器,用于提高解码性能。
  3. tvsao(视频流同步)

    • tvsao=yes: 启用视频流同步。

其他常用配置

  1. osd-bar(屏幕显示条)

    • osd-bar=no: 禁用屏幕显示条(例如音量、进度条)。
  2. window-title(窗口标题)

    • window-title="mpv - {filename}": 在播放时动态显示文件名作为窗口标题。
  3. screenshot-directory(截图目录)

    • screenshot-directory="C:\Users\<用户名>\Pictures": 设置截图保存的目录路径。

配置文件位置

在 Windows 系统中,配置文件通常位于:

  • 用户级别配置C:\Users\<用户名>\AppData\Roaming\mpv\mpv.conf
  • 全局配置C:\Program Files\mpv\mpv.conf 或 C:\Program Files (x86)\mpv\mpv.conf

这些高级配置选项可以帮助你根据自己的需求优化 mpv 播放器的表现。例如,硬件加速、视频渲染、音频处理和字幕显示等设置,都能显著影响播放体验。可以根据实际的硬件性能和使用需求选择合适的配置。


更多高级配置选项

视频效果与滤镜

  1. vf(视频滤镜)

    • vf="scale=1280:720": 设置视频分辨率为 1280x720,常用于流媒体或低分辨率视频的增强。
    • vf="hue=s=0": 设置视频的饱和度为 0,使视频呈现灰度效果(适用于黑白视频)。
    • vf="eq=contrast=1.5": 调整视频的对比度,1.5 增加对比度,0.5 会降低对比度。
  2. scale(缩放算法)

    • scale=lanczos: 使用 Lanczos 算法进行高质量的视频缩放。
    • scale=bilinear: 使用双线性缩放,性能较好,但质量稍差。
    • scale=spline16: 采用高质量的样条缩放算法,适用于高清内容。
  3. deband(去带状效果)

    • deband=yes: 启用去带状效果,减少视频播放时出现的色带现象,尤其在低比特率视频中表现显著。
  4. tinterlace(插值处理)

    • tinterlace=yes: 启用插值算法,提升视频播放的流畅度,尤其适用于低帧率的视频。
  5. saturation(饱和度)

    • saturation=1.2: 增加视频的颜色饱和度,使视频更加鲜艳。
    • saturation=0.8: 降低视频的饱和度,适用于想要更加柔和色彩的场景。
  6. fps(帧率控制)

    • fps=30: 设置播放视频时的目标帧率为 30 帧/秒。
    • fps=60: 设置播放视频时的目标帧率为 60 帧/秒,适用于流畅播放高帧率视频。

硬件加速与解码优化

  1. hwdec(硬件解码)

    • hwdec=auto: 自动检测硬件并启用最合适的硬件解码,适用于大多数用户。
    • hwdec=nvdec: 启用 NVIDIA 的硬件解码器,适用于具有 NVIDIA GPU 的用户。
    • hwdec=vaapi: 使用 VAAPI 进行硬件加速解码,适用于 Linux 系统中的 Intel 或 AMD 显卡。
  2. decode(解码设置)

    • decode=all: 启用解码所有流媒体格式。
    • decode=h264: 仅启用 H.264 解码,适用于只播放该编码格式的视频文件。
  3. gpu-api(GPU API 设置)

    • gpu-api=vulkan: 使用 Vulkan API 进行渲染,适用于支持 Vulkan 的显卡,通常比 OpenGL 更高效。
    • gpu-api=opengl: 使用 OpenGL API 进行渲染,适用于大多数显卡,提供良好的兼容性。
  4. hwdec-codecs(指定硬件解码器的编解码器)

    • hwdec-codecs=hevc,h264: 只启用 HEVC 和 H.264 编码格式的硬件加速解码。

流媒体和在线内容播放

  1. stream(流媒体播放设置)

    • stream-timeout=60: 设置流媒体超时为 60 秒,如果在该时间内未能连接上流媒体源,则自动停止连接。
    • stream-buffering: 启用缓冲,减少播放时的卡顿现象。
  2. network-protocol(网络协议设置)

    • network-protocol=http: 强制使用 HTTP 协议进行流媒体播放。
    • network-protocol=rtmp: 强制使用 RTMP 协议进行流媒体播放,适用于一些直播平台。
  3. hls-duration(HLS 流媒体设置)

    • hls-duration=10: 设置 HLS 流的持续时间为 10 秒,适用于较长视频的流播放。
  4. http-headers(自定义 HTTP 请求头)

    • http-headers="User-Agent: Mozilla/5.0": 自定义 HTTP 请求头信息,可能用于绕过某些流媒体平台的访问限制。
  5. ytdl-format(YouTube 下载格式设置)

    • ytdl-format="best": 下载最佳质量的视频。
    • ytdl-format="bestaudio": 下载最佳音频质量的视频。

界面与用户交互

  1. osc(屏幕显示控件)

    • osc=yes: 启用屏幕显示控件(例如音量、进度条),适用于全屏播放。
    • osc=no: 禁用屏幕显示控件,减少干扰。

补充一些 mpv 配置选项,特别是在 字幕音频设置 方面的优化:

字幕和音频设置

字幕设置

  1. sub-auto(字幕自动加载)

    • sub-auto=yes: 自动加载与视频文件同名的字幕文件。
    • sub-auto=no: 禁止自动加载字幕,适用于手动加载字幕的情况。
  2. sub-font(字幕字体)

    • sub-font="Arial": 设置字幕字体为 Arial。
    • sub-font="Times New Roman": 设置字幕字体为 Times New Roman。
    • sub-font="Courier New": 设置字幕为等宽字体,适用于代码或技术内容。
  3. sub-color(字幕颜色)

    • sub-color="#FFFFFF": 设置字幕为白色。
    • sub-color="#FFFF00": 设置字幕为黄色。
    • sub-color="red": 设置字幕为红色,增强字幕的可见性。
  4. sub-border-color(字幕边框颜色)

    • sub-border-color="#000000": 设置字幕边框为黑色,增加可读性。
    • sub-border-color="#00000000": 禁用字幕边框。
  5. sub-shadow-offset(字幕阴影偏移)

    • sub-shadow-offset=1: 为字幕添加阴影效果,设置偏移量为 1。
    • sub-shadow-offset=2: 更大偏移量的阴影效果,提高字幕的对比度和可读性。
  6. sub-text-scale(字幕大小缩放)

    • sub-text-scale=1.5: 设置字幕文字大小的缩放比例,1.0 为默认值,1.5 可以使字幕更加显眼。
    • sub-text-scale=1.0: 保持字幕的默认大小。
  7. sub-delay(字幕延迟)

    • sub-delay=0.5: 设置字幕延迟为 0.5 秒,适用于字幕与视频不同步的情况。
    • sub-delay=-0.5: 设置字幕提前 0.5 秒显示。
  8. sub-langs(选择字幕语言)

    • sub-langs="en,zh": 优先选择英语和中文的字幕。
    • sub-langs="eng,chi": 在支持多种语言的文件中,选择英语和中文字幕。
  9. sub-file-path(指定字幕文件路径)

    • sub-file-path="path/to/subtitles.srt": 手动指定字幕文件路径,通常用于加载外部字幕。

音频设置

  1. audio-device(音频设备选择)

    • audio-device="pulse": 使用 PulseAudio 作为音频输出设备。
    • audio-device="alsa": 使用 ALSA 音频驱动(Linux 系统)。
    • audio-device="auto": 自动选择音频设备,适合大多数用户。
  2. audio-channels(音频通道配置)

    • audio-channels=stereo: 强制使用立体声输出。
    • audio-channels=mono: 强制使用单声道输出。
    • audio-channels=5.1: 使用 5.1 声道环绕音频输出。
  3. audio-buffer(音频缓冲区大小)

    • audio-buffer=1M: 设置音频缓冲区大小为 1 MB,避免音频丢失和卡顿现象。
    • audio-buffer=512k: 设置音频缓冲区大小为 512 KB,适用于流畅的播放。
  4. audio-delay(音频延迟设置)

    • audio-delay=0.2: 设置音频延迟为 0.2 秒,常用于音视频不同步的情况下调整音频输出。
    • audio-delay=-0.2: 设置音频提前 0.2 秒输出。
  5. audio-visualize(音频可视化)

    • audio-visualize=yes: 启用音频可视化效果,可以在播放时显示音频波形。
    • audio-visualize=no: 禁用音频可视化效果,减少资源占用。
  6. af(音频过滤器)

    • af="volume=2.0": 提高音频的音量,将音量增加到 2 倍。
    • af="equalizer=f=1000:t=q:w=1:g=5": 在 1000 Hz 频率处应用均衡器,增加音量(用于增强某些频段)。
  7. audio-samplerate(音频采样率)

    • audio-samplerate=44100: 设置音频采样率为 44.1 kHz(标准 CD 质量)。
    • audio-samplerate=48000: 设置音频采样率为 48 kHz(适用于视频和电影音频)。
  8. normalize-audio(音频自动增益控制)

    • normalize-audio=yes: 启用音频增益控制,自动调整音频的音量,使之保持平衡。
    • normalize-audio=no: 禁用自动音量调整,保持原始音量。
  9. mixing-mode(音频混音模式)

    • mixing-mode=stereo: 选择立体声混音模式。
    • mixing-mode=mono: 强制输出单声道音频,适用于某些耳机或设备。

性能优化

  1. vo(视频输出设置)

    • vo=vaapi: 使用 VAAPI(硬件加速视频输出)在支持的硬件上提升视频解码性能。
    • vo=vulkan: 使用 Vulkan API 进行视频渲染,以提高性能和画质。
    • vo=opengl: 使用 OpenGL 进行视频渲染,提供较好的兼容性和质量。
  2. profile(配置文件)

    • profile=low: 启用低性能配置文件,适用于性能较差的设备。
    • profile=high: 启用高性能配置文件,适用于高端设备,以获取更好的视频质量。
  3. threads(解码线程数)

    • threads=4: 设置解码时使用的线程数为 4,适用于多核处理器,可以提高解码性能。
    • threads=1: 限制使用一个线程,适用于较低性能的设备。
  4. cache-secs(播放缓存大小)

    • cache-secs=60: 设置缓存大小为 60 秒,用于流媒体播放,减少卡顿。
    • cache-secs=30: 设置缓存为 30 秒,平衡流畅度和延迟。

其他高级设置

  1. osd-level(屏幕显示设置)

    • osd-level=1: 显示部分屏幕信息,如音量、字幕等。
    • osd-level=2: 显示完整的屏幕显示信息,包括时间、进度条、音量等。
  2. save-position-on-quit(退出时保存播放位置)

    • save-position-on-quit=yes: 退出时保存当前的播放位置,下次打开时可以从上次的播放位置继续播放。
    • save-position-on-quit=no: 禁用保存播放位置。

这些高级配置选项可以帮助你根据设备性能、视频播放需求以及用户偏好进行调整,进一步优化 mpv 的使用体验。你可以在 mpv.conf 文件中编辑这些配置,或者在启动命令中直接传递参数进行临时修改。

posted @ 2023-06-28 07:56  suv789  阅读(2843)  评论(0)    收藏  举报