mirror of https://github.com/odrling/Aegisub
Made the relevant audio options reload audio.
Originally committed to SVN as r1055.
This commit is contained in:
parent
6f6f53f1b2
commit
161f07f6be
|
@ -769,7 +769,7 @@ void AudioDisplay::SetScale(float _scale) {
|
||||||
|
|
||||||
//////////////////
|
//////////////////
|
||||||
// Load from file
|
// Load from file
|
||||||
void AudioDisplay::SetFile(wxString file, VideoProvider *vprovider) {
|
void AudioDisplay::SetFile(wxString file, VideoProvider *vproviderLOL) {
|
||||||
// Unload
|
// Unload
|
||||||
if (file.IsEmpty()) {
|
if (file.IsEmpty()) {
|
||||||
if (player) player->CloseStream();
|
if (player) player->CloseStream();
|
||||||
|
@ -830,6 +830,13 @@ void AudioDisplay::SetFromVideo() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
////////////////
|
||||||
|
// Reload audio
|
||||||
|
void AudioDisplay::Reload() {
|
||||||
|
if (provider) SetFile(provider->GetFilename());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
////////////////////
|
////////////////////
|
||||||
// Update scrollbar
|
// Update scrollbar
|
||||||
void AudioDisplay::UpdateScrollbar() {
|
void AudioDisplay::UpdateScrollbar() {
|
||||||
|
|
|
@ -144,17 +144,28 @@ public:
|
||||||
AudioDisplay(wxWindow *parent);
|
AudioDisplay(wxWindow *parent);
|
||||||
~AudioDisplay();
|
~AudioDisplay();
|
||||||
|
|
||||||
void AddLead(bool in,bool out);
|
|
||||||
void UpdateImage(bool weak=false);
|
void UpdateImage(bool weak=false);
|
||||||
void Update();
|
void Update();
|
||||||
void RecreateImage();
|
void RecreateImage();
|
||||||
void SetPosition(int pos);
|
void SetPosition(int pos);
|
||||||
void SetSamplesPercent(int percent,bool update=true,float pivot=0.5);
|
void SetSamplesPercent(int percent,bool update=true,float pivot=0.5);
|
||||||
void SetScale(float scale);
|
void SetScale(float scale);
|
||||||
void SetFile(wxString file,VideoProvider *vprovider=NULL);
|
|
||||||
void SetFromVideo();
|
|
||||||
void UpdateScrollbar();
|
void UpdateScrollbar();
|
||||||
void SetDialogue(SubtitlesGrid *_grid=NULL,AssDialogue *diag=NULL,int n=-1);
|
void SetDialogue(SubtitlesGrid *_grid=NULL,AssDialogue *diag=NULL,int n=-1);
|
||||||
|
void MakeDialogueVisible(bool force=false);
|
||||||
|
void ChangeLine(int delta);
|
||||||
|
void Next();
|
||||||
|
void Prev();
|
||||||
|
|
||||||
|
void CommitChanges(bool nextLine=false);
|
||||||
|
void AddLead(bool in,bool out);
|
||||||
|
|
||||||
|
void SetFile(wxString file,VideoProvider *vprovider=NULL);
|
||||||
|
void SetFromVideo();
|
||||||
|
void Reload();
|
||||||
|
|
||||||
|
void Play(int start,int end);
|
||||||
|
void Stop();
|
||||||
|
|
||||||
__int64 GetSampleAtX(int x);
|
__int64 GetSampleAtX(int x);
|
||||||
int GetXAtSample(__int64 n);
|
int GetXAtSample(__int64 n);
|
||||||
|
@ -164,14 +175,6 @@ public:
|
||||||
__int64 GetSampleAtMS(__int64 ms);
|
__int64 GetSampleAtMS(__int64 ms);
|
||||||
int GetSyllableAtX(int x);
|
int GetSyllableAtX(int x);
|
||||||
|
|
||||||
void MakeDialogueVisible(bool force=false);
|
|
||||||
void CommitChanges(bool nextLine=false);
|
|
||||||
void ChangeLine(int delta);
|
|
||||||
void Next();
|
|
||||||
void Prev();
|
|
||||||
|
|
||||||
void Play(int start,int end);
|
|
||||||
void Stop();
|
|
||||||
void GetTimesDialogue(int &start,int &end);
|
void GetTimesDialogue(int &start,int &end);
|
||||||
void GetTimesSelection(int &start,int &end);
|
void GetTimesSelection(int &start,int &end);
|
||||||
void SetSelection(int start, int end);
|
void SetSelection(int start, int end);
|
||||||
|
|
|
@ -701,9 +701,10 @@ void DialogOptions::WriteToOptions(bool justApply) {
|
||||||
bool mustRestart = false;
|
bool mustRestart = false;
|
||||||
bool editBox = false;
|
bool editBox = false;
|
||||||
bool grid = false;
|
bool grid = false;
|
||||||
bool videoRestart = false;
|
|
||||||
bool video = false;
|
bool video = false;
|
||||||
bool audio = false;
|
bool audio = false;
|
||||||
|
bool videoReload = false;
|
||||||
|
bool audioReload = false;
|
||||||
|
|
||||||
// For each bound item
|
// For each bound item
|
||||||
for (unsigned int i=0;i<binds.size();i++) {
|
for (unsigned int i=0;i<binds.size();i++) {
|
||||||
|
@ -775,8 +776,9 @@ void DialogOptions::WriteToOptions(bool justApply) {
|
||||||
if (type == MOD_EDIT_BOX) editBox = true;
|
if (type == MOD_EDIT_BOX) editBox = true;
|
||||||
if (type == MOD_GRID) grid = true;
|
if (type == MOD_GRID) grid = true;
|
||||||
if (type == MOD_VIDEO) video = true;
|
if (type == MOD_VIDEO) video = true;
|
||||||
if (type == MOD_VIDEO_RELOAD) videoRestart = true;
|
if (type == MOD_VIDEO_RELOAD) videoReload = true;
|
||||||
if (type == MOD_AUDIO) audio = true;
|
if (type == MOD_AUDIO) audio = true;
|
||||||
|
if (type == MOD_AUDIO_RELOAD) audioReload = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -811,7 +813,7 @@ void DialogOptions::WriteToOptions(bool justApply) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Video
|
// Video
|
||||||
if (videoRestart) {
|
if (videoReload) {
|
||||||
VideoContext::Get()->Reload();
|
VideoContext::Get()->Reload();
|
||||||
}
|
}
|
||||||
else if (video) {
|
else if (video) {
|
||||||
|
@ -820,7 +822,11 @@ void DialogOptions::WriteToOptions(bool justApply) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Audio
|
// Audio
|
||||||
if (audio) {
|
if (audioReload) {
|
||||||
|
FrameMain *frame = (FrameMain*) GetParent();
|
||||||
|
frame->audioBox->audioDisplay->Reload();
|
||||||
|
}
|
||||||
|
else if (audio) {
|
||||||
FrameMain *frame = (FrameMain*) GetParent();
|
FrameMain *frame = (FrameMain*) GetParent();
|
||||||
frame->audioBox->audioDisplay->RecreateImage();
|
frame->audioBox->audioDisplay->RecreateImage();
|
||||||
frame->audioBox->audioDisplay->Refresh();
|
frame->audioBox->audioDisplay->Refresh();
|
||||||
|
|
|
@ -149,10 +149,9 @@ void OptionsManager::LoadDefaults() {
|
||||||
SetBool(_T("Video Dummy Pattern"), false);
|
SetBool(_T("Video Dummy Pattern"), false);
|
||||||
|
|
||||||
// Video Provider (Advanced)
|
// Video Provider (Advanced)
|
||||||
SetModificationType(MOD_RESTART);
|
|
||||||
SetBool(_T("Threaded Video"),false);
|
|
||||||
SetInt(_T("Avisynth MemoryMax"),64);
|
|
||||||
SetModificationType(MOD_VIDEO_RELOAD);
|
SetModificationType(MOD_VIDEO_RELOAD);
|
||||||
|
SetInt(_T("Avisynth MemoryMax"),64);
|
||||||
|
SetBool(_T("Threaded Video"),false);
|
||||||
SetText(_T("Video Provider"),_T("Avisynth"));
|
SetText(_T("Video Provider"),_T("Avisynth"));
|
||||||
SetBool(_T("Allow Ancient Avisynth"),false);
|
SetBool(_T("Allow Ancient Avisynth"),false);
|
||||||
SetText(_T("Avisynth subs renderer"),_T("vsfilter"));
|
SetText(_T("Avisynth subs renderer"),_T("vsfilter"));
|
||||||
|
@ -180,7 +179,7 @@ void OptionsManager::LoadDefaults() {
|
||||||
SetInt(_T("Audio Inactive Lines Display Mode"),1);
|
SetInt(_T("Audio Inactive Lines Display Mode"),1);
|
||||||
|
|
||||||
// Audio Advanced
|
// Audio Advanced
|
||||||
SetModificationType(MOD_AUTOMATIC);
|
SetModificationType(MOD_AUDIO_RELOAD);
|
||||||
SetInt(_T("Audio Cache"),1);
|
SetInt(_T("Audio Cache"),1);
|
||||||
SetText(_T("Audio Provider"),_T("avisynth"));
|
SetText(_T("Audio Provider"),_T("avisynth"));
|
||||||
SetText(_T("Audio Downmixer"),_T("ConvertToMono"));
|
SetText(_T("Audio Downmixer"),_T("ConvertToMono"));
|
||||||
|
|
|
@ -54,7 +54,8 @@ enum ModType {
|
||||||
MOD_GRID,
|
MOD_GRID,
|
||||||
MOD_VIDEO,
|
MOD_VIDEO,
|
||||||
MOD_VIDEO_RELOAD,
|
MOD_VIDEO_RELOAD,
|
||||||
MOD_AUDIO
|
MOD_AUDIO,
|
||||||
|
MOD_AUDIO_RELOAD
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -228,6 +228,7 @@ void VideoContext::UnloadTexture() {
|
||||||
void VideoContext::SetVideo(const wxString &filename) {
|
void VideoContext::SetVideo(const wxString &filename) {
|
||||||
// Unload video
|
// Unload video
|
||||||
Reset();
|
Reset();
|
||||||
|
threaded = Options.AsBool(_T("Threaded Video"));
|
||||||
|
|
||||||
// Load video
|
// Load video
|
||||||
if (!filename.IsEmpty()) {
|
if (!filename.IsEmpty()) {
|
||||||
|
|
Loading…
Reference in New Issue