X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fbdcreate.C;h=27f728ad6dc80c1a21d20723d5eec697edf30a34;hp=57f40ea996546ac07785e068de9bd57afa81bb39;hb=HEAD;hpb=723142d62d61cde588e961426440f839ca9dcda9 diff --git a/cinelerra-5.1/cinelerra/bdcreate.C b/cinelerra-5.1/cinelerra/bdcreate.C index 57f40ea9..27f728ad 100644 --- a/cinelerra-5.1/cinelerra/bdcreate.C +++ b/cinelerra-5.1/cinelerra/bdcreate.C @@ -229,7 +229,7 @@ int CreateBD_Thread::create_bd_jobs(ArrayList *jobs, const char 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,"umount %s\n",mntpt); @@ -242,24 +242,13 @@ int CreateBD_Thread::create_bd_jobs(ArrayList *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; iachannel_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 *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 *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 *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);