Credit Andrew - fix vorbis audio which was scratchy and ensure aging plugin does...
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / pluginclient.C
index 94a208844658668db4048770b28b1eefb3044843..d31b4b002c787bfbee824f252d40e504ebc29ed6 100644 (file)
@@ -133,7 +133,27 @@ PluginClientWindow::PluginClientWindow(PluginClient *client,
        client->window_x /* - w / 2 */, client->window_y /* - h / 2 */,
        w, h, min_w, min_h, allow_resize, 0, 1)
 {
+       char title[BCTEXTLEN];
+
        this->client = client;
+
+// *** CONTEXT_HELP ***
+       if(client) {
+               strcpy(title, client->plugin_title());
+               if(! strcmp(title, "Overlay")) {
+                       // "Overlay" plugin title is ambiguous
+                       if(client->is_audio()) strcat(title, " \\(Audio\\)");
+                       if(client->is_video()) strcat(title, " \\(Video\\)");
+               }
+               if(client->server->is_ffmpeg()) {
+                       // FFmpeg plugins can be audio or video
+                       if(client->is_audio())
+                               strcpy(title, "FFmpeg Audio Plugins");
+                       if(client->is_video())
+                               strcpy(title, "FFmpeg Video Plugins");
+               }
+               context_help_set_keyword(title);
+       }
 }
 
 PluginClientWindow::PluginClientWindow(const char *title,
@@ -141,6 +161,8 @@ PluginClientWindow::PluginClientWindow(const char *title,
  : BC_Window(title, x, y, w, h, min_w, min_h, allow_resize, 0, 1)
 {
        this->client = 0;
+// *** CONTEXT_HELP ***
+       context_help_set_keyword(title);
 }
 
 PluginClientWindow::~PluginClientWindow()
@@ -939,8 +961,7 @@ double PluginClient::get_project_framerate()
 
 const char *PluginClient::get_source_path()
 {
-       EDL *edl = get_edl();
-       Plugin *plugin = edl->tracks->plugin_exists(server->plugin_id);
+       Plugin *plugin = server->edl->tracks->plugin_exists(server->plugin_id);
        int64_t source_position = plugin->startproject;
        Edit *edit = plugin->track->edits->editof(source_position,PLAY_FORWARD,0);
        Indexable *indexable = edit ? edit->get_source() : 0;