diff --git a/rip-py/rip.py b/rip-py/rip.py index fedc65f..93a520a 100755 --- a/rip-py/rip.py +++ b/rip-py/rip.py @@ -64,7 +64,7 @@ def _get_audio_map(title=None, mpv_output=None, device=None): @with_fifo def _rip_title(title, output_dir, fifo_path, device=None, media_type=None, - keep_audio=False): + keep_audio=False, quality=18): out_file = os.path.join(output_dir, '{}.mkv'.format(title)) mpv_cmd = ['mpv', '--quiet', '--stream-dump={}'.format(fifo_path), @@ -82,7 +82,7 @@ def _rip_title(title, output_dir, fifo_path, device=None, media_type=None, #'-c:a', 'flac', '-c:a', 'copy', '-c:v', 'h264', - '-crf', '18', + '-crf', '{}'.format(quality), '-pix_fmt', 'yuv420p', #'-x264-params', 'keyint=240:min-keyint=20', '-preset:v', 'slower', @@ -192,11 +192,12 @@ def _get_dvd_titles(device=None): @click.option('-d', '--device', type=DEVICE_OR_DIRECTORY_TYPE) @click.option('--media-type', type=click.Choice(['film', 'animation'])) @click.option('--keep-audio', is_flag=True) -def all(output_dir, device=None, media_type=None, keep_audio=False): +@click.option('--quality', type=click.INT) +def all(output_dir, device=None, media_type=None, keep_audio=False, quality=18): titles = _get_dvd_titles(device=device) for title in range(0, titles): _rip_title(title, output_dir, device=device, media_type=media_type, - keep_audio=keep_audio) + keep_audio=keep_audio, quality=quality) @cli.command() @@ -205,9 +206,11 @@ def all(output_dir, device=None, media_type=None, keep_audio=False): @click.option('-d', '--device', type=DEVICE_OR_DIRECTORY_TYPE) @click.option('--media-type', type=click.Choice(['film', 'animation'])) @click.option('--keep-audio', is_flag=True) -def single(title, output_dir, device=None, media_type=None, keep_audio=False): +@click.option('--quality', type=click.INT) +def single(title, output_dir, device=None, media_type=None, keep_audio=False, + quality=18): _rip_title(title, output_dir, device=device, media_type=media_type, - keep_audio=keep_audio) + keep_audio=keep_audio, quality=quality) @cli.command('get-chapters')