make subtitle index optional

This commit is contained in:
simon 2022-02-11 13:36:36 +07:00
parent 1abe4fb4d6
commit 08f5248e7a
No known key found for this signature in database
GPG Key ID: 2C15AA5E89985DD4
4 changed files with 21 additions and 2 deletions

View File

@ -25,6 +25,7 @@
"add_thumbnail": false, "add_thumbnail": false,
"subtitle": false, "subtitle": false,
"subtitle_source": false, "subtitle_source": false,
"subtitle_index": false,
"throttledratelimit": false, "throttledratelimit": false,
"integrate_ryd": false "integrate_ryd": false
}, },

View File

@ -74,6 +74,12 @@ class ApplicationSettingsForm(forms.Form):
("user", "only download uploader"), ("user", "only download uploader"),
] ]
SUBTITLE_INDEX_CHOICES = [
("", "-- change subtitle index settings --"),
("0", "disable subtitle index"),
("1", "enable subtitle index"),
]
subscriptions_channel_size = forms.IntegerField(required=False) subscriptions_channel_size = forms.IntegerField(required=False)
downloads_limit_count = forms.IntegerField(required=False) downloads_limit_count = forms.IntegerField(required=False)
downloads_limit_speed = forms.IntegerField(required=False) downloads_limit_speed = forms.IntegerField(required=False)
@ -91,6 +97,9 @@ class ApplicationSettingsForm(forms.Form):
downloads_subtitle_source = forms.ChoiceField( downloads_subtitle_source = forms.ChoiceField(
widget=forms.Select, choices=SUBTITLE_SOURCE_CHOICES, required=False widget=forms.Select, choices=SUBTITLE_SOURCE_CHOICES, required=False
) )
downloads_subtitle_index = forms.ChoiceField(
widget=forms.Select, choices=SUBTITLE_INDEX_CHOICES, required=False
)
downloads_integrate_ryd = forms.ChoiceField( downloads_integrate_ryd = forms.ChoiceField(
widget=forms.Select, choices=RYD_CHOICES, required=False widget=forms.Select, choices=RYD_CHOICES, required=False
) )

View File

@ -121,8 +121,9 @@ class YoutubeSubtitle:
parser.process() parser.process()
subtitle_str = parser.get_subtitle_str() subtitle_str = parser.get_subtitle_str()
self._write_subtitle_file(dest_path, subtitle_str) self._write_subtitle_file(dest_path, subtitle_str)
query_str = parser.create_bulk_import(self.video, source) if self.video.config["downloads"]["subtitle_index"]:
self._index_subtitle(query_str) query_str = parser.create_bulk_import(self.video, source)
self._index_subtitle(query_str)
@staticmethod @staticmethod
def _write_subtitle_file(dest_path, subtitle_str): def _write_subtitle_file(dest_path, subtitle_str):

View File

@ -94,6 +94,9 @@
<i>Embed thumbnail into the mediafile.</i><br> <i>Embed thumbnail into the mediafile.</i><br>
{{ app_form.downloads_add_thumbnail }} {{ app_form.downloads_add_thumbnail }}
</div> </div>
</div>
<div class="settings-group">
<h2 id="format">Subtitles</h2>
<div class="settings-item"> <div class="settings-item">
<p>Subtitles download setting: <span class="settings-current">{{ config.downloads.subtitle }}</span><br> <p>Subtitles download setting: <span class="settings-current">{{ config.downloads.subtitle }}</span><br>
<i>Choose which subtitles to download, add comma separated two letter language ISO code,<br> <i>Choose which subtitles to download, add comma separated two letter language ISO code,<br>
@ -105,6 +108,11 @@
<i>Download only user generated, or also less accurate auto generated subtitles.</i><br> <i>Download only user generated, or also less accurate auto generated subtitles.</i><br>
{{ app_form.downloads_subtitle_source }} {{ app_form.downloads_subtitle_source }}
</div> </div>
<div class="settings-item">
<p>Index and make subtitles searchable: <span class="settings-current">{{ config.downloads.subtitle_index }}</span></p>
<i>Store subtitle lines in Elasticsearch. Not recommended for low-end hardware.</i><br>
{{ app_form.downloads_subtitle_index }}
</div>
</div> </div>
<div class="settings-group"> <div class="settings-group">
<h2 id="integrations">Integrations</h2> <h2 id="integrations">Integrations</h2>