rework histogram_bezier, init wm icon set_icon(gg), update de.po+msg/txt
[goodguy/history.git] / cinelerra-5.1 / cinelerra / bdcreate.C
index 3ed07e48d70f96671535c9856f0362425b06c808..27f728ad6dc80c1a21d20723d5eec697edf30a34 100644 (file)
@@ -226,12 +226,12 @@ int CreateBD_Thread::create_bd_jobs(ArrayList<BatchRenderJob*> *jobs, const char
        fprintf(fp,"#!/bin/bash -ex\n");
        fprintf(fp,"PATH=$PATH:%s\n",exec_path);
        fprintf(fp,"mkdir -p $1/udfs\n");
-       fprintf(fp,"sz=`du -sb $1/bd.m2ts | sed -e 's/[ \t].*//'`\n");
+       fprintf(fp,"sz=`du -cb $1/bd.m2ts* | tail -1 | sed -e 's/[ \t].*//'`\n");
        fprintf(fp,"blks=$((sz/2048 + 4096))\n");
        fprintf(fp,"rm -f %s\n", udfs);
-       fprintf(fp,"mkudffs %s $blks\n", udfs);
+       fprintf(fp,"mkudffs -b 2048 %s $blks\n", udfs);
        fprintf(fp,"mount %s%s\n", mopts, mntpt);
-       fprintf(fp,"bdwrite %s $1/bd.m2ts\n",mntpt);
+       fprintf(fp,"bdwrite %s $1/bd.m2ts*\n",mntpt);
        fprintf(fp,"umount %s\n",mntpt);
        if( is_usr_mnt )
                fprintf(fp,"mv -f %s $1/bd.udfs\n", udfs);
@@ -242,24 +242,13 @@ int CreateBD_Thread::create_bd_jobs(ArrayList<BatchRenderJob*> *jobs, const char
        fprintf(fp,"\n");
        fclose(fp);
 
-       if( use_wide_audio ) {
-               session->audio_channels = session->audio_tracks = BD_WIDE_CHANNELS;
-               session->achannel_positions[0] = 90;
-               session->achannel_positions[1] = 150;
-               session->achannel_positions[2] = 30;
-               session->achannel_positions[3] = 210;
-               session->achannel_positions[4] = 330;
-               session->achannel_positions[5] = 270;
-               if( edl->tracks->recordable_audio_tracks() == BD_WIDE_CHANNELS )
-                       mwindow->remap_audio(MWindow::AUDIO_1_TO_1);
-       }
-       else {
-               session->audio_channels = session->audio_tracks = BD_CHANNELS;
-               session->achannel_positions[0] = 180;
-               session->achannel_positions[1] = 0;
-               if( edl->tracks->recordable_audio_tracks() == BD_WIDE_CHANNELS )
-                       mwindow->remap_audio(MWindow::AUDIO_5_1_TO_2);
-       }
+       session->audio_channels = session->audio_tracks =
+               !use_wide_audio ? BD_CHANNELS : BD_WIDE_CHANNELS;
+       for( int i=0; i<MAX_CHANNELS; ++i )
+               session->achannel_positions[i] = default_audio_channel_position(i, session->audio_channels);
+       int audio_mapping = edl->tracks->recordable_audio_tracks() == BD_WIDE_CHANNELS &&
+               !use_wide_audio ? MWindow::AUDIO_5_1_TO_2 : MWindow::AUDIO_1_TO_1;
+       mwindow->remap_audio(audio_mapping);
 
        double new_samplerate = session->sample_rate;
        double new_framerate = session->frame_rate;
@@ -277,7 +266,7 @@ int CreateBD_Thread::create_bd_jobs(ArrayList<BatchRenderJob*> *jobs, const char
        char xml_filename[BCTEXTLEN];
        sprintf(xml_filename, "%s/bd.xml", asset_dir);
        FileXML xml_file;
-       edl->save_xml(&xml_file, xml_filename, 0, 0);
+       edl->save_xml(&xml_file, xml_filename);
        xml_file.terminate_string();
        if( xml_file.write_to_file(xml_filename) ) {
                char msg[BCTEXTLEN];
@@ -286,7 +275,7 @@ int CreateBD_Thread::create_bd_jobs(ArrayList<BatchRenderJob*> *jobs, const char
                return 1;
        }
 
-       BatchRenderJob *job = new BatchRenderJob(mwindow->preferences);
+       BatchRenderJob *job = new BatchRenderJob(mwindow->preferences, use_label_chapters);
        jobs->append(job);
        strcpy(&job->edl_path[0], xml_filename);
        Asset *asset = job->asset;
@@ -330,7 +319,7 @@ int CreateBD_Thread::create_bd_jobs(ArrayList<BatchRenderJob*> *jobs, const char
        asset->ff_video_bitrate = vid_bitrate;
        asset->ff_video_quality = -1;
 
-       job = new BatchRenderJob(mwindow->preferences);
+       job = new BatchRenderJob(mwindow->preferences, 0, 0);
        jobs->append(job);
        job->edl_path[0] = '@';
        strcpy(&job->edl_path[1], script_filename);
@@ -925,14 +914,13 @@ option_presets()
                                        use_scale = Rescale::scaled;
                        }
                        for( int i=0; i<trk->plugin_set.size(); ++i ) {
-                               for(Plugin *plugin = (Plugin*)trk->plugin_set[i]->first;
-                                               plugin;
-                                               plugin = (Plugin*)plugin->next) {
-                                       if( !strcmp(plugin->title, _("Deinterlace")) )
+                               for( Plugin *plugin = (Plugin*)trk->plugin_set[i]->first;
+                                               plugin; plugin=(Plugin*)plugin->next ) {
+                                       if( !strcmp(plugin->title, "Deinterlace") )
                                                has_deinterlace = 1;
-                                       if( !strcmp(plugin->title, _("Auto Scale")) ||
-                                           !strcmp(plugin->title, _("Scale Ratio")) ||
-                                           !strcmp(plugin->title, _("Scale")) )
+                                       if( !strcmp(plugin->title, "Auto Scale") ||
+                                           !strcmp(plugin->title, "Scale Ratio") ||
+                                           !strcmp(plugin->title, "Scale") )
                                                has_scale = 1;
                                }
                        }