Trang nào mới là quan trọng kia bạn, chứ cách giảm RAM Firefox là lên #1 cài uBlock và Auto Tab Discard là tối đa rồi, ngoài ra phải kiểm tra lại danh sách addon xem có cái nào ngốn tài nguyên thì lược bỏ.Có cách nào giảm ram của firefox ko các fen, cùng 1 web mà firefox ăn nhiều hơn chrome quá nhiều
about:config
tìm fission.autostart
chỉnh thành false, khởi động lại Firefox để tắt chế độ đa tiến trình của Firefox đi, Firefox sẽ tạo ra ít firefox.exe hơn => chiếm ít RAM đi tầm 30%.portable_config
, nếu chưa có folder shaders
thì tạo mới, rồi giải nén Extract Here
file zip trên vào.scripts
: https://raw.githubusercontent.com/n...r/portable_config/scripts/hdr-toys-helper.luahwdec=auto-safe
vo=gpu-next
gpu-api=vulkan
deband
deband-iterations=4
deband-threshold=48
deband-range=16
deband-grain=16
[bt.2100]
profile-cond=get("video-params/sig-peak") > 1
profile-restore=copy
target-trc=pq
target-prim=bt.2020
glsl-shader=~~/shaders/hdr-toys/utils/clip_both.glsl
glsl-shader=~~/shaders/hdr-toys/transfer-function/pq_to_l.glsl
glsl-shader=~~/shaders/hdr-toys/transfer-function/l_to_linear.glsl
glsl-shader=~~/shaders/hdr-toys/utils/crosstalk.glsl
glsl-shader=~~/shaders/hdr-toys/utils/chroma_correction.glsl
glsl-shader=~~/shaders/hdr-toys/tone-mapping/dynamic.glsl
glsl-shader=~~/shaders/hdr-toys/utils/crosstalk_inverse.glsl
glsl-shader=~~/shaders/hdr-toys/gamut-mapping/compress.glsl
glsl-shader=~~/shaders/hdr-toys/transfer-function/linear_to_bt1886.glsl
glsl-shader-opts-add=crosstalk/alpha=0
glsl-shader-opts-add=crosstalk_inverse/alpha=0
[bt.2020]
profile-cond=get("video-params/primaries") == "bt.2020" and get("video-params/sig-peak") == 1
profile-restore=copy
target-prim=bt.2020
glsl-shader=~~/shaders/hdr-toys/transfer-function/bt1886_to_linear.glsl
glsl-shader=~~/shaders/hdr-toys/gamut-mapping/compress.glsl
glsl-shader=~~/shaders/hdr-toys/transfer-function/linear_to_bt1886.glsl
portable_config
của người đã và đang sử dụng MPV để xem SDR, HDR vậy sẽ không có nhầm lẫn, bộ folder này hỗ trợ cả SVP để tăng FPS lên 60: https://github.com/natural-harmonia-gropius/mpv-configKhó quá fen ơi. Khi nào fen rảnh rỗi vọc cho mpv zin thử nhoéHiện tại cái hướng dẫn mới nhất cài vapoursynth để ép 60FPS lại cho MPV.net kia https://github.com/mpvnet-player/mpv.net/wiki/Using-VapourSynth-in-mpv.net
Cơ mà chắc là áp dụng cho MPV zin được cơ mà phải tìm hiểu. Nó sẽ y hệt như MPV.net, chỉ khác là phần profile phải tự bật nó lên: https://mpv.io/manual/stable/#options-profile
Kiểu này:mpv.exe --profile=VapourSynth-Motion-Interpolation
để kích hoạt profile, hoặc tạo file bat hay shortcut gì gì đó, rồi phang ném thằng file video vào là xong.
Cái này mình không rành nên có gì nhờ bạn @erogemaster225 tư vấn tiếp vậy.
%
để tìm kiếm tab nhanh chóng + demo mở 6000 tab không sứt mẻ gì: https://voz.vn/t/tong-hop-nhung-addon-chat-cho-firefox-pc-mobile.682181/post-23402997nếu muốn dùng cho mọi video thì chỉ đơn giản là đừng thêm cái [tên profile] vào confHiện tại cái hướng dẫn mới nhất cài vapoursynth để ép 60FPS lại cho MPV.net kia https://github.com/mpvnet-player/mpv.net/wiki/Using-VapourSynth-in-mpv.net
Cơ mà chắc là áp dụng cho MPV zin được cơ mà phải tìm hiểu. Nó sẽ y hệt như MPV.net, chỉ khác là phần profile phải tự bật nó lên: https://mpv.io/manual/stable/#options-profile
Kiểu này:mpv.exe --profile=VapourSynth-Motion-Interpolation
để kích hoạt profile, hoặc tạo file bat hay shortcut gì gì đó, rồi phang ném thằng file video vào là xong.
Cái này mình không rành nên có gì nhờ bạn @erogemaster225 tư vấn tiếp vậy.
mà nếu dùng cái filter vs kia mà thấy drop frame thì cũng không có gì lạ đâu cái đó cũng hơi nặng, còn nếu có máy cực khoẻ thì dùng rife mà chơi
nên là mới có staxrip nó bundle hết vs lẫn pythonNhiều bạn chắc máy cũng khủng, có con card tầm A100 thì phang tất chỉ ngại không dùng hết khả năng của nó thôi, mình thì đúng là nhận ra sự khác biệt giữa 30 với 60 FPS, cơ mà thấy vẫn chưa đáng để ép MPV biến 30 thành 60 bằng mấy cái filter như SVP lắm, với lại toàn xem Youtube có sẵn 60FPS rồi chả lo lắm.
Vấn đề là mấy hướng dẫn dùng VapourSynth có vẻ vẫn khó đối với nhiều bạn muốn tự mò vì phải cài Python rồi cài module VapourSynth, cài VapourSynth rồi lắp vào PATH của hệ điều hành, sau đó lắp vào profile MPV.
Khó quá fen ơi. Khi nào fen rảnh rỗi vọc cho mpv zin thử nhoé
C:\StaxRip\StaxRip.exe
PATH
thì nháy đúp vào chỉnh sửa rồi thêm C:\StaxRip\Apps\FrameServer\VapourSynth
như sau:
C:\StaxRip
và copy đoạn này vào:import os, sys
import vapoursynth
core = vapoursynth.core
sys.path.append(r"C:\StaxRip\Apps\Plugins\VS\Scripts")
import importlib.machinery
mvsfunc = importlib.machinery.SourceFileLoader('mvsfunc', r"C:\StaxRip\Apps\Plugins\VS\Scripts\mvsfunc.py").load_module()
adjust = importlib.machinery.SourceFileLoader('adjust', r"C:\StaxRip\Apps\Plugins\VS\Scripts\adjust.py").load_module()
havsfunc = importlib.machinery.SourceFileLoader('havsfunc', r"C:\StaxRip\Apps\Plugins\VS\Scripts\havsfunc.py").load_module()
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\AddGrain\AddGrain.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\AWarpSharp2\libawarpsharp2.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\CAS\CAS.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\CTMF\CTMF.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\Deblock\Deblock.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\EEDI2\EEDI2.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\EEDI3m\EEDI3m.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\Dual\flash3kyuu_deband\flash3kyuu_deband.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\FluxSmooth\libfluxsmooth.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\fmtconv\fmtconv.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\HQDN3D\libhqdn3d.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\Dual\KNLMeansCL\KNLMeansCL.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\mvtools\libmvtools.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\nnedi3\libnnedi3.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\nnedi3\NNEDI3CL.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\Sangnom\libsangnom.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\scenechange\scenechange.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\SVPFlow\svpflow1_vs64.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\SVPFlow\svpflow2_vs64.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\TTempSmooth\TTempSmooth.dll", altsearchpath=True)
core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\nnedi3\vsznedi3.dll", altsearchpath=True)
# ref: http://avisynth.org.ru/mvtools/mvtools2.html#functions
# default is 400, less means interpolation will only happen when it will work well
ignore_threshold=140
# if n% of blocks change more than threshold then don't interpolate at all (default is 51%)
scene_change_percentage=15
dst_fps = display_fps
# Interpolating to fps higher than 60 is too CPU-expensive, smoothmotion can handle the rest.
# while (dst_fps > 60):
# dst_fps /= 2
if "video_in" in globals():
# realtime
clip = video_in
# Needed because clip FPS is missing
src_fps_num = int(container_fps * 1e8)
src_fps_den = int(1e8)
clip = core.std.AssumeFPS(clip, fpsnum = src_fps_num, fpsden = src_fps_den)
else:
# run with vspipe
clip = core.ffms2.Source(source=in_filename)
dst_fps=float(dst_fps)
# resolution in megapixels. 1080p ≈ 2MP, 720p ≈ 1MP
mpix = clip.width * clip.height / 1000000
# Skip interpolation for >1080p or 60 Hz content due to performance
if not (mpix > 2.5 or clip.fps_num/clip.fps_den > 59):
analParams = {
'overlap': 0,
'search': 3,
'truemotion': True,
#'chrome': True,
#'blksize':16,
#'searchparam':1
}
blockParams = {
'thscd1': ignore_threshold,
'thscd2': int(scene_change_percentage*255/100),
'mode': 3,
}
if mpix > 1.5:
# can't handle these on Full HD with Intel i5-2500k
# see the description of these parameters in http://avisynth.org.ru/mvtools/mvtools2.html#functions
analParams['search'] = 0
blockParams['mode'] = 0
quality = 'low'
else:
quality = 'high'
dst_fps_num = int(dst_fps * 1e4)
dst_fps_den = int(1e4)
print("Reflowing from {} fps to {} fps (quality={})".format(clip.fps_num/clip.fps_den,dst_fps_num/dst_fps_den,quality))
sup = core.mv.Super(clip, pel=2)
bvec = core.mv.Analyse(sup, isb=True, **analParams)
fvec = core.mv.Analyse(sup, isb=False, **analParams)
clip = core.mv.BlockFPS(clip, sup, bvec, fvec,
num=dst_fps_num, den=dst_fps_den,
**blockParams)
clip.set_output()
mpv.conf
:[VapourSynth-Motion-Interpolation]
vf=vapoursynth="C:\StaxRip\mpv.vpy":buffered-frames=4:concurrent-frames=32
profile-restore = copy
[extension.vpy]
demuxer-lavf-format = vapoursynth
mpv.exe --profile=VapourSynth-Motion-Interpolation --keep-open
fen dùng python ver mấy?Cái guide trên là dễ nhất rồi, bạn làm khó ở phần nào cứ nói mình sẽ xem cho. Thôi mình viết dịch qua và đơn giản hóa:
- Tải: https://github.com/staxrip/staxrip/releases/download/v2.13.0/StaxRip-v2.13.0-x64.7z
- Giải nén y chang vào đường dẫn sau, file phải y xì
C:\StaxRip\StaxRip.exe
- Mở My Computer, chuột phải chọn Properties -> Advanced -> Environment Settings tìm cứ thấy
PATH
thì nháy đúp vào chỉnh sửa rồi thêmC:\StaxRip\Apps\FrameServer\VapourSynth
như sau:- Tạo một file tên mpv.vpy tại
C:\StaxRip
và copy đoạn này vào:- Thêm cái này vào fileCode:import os, sys import vapoursynth core = vapoursynth.core sys.path.append(r"C:\StaxRip\Apps\Plugins\VS\Scripts") import importlib.machinery mvsfunc = importlib.machinery.SourceFileLoader('mvsfunc', r"C:\StaxRip\Apps\Plugins\VS\Scripts\mvsfunc.py").load_module() adjust = importlib.machinery.SourceFileLoader('adjust', r"C:\StaxRip\Apps\Plugins\VS\Scripts\adjust.py").load_module() havsfunc = importlib.machinery.SourceFileLoader('havsfunc', r"C:\StaxRip\Apps\Plugins\VS\Scripts\havsfunc.py").load_module() core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\AddGrain\AddGrain.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\AWarpSharp2\libawarpsharp2.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\CAS\CAS.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\CTMF\CTMF.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\Deblock\Deblock.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\EEDI2\EEDI2.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\EEDI3m\EEDI3m.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\Dual\flash3kyuu_deband\flash3kyuu_deband.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\FluxSmooth\libfluxsmooth.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\fmtconv\fmtconv.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\HQDN3D\libhqdn3d.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\Dual\KNLMeansCL\KNLMeansCL.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\mvtools\libmvtools.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\nnedi3\libnnedi3.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\nnedi3\NNEDI3CL.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\Sangnom\libsangnom.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\scenechange\scenechange.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\SVPFlow\svpflow1_vs64.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\SVPFlow\svpflow2_vs64.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\TTempSmooth\TTempSmooth.dll", altsearchpath=True) core.std.LoadPlugin(r"C:\StaxRip\Apps\Plugins\VS\nnedi3\vsznedi3.dll", altsearchpath=True) # ref: http://avisynth.org.ru/mvtools/mvtools2.html#functions # default is 400, less means interpolation will only happen when it will work well ignore_threshold=140 # if n% of blocks change more than threshold then don't interpolate at all (default is 51%) scene_change_percentage=15 dst_fps = display_fps # Interpolating to fps higher than 60 is too CPU-expensive, smoothmotion can handle the rest. # while (dst_fps > 60): # dst_fps /= 2 if "video_in" in globals(): # realtime clip = video_in # Needed because clip FPS is missing src_fps_num = int(container_fps * 1e8) src_fps_den = int(1e8) clip = core.std.AssumeFPS(clip, fpsnum = src_fps_num, fpsden = src_fps_den) else: # run with vspipe clip = core.ffms2.Source(source=in_filename) dst_fps=float(dst_fps) # resolution in megapixels. 1080p ≈ 2MP, 720p ≈ 1MP mpix = clip.width * clip.height / 1000000 # Skip interpolation for >1080p or 60 Hz content due to performance if not (mpix > 2.5 or clip.fps_num/clip.fps_den > 59): analParams = { 'overlap': 0, 'search': 3, 'truemotion': True, #'chrome': True, #'blksize':16, #'searchparam':1 } blockParams = { 'thscd1': ignore_threshold, 'thscd2': int(scene_change_percentage*255/100), 'mode': 3, } if mpix > 1.5: # can't handle these on Full HD with Intel i5-2500k # see the description of these parameters in http://avisynth.org.ru/mvtools/mvtools2.html#functions analParams['search'] = 0 blockParams['mode'] = 0 quality = 'low' else: quality = 'high' dst_fps_num = int(dst_fps * 1e4) dst_fps_den = int(1e4) print("Reflowing from {} fps to {} fps (quality={})".format(clip.fps_num/clip.fps_den,dst_fps_num/dst_fps_den,quality)) sup = core.mv.Super(clip, pel=2) bvec = core.mv.Analyse(sup, isb=True, **analParams) fvec = core.mv.Analyse(sup, isb=False, **analParams) clip = core.mv.BlockFPS(clip, sup, bvec, fvec, num=dst_fps_num, den=dst_fps_den, **blockParams) clip.set_output()
mpv.conf
:
- Tạo file bat ở folder chứa MPV có nội dung như sau, save lại rồi mở lên:Code:[VapourSynth-Motion-Interpolation] vf=vapoursynth="C:\StaxRip\mpv.vpy":buffered-frames=4:concurrent-frames=32 profile-restore = copy [extension.vpy] demuxer-lavf-format = vapoursynth
Code:mpv.exe --profile=VapourSynth-Motion-Interpolation --keep-open
Thế là xong, kéo thả video vào xem sẽ được 60 FPS như SVP. Mình viết đơn giản và chi tiết hết mức có thể rồi, cố gắng làm được nhé.
Nếu càng nhiều bạn test thử mà thành công thì mình cho lên #1.
Python được gói sẵn cùng cái file tải về rồi mà, không cần cài gì.fen dùng python ver mấy?
Đã làm và thành cmn côngPython được gói sẵn cùng cái file tải về rồi mà, không cần cài gì.
Tạo file shortcut rồi pin vào Taskbar xem:Đã làm và thành cmn công
Có cách nào ko cần dùng file bat ko fen?
mpv.exe
thành mpv.exe --profile=VapourSynth-Motion-Interpolation --keep-open
là xongclick đúp mở phim thẳng bằng mpv luôn ấy fenTạo file shortcut rồi pin vào Taskbar xem:
- Chuột phải vào mpv.exe
- Create Shortcut
- Rồi Properties vào cái shortcut, sửa đoạn
mpv.exe
thànhmpv.exe --profile=VapourSynth-Motion-Interpolation --keep-open
là xong
Kéo ra Desktop dùng, hoặc kéo và Quick Launch
Ngoài ra lưu ý chút, một khi đã thành công rồi thì thử thêmĐã làm và thành cmn công
Có cách nào ko cần dùng file bat ko fen? Em mở phim thẳng bằng mpv luôn chứ ko kéo thả khổ dâm
hwdec=auto
hoặc hwdec=auto-safe
vào đầu file mpv.conf nếu chưa có để cải thiện hiệu năng và bắt MPV dùng GPU chạy video, mặc định MPV nó dùng CPU.Thì thêm ở phần này, sửa thànhclick đúp mở phim thẳng bằng mpv luôn ấy fen
#[VapourSynth-Motion-Interpolation]
vf=vapoursynth="C:\StaxRip\mpv.vpy":buffered-frames=4:concurrent-frames=32
profile-restore = copy
[VapourSynth-Motion-Interpolation]
profile-desc=Force SVP if FPS lower than 60
profile-cond=p["container-fps"] < 60
vf=vapoursynth="C:\StaxRip\mpv.vpy":buffered-frames=4:concurrent-frames=32
profile-restore = copy
em switch profile bằng keybind được rồi fenCó thể thử:
Code:[VapourSynth-Motion-Interpolation] profile-desc=Force SVP if FPS lower than 60 profile-cond=p["container-fps"] < 60 vf=vapoursynth="C:\StaxRip\mpv.vpy":buffered-frames=4:concurrent-frames=32 profile-restore = copy
Cái này là để MPV cứ thấy video nào nhỏ hơn 60 FPS thì nó ép bằng SVP.
Mình không rành vụ profile-cond nên nếu viết sai code nó sẽ không hoạt động, nếu thấy vậy cứ xóa đi.
Đấy nhiều khi phải sáng tạo như vậy, chứ phang nó mặc định tới khi xem Youtube lại ăn hành.em switch profile bằng keybind được rồi fen