Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Open VTT and media file from plugin

オープン
#263 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
25/100
issue の種類
機能追加
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
csharp
領域
desktop

調査の方向性

まず、Main.OpenSubtitle、Main.SetSubtitle、Settings.RecentFiles、VideoPlayer.Initialize 周辺のプラグイン API の使用箇所を読みます。メニューから字幕とメディアを開いたときに、最近使ったファイル、保存先、再起動状態がどのように更新されるかを追跡します。プラグインが意図された API を通じて両方のファイル種別を開け、正しいファイルが保持され、再度開かれ、保存との関連付けが維持されれば完了です。

索引モデルが issue の本文から書いたものです。

説明

The first part of the problem that I'm running in to is opening the VTT (web based) in the app. Since Main.OpenSubtitle is hidden by the protection level I'm using Main.SetSubtitle. It opens just fine but when I go to save it seems to go to the latest entry in the Settings.RecentFiles. I've added my file(s) to the RecentFiles (and saving settings) but they don't display in the 'Reopen' menu and are lost when closing the app. Also, when the app is closed and restarted it reverts back to the last file opened from the menus.

Is there something I'm missing? Is there something in the plugin API that I should be using? I've also tried to change the protection level in SubtitleEdit source code to public but intellisense didn't pick up on it so it's unavailable. I probably have to compile and reference it but I'd like to do this the way it was intended rather than a source code change.

Second part is opening the media files (usually MP3 or WAV). I can't find any other way so I find the player control in Main and use VideoPlayer.Initialize to load the file. Seems to be the same issue (protection level).

Bottom line: how can I open files (subtitle and media) in a way that is consistent with opening the dialog box from the menu?

This code opens the MP3 file in the player but does not reopen after closing the app:
objVideoPlayer = (Nikse.SubtitleEdit.Controls.VideoPlayerContainer)objVP1s[0];
if (objVideoPlayer.VideoPlayer != null)
{
objVideoPlayer.VideoPlayer.Initialize(objVideoPlayer, strAudioFileName, EH1, EH2);
_parentForm.VideoAudioTrackNumber = 0;
}

This opens a VTT file but also does not reopen when the app is restarted nor will the correct file be written to when the save button is clicked:
Nikse.SubtitleEdit.Core.Common.Subtitle _subtitle = new Nikse.SubtitleEdit.Core.Common.Subtitle();
Encoding objEnc = Encoding.UTF8;
Nikse.SubtitleEdit.Core.Common.Subtitle objNEWST = new Core.Common.Subtitle();
_subtitle.LoadSubtitle(strTempVTTFileName, out objEnc, Encoding.UTF8);

主要言語
C#
スター
137
フォーク
48
平均マージ
5分
マージ済み PR(30日)
6

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

SubtitleEdit/plugins のほかの issue

SubtitleEdit/plugins の issue をすべて見る

似ている issue

C# の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。