示例#1
0
    def run(self) -> None:
        assert self.file.a_src
        assert self.file.a_enc_cut

        v_encoder = X265Encoder('x265', 'settings/x265_settings_BD_NCOP1v09')

        a_extracters = [
            BasicTool(
                'eac3to',
                [JPBD_NCOP2.path.to_str(),
                 '2:', self.file.a_src.format(2).to_str()]
            )
        ]

        a_cutters = [AudioCutter(self.file, track=2)]
        a_encoders = [FlacEncoder(self.file, track=2)]

        muxer = Mux(
            self.file,
            streams=(
                VideoStream(self.file.name_clip_output, 'HEVC BDRip by LightArrowsEXE@Kaleido', JAPANESE),
                AudioStream(self.file.a_enc_cut.format(1), 'FLAC 2.0', JAPANESE),
                None
            )
        )

        config = RunnerConfig(v_encoder, None, a_extracters, a_cutters, a_encoders, muxer)

        runner = SelfRunner(self.clip, self.file, config)
        runner.run()
        runner.do_cleanup()
示例#2
0
FONTDIR = '5-toubun_no_Hanayome_subs/_fonts'

ENC_LOSS = LosslessEncoder('nvencc',
                           Path('gotoubun_common/nvenc_settings'),
                           progress_update=None)

ENCODER = X265Encoder(
    'x265',
    Path('gotoubun_common/x265_settings'),
    progress_update=lambda v, e: print(
        f"\rVapourSynth: {v}/{e} ~ {100 * v // e}% || Encoder: ", end=""))

A_EXTRACTER = BasicTool(
    'eac3to',
    [JPBD.src, '2:', JPBD.a_src.format(1), '-log=NUL'])
A_CUTTER = AudioCutter(JPBD, track=1)
A_ENCODER = AudioEncoder('qaac',
                         Path('gotoubun_common/qaac_settings'),
                         JPBD,
                         track=1)


class Filtering():
    def main(self) -> vs.VideoNode:
        """Vapoursynth filtering"""
        src = JPBD.clip_cut
        src = depth(src, 16)
        src_cru = WEB_CRU.clip_cut
        src_aod = WEB_AOD.clip_cut

        # Dehardsubbing using .ass file