X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fformattools.C;h=60d0b6c2905d5dce9d1295f7151dacdbcf18ebd8;hb=7dd4a71f0c957c2d95ae83fe789076d7445ecb60;hp=4f6580d4fa21628ed578a7059e2f343ebf932462;hpb=c66c09b32c6f46ef67550a6c63ba7f9d1d46628d;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/formattools.C b/cinelerra-5.1/cinelerra/formattools.C index 4f6580d4..60d0b6c2 100644 --- a/cinelerra-5.1/cinelerra/formattools.C +++ b/cinelerra-5.1/cinelerra/formattools.C @@ -62,9 +62,7 @@ FormatTools::FormatTools(MWindow *mwindow, format_button = 0; format_text = 0; audio_title = 0; - audio_switch = 0; video_title = 0; - video_switch = 0; channels_title = 0; channels_button = 0; multiple_files = 0; @@ -105,19 +103,17 @@ SET_TRACE if(channels_tumbler) delete channels_tumbler; } -void FormatTools::create_objects(int &init_x, - int &init_y, - int do_audio, // Include support for audio - int do_video, // Include support for video - int prompt_audio, // Include checkbox for audio - int prompt_video, - int prompt_audio_channels, - int prompt_video_compression, - const char *locked_compressor, - int recording, - int *strategy, - int brender, - int horizontal_layout) +void FormatTools::create_objects( + int &init_x, int &init_y, + int do_audio, int do_video, // Include support for audio, video + int prompt_audio, int prompt_video, // Include checkbox for audio, video + int prompt_audio_channels, + int prompt_video_compression, + const char *locked_compressor, + int recording, + int *strategy, + int brender, + int horizontal_layout) { int x = init_x; int y = init_y; @@ -339,17 +335,17 @@ void FormatTools::update_format() { if( do_audio && prompt_audio && audio_switch ) { audio_switch->update(asset->audio_data); - if( !asset->audio_data ) - audio_switch->disable(); - else + if( File::renders_audio(asset) ) audio_switch->enable(); + else + audio_switch->disable(); } if( do_video && prompt_video && video_switch ) { video_switch->update(asset->video_data); - if( !asset->video_data ) - video_switch->disable(); - else + if( File::renders_video(asset) ) video_switch->enable(); + else + video_switch->disable(); } if( asset->format == FILE_FFMPEG ) { ffmpeg_type->show(); @@ -453,11 +449,8 @@ void FormatTools::update(Asset *asset, int *strategy) if(path_textbox) path_textbox->update(asset->path); - format_text->update(File::formattostr(plugindb, asset->format)); - if(do_audio && prompt_audio && audio_switch) - audio_switch->update(asset->audio_data); - if(do_video && prompt_video && video_switch) - video_switch->update(asset->video_data); + format_text->update(File::formattostr(asset->format)); + update_format(); if(strategy) { multiple_files->update(strategy); @@ -775,7 +768,7 @@ int FormatVideo::handle_event() FormatFormat::FormatFormat(int x, int y, FormatTools *format) - : FormatPopup(format->plugindb, x, y, format->use_brender) + : FormatPopup(x, y, format->do_audio, format->do_video, format->use_brender) { this->format = format; } @@ -788,17 +781,18 @@ int FormatFormat::handle_event() { BC_ListBoxItem *selection = get_selection(0, 0); if( selection ) { - int new_format = File::strtoformat(format->plugindb, get_selection(0, 0)->get_text()); + int new_format = File::strtoformat(get_selection(0, 0)->get_text()); // if(new_format != format->asset->format) { Asset *asset = format->asset; asset->format = new_format; - asset->audio_data = File::supports_audio(asset->format); - asset->video_data = File::supports_video(asset->format); + asset->audio_data = File::renders_audio(asset); + asset->video_data = File::renders_video(asset); asset->ff_audio_options[0] = 0; asset->ff_video_options[0] = 0; format->format_text->update(selection->get_text()); - format->update_extension(); + if( !format->use_brender ) + format->update_extension(); format->close_format_windows(); if (format->path_recent) format->path_recent-> load_items(File::formattostr(format->asset->format));