美文网首页
给你的mpv添加切换左右声道的功能

给你的mpv添加切换左右声道的功能

作者: mudssky | 来源:发表于2021-05-23 00:51 被阅读0次

    使用mpv的用户脚本可以实现这个功能。

    switch-audio-channel.js,具体可以到我的脚本仓库下载https://github.com/mudssky/mpv-config

    这个插件主要是个人在听一些asmr音频时萌发的需求。

    因为很多情景下都是对你单边耳朵进行操作的,有时候就一直只攻击你的一只耳朵,这时候你可能就会想把左耳朵和右耳朵切换一下就好了,最简单的方法就是把耳机左右耳换一下。但是有了这个插件,你就节省了这个操作。

    还有一个神奇的双耳mix模式,就是两个耳朵都分别混音了左声道和右声道。但是注意,这个模式并没有立体声的效果。两边耳朵都是左声道和右声道的mix,但是结果是失去了立体声的效果。(左右都是100%的音量mix,因此看左右声道一样的视频,比如一般的动漫你会感觉声音变大了。)

    个人也不是很清楚其中的原理。

    所以如果你想体验两只耳朵被攻击的感觉,建议开两个mpv,一个切换左右声道,同时播放就是立体声了。

    feature

    • 切换左声道和右声道
    • 将左声道和右声道都设置为左声道,或者都设置为右声道
    • 将左右声道,变成原来左右声道的mix

    快捷键说明

    快捷键很方便记忆,

    • t toggle
    • l left
    • r right
    • R reset
    键位 作用
    alt+t 切换左右声道
    alt+l 左右声道都播放左声道
    alt+r 左右声道都播放右声道
    alt+a 左右声道mix模式
    shift+alt+r 重置成立体声双声道
    "use strict";
    ;
    (function (mp) {
        function switchFRtoFL() {
            var afstr = 'lavfi=[pan=stereo|c0=c1|c1=c0]';
            mp.set_property('af', afstr);
            mp.osd_message('swith FR and LR.');
            mp.msg.debug(afstr);
        }
        function switchAllFR() {
            var afstr = 'lavfi=[pan=stereo|c0=c1|c1=c1]';
            mp.set_property('af', afstr);
            mp.osd_message('change all channels to FR.');
            mp.msg.debug(afstr);
        }
        function switchAllFL() {
            var afstr = 'lavfi=[pan=stereo|c0=c0|c1=c0]';
            mp.set_property('af', afstr);
            mp.osd_message('change all channels to LR');
            mp.msg.debug(afstr);
        }
        function mixAll() {
            var afstr = 'lavfi=[pan=stereo|FL=FL+FR|FR=FL+FR]';
            mp.set_property('af', afstr);
            mp.osd_message('change all channels to all');
            mp.msg.debug(afstr);
        }
        function resetAF() {
            var afstr = 'lavfi=[pan=stereo|c0=c0|c1=c1]';
            mp.set_property('af', afstr);
            mp.osd_message('reset AF.');
            mp.msg.debug(afstr);
        }
        mp.add_key_binding('alt+t', 'switchFRtoFL', switchFRtoFL);
        mp.add_key_binding('alt+r', 'switchAllFR', switchAllFR);
        mp.add_key_binding('alt+l', 'switchAllFL:', switchAllFL);
        mp.add_key_binding('alt+a', 'mixAll', mixAll);
        mp.add_key_binding('shift+alt+r', 'resetAF', resetAF);
    })(mp);
    
    

    相关文章

      网友评论

          本文标题:给你的mpv添加切换左右声道的功能

          本文链接:https://www.haomeiwen.com/subject/gorajltx.html