1 #include "config.h"
2 #include "ADM_toolkitGtk.h"
3 #include "DIA_fileSel.h"
4 #include "DIA_coreToolkit.h"
5
6 #ifdef USE_XVID_4
7 #include "ADM_encoder/ADM_vidEncode.hxx"
8
9 #include "ADM_codecs/ADM_xvid4param.h"
10 #include "avi_vars.h"
11 static xvid4EncParam localParam;
12 static uint32_t mQ,mB,mS,mA;
13 static GtkWidget *dialog=NULL;
14 static COMPRESSION_MODE mMode;
15
16
17 static GtkWidget *create_dialog1 (void);
18 static GtkWidget *create_dialog3 (void);
19
20 static void xvid4otherUpload(GtkWidget *dialog);
21 static void xvid4otherDownload(GtkWidget *dialog);
22 static uint8_t editMatrix(uint8_t *inter, uint8_t *intra);
23 static void updateMode( void );
24
25 static int cb_mod(GtkObject * object, gpointer user_data);
26 static int ch_par_asinput(GtkObject * object, gpointer user_data);
27
28 #define CALL_Z(x,y) gtk_dialog_add_action_widget (GTK_DIALOG (dialog), WID(x),XVID4_RESPONSE_##y);
29
30 typedef enum
31 {
32 XVID4_RESPONSE_MODE_CHANGED,
33 XVID4_RESPONSE_EDIT_MATRIX,
34 XVID4_RESPONSE_LOAD_MATRIX,
35 XVID4_RESPONSE_SAVE_MATRIX,
36 XVID4_RESPONSE_LAST,
37 }XVID4_CODE;
DIA_xvid4(COMPRES_PARAMS * incoming)38 uint8_t DIA_xvid4(COMPRES_PARAMS *incoming)
39 {
40 int b;
41 int ret=0;
42 int code;
43 ADM_assert(incoming->extraSettingsLen==sizeof(localParam));
44 memcpy(&localParam,incoming->extraSettings,sizeof(localParam));
45 dialog=create_dialog1();
46
47 gtk_dialog_set_alternative_button_order(GTK_DIALOG(dialog),
48 GTK_RESPONSE_OK,
49 GTK_RESPONSE_CANCEL,
50 -1);
51 gtk_register_dialog(dialog);
52
53 #define HIST_SET(x) gtk_option_menu_set_history(GTK_OPTION_MENU(WID(optionmenuType)), x)
54 #define VAL_SET(x) gtk_write_entry(WID(entryEntry), x)
55
56 mQ=incoming->qz;
57 mB=incoming->bitrate; // in kbits
58 mS=incoming->finalsize;
59 mA=incoming->avg_bitrate;
60 mMode=incoming->mode;
61 updateMode();
62
63 xvid4otherUpload(dialog);
64 gtk_signal_connect(GTK_OBJECT(WID(optionmenuType)), "changed",
65 GTK_SIGNAL_FUNC(cb_mod), (void *) 0);
66
67 gtk_signal_connect(GTK_OBJECT(WID(checkbutton_par_asinput)), "clicked",
68 GTK_SIGNAL_FUNC(ch_par_asinput), (void *) 0);
69
70 CALL_Z(buttonCreateCustomMatrix,EDIT_MATRIX);
71 CALL_Z(buttonLoadMatrix,LOAD_MATRIX);
72
73 _again:
74 code=gtk_dialog_run(GTK_DIALOG(dialog));
75 if(code==XVID4_RESPONSE_EDIT_MATRIX)
76 {
77 uint8_t intra[64],inter[64];
78 memcpy(intra,localParam.intraMatrix,64);
79 memcpy(inter,localParam.interMatrix,64);
80 if(editMatrix(intra,inter))
81 {
82 memcpy(localParam.intraMatrix,intra,64);
83 memcpy(localParam.interMatrix,inter,64);
84 }
85 goto _again;
86 }
87 if(code==XVID4_RESPONSE_LOAD_MATRIX)
88 {
89 uint8_t intra[64],inter[64];
90 char *name;
91 FILE *file=NULL;
92 GUI_FileSelRead(QT_TR_NOOP("Select Xvid matrix file to load"), &name);
93 if(!name)
94 {
95 goto _again;
96 }
97 printf("Loading Matrix\n");
98 file=fopen(name,"rb");
99 if(!file)
100 {
101 _erLoad:
102 if(name) ADM_dealloc(name);
103 if(file) fclose(file);
104 GUI_Error_HIG(QT_TR_NOOP("Error Loading"),QT_TR_NOOP("Error loadind the custom matrix file."));
105 goto _again;
106 }
107 // Read it
108 if(64!=fread(intra,1,64,file))
109 {
110 printf("Error reading intra\n");
111 goto _erLoad;
112 }
113 if(64!=fread(inter,1,64,file))
114 {
115 printf("Error reading inter\n");
116 goto _erLoad;
117 }
118 // Ok
119 fclose(file);
120 memcpy(localParam.intraMatrix,intra,64);
121 memcpy(localParam.interMatrix,inter,64);
122 GUI_Info_HIG(ADM_LOG_INFO,QT_TR_NOOP("Matrix Loaded"),QT_TR_NOOP("The custom matrix file has been successfully loaded."));
123 goto _again;
124 }
125
126 if(code==GTK_RESPONSE_OK)
127 {
128
129
130 int r,value=0;
131 ret=1;
132 r=getRangeInMenu(WID(optionmenuType));
133 xvid4otherDownload(dialog);
134 memcpy(incoming->extraSettings,&localParam,sizeof(localParam));
135 switch(r)
136 {
137 case 0:
138 incoming->mode = COMPRESS_CBR;
139 value = (uint32_t) gtk_read_entry(WID(entryEntry));
140 incoming->bitrate = value;
141 ret = 1;
142 gtk_label_set_text(GTK_LABEL(WID(label11)),"Bitrate (kbps):");
143 break;
144 case 1:
145 incoming->mode = COMPRESS_CQ;
146 value = (uint32_t) gtk_spin_button_get_value_as_int(
147 GTK_SPIN_BUTTON(WID(spinbuttonQuant)));
148 incoming->qz = value;
149 break;
150
151 case 2:
152 incoming->mode = COMPRESS_2PASS;
153 value = (uint32_t) gtk_read_entry(WID(entryEntry));
154 if((value>0)&&(value<4000))
155 {
156 incoming->finalsize=value;
157
158 }
159 gtk_label_set_text(GTK_LABEL(WID(label11)),QT_TR_NOOP("Size (MBytes):"));
160 break;
161 case 3:
162 incoming->mode = COMPRESS_2PASS_BITRATE;
163 value = (uint32_t) gtk_read_entry(WID(entryEntry));
164 incoming->avg_bitrate=value;
165 gtk_label_set_text(GTK_LABEL(WID(label11)),QT_TR_NOOP("Average bitrate (kb/s):"));
166 break;
167
168 case 4:
169 incoming->mode=COMPRESS_SAME;
170 break;
171 default:
172 ADM_assert(0);
173 }
174 }
175 gtk_unregister_dialog(dialog);
176 gtk_widget_destroy(dialog);
177 return ret;
178
179 }
180 // Read the localParam struct and set the ui fields
181 // accordingly
182 #define SPIN_GET(x,y) {localParam.y= gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(WID(x))) ;\
183 printf(#x":%d\n",localParam.y);}
184
185 #define SPIN_SET(x,y) {gtk_spin_button_set_value(GTK_SPIN_BUTTON(WID(x)),(gfloat)localParam.y) ; \
186 printf(#x":%d\n",localParam.y);}
187
188 #define MENU_SET(x,y) { gtk_option_menu_set_history (GTK_OPTION_MENU(WID(x)),localParam.y);}
189 #define MENU_GET(x,y) { localParam.y = getRangeInMenu(WID(x));}
190 #define TOGGLE_SET(x,y) {gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(WID(x)),localParam.y);}
191 #define TOGGLE_GET(x,y) {localParam.y=gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(WID(x)));\
192 printf(#y":%d\n",localParam.y);}
193
194 #define ENTRY_SET(x,y) {gtk_write_entry(WID(x),(int)localParam.y);}
195 #define ENTRY_GET(x,y) {localParam.y=gtk_read_entry(WID(x));\
196 printf(#y":%d\n",localParam.y);}
197
198 #define CHECK_GET(x,y) {localParam.y=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(WID(x)));}
199 #define CHECK_SET(x,y) {gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(WID(x)),localParam.y);} //*****************************************************
xvid4otherUpload(GtkWidget * dialog)200 void xvid4otherUpload(GtkWidget *dialog)
201 {
202 MENU_SET(optionmenuMS,guiLevel);
203 MENU_SET(optionmenuVHQ,vhqmode);
204 if(localParam.useCustomIntra || localParam.useCustomInter)
205 {
206 RADIO_SET(radiobuttonCustomMatrix, 1);
207 }else
208 if(localParam.mpegQuantizer)
209 RADIO_SET(radiobuttonMpeg, 1);
210 else
211 RADIO_SET(radiobuttonH263, 1);
212 CHECK_SET(checkbuttonInterlaced, interlaced);
213 CHECK_SET(checkbutton4MV, inter4mv);
214 CHECK_SET(checkbuttonTrellis, trellis);
215 CHECK_SET(checkbuttonCartoon, cartoon);
216 CHECK_SET(checkbuttonGreyScale, greyscale);
217 CHECK_SET(checkbuttonChroma, chroma_opt);
218 CHECK_SET(checkbuttonChromaMotion, chroma_me);
219 CHECK_SET(checkbuttonGMC, gmc);
220 CHECK_SET(checkbuttonBVHQ, bvhq);
221 CHECK_SET(checkbutton_par_asinput, par_as_input);
222 CHECK_SET(checkbuttonQPel, qpel);
223 CHECK_SET(checkbuttonHQAC, hqac);
224
225 CHECK_SET(checkbuttonTurbo, turbo);
226 CHECK_SET(checkbuttonPacked, packed);
227
228 SPIN_SET(spinbuttonIMaxPeriod, max_key_interval);
229 ENTRY_SET(entryIInterv, min_key_interval);
230 SPIN_SET(spinbuttonBFrame, bframes);
231 ch_par_asinput(NULL, NULL);
232
233 SPIN_SET(spinbuttonIMax, qmax[0]);
234 SPIN_SET(spinbuttonPMax, qmax[1]);
235 SPIN_SET(spinbuttonBMax, qmax[2]);
236
237 SPIN_SET(spinbuttonIMin, qmin[0]);
238 SPIN_SET(spinbuttonPMin, qmin[1]);
239 SPIN_SET(spinbuttonBMin, qmin[2]);
240
241
242 ENTRY_SET(entryIBoost , keyframe_boost );
243
244 ENTRY_SET(entryHiPass , curve_compression_high );
245 ENTRY_SET(entryLowPass , curve_compression_low );
246 ENTRY_SET(entryOvrControl, overflow_control_strength );
247
248 ENTRY_SET(entryMaxOvrImp , max_overflow_improvement );
249 ENTRY_SET(entryMaxOvrDeg , max_overflow_degradation );
250
251 ENTRY_SET(entryIreduction , kfreduction );
252 ENTRY_SET(entryIInterv , kfthreshold );
253 //TOGGLE_SET(toggleHPEL, halfpel);
254
255 }
256 // Read the ui fields and set localParam
257 // accordingly
258 //*****************************************************
259
xvid4otherDownload(GtkWidget * dialog)260 void xvid4otherDownload(GtkWidget *dialog)
261 {
262 MENU_GET(optionmenuMS,guiLevel);
263 MENU_GET(optionmenuVHQ,vhqmode);
264
265 localParam.mpegQuantizer=RADIO_GET(radiobuttonMpeg);
266 if(RADIO_GET(radiobuttonCustomMatrix))
267 {
268 localParam.useCustomIntra=1;
269 localParam.useCustomInter=1;
270 }else
271 {
272 localParam.useCustomIntra=0;
273 localParam.useCustomInter=0;
274 }
275 CHECK_GET(checkbuttonInterlaced, interlaced);
276 CHECK_GET(checkbutton4MV, inter4mv);
277 CHECK_GET(checkbuttonTrellis, trellis);
278 CHECK_GET(checkbuttonCartoon, cartoon);
279 CHECK_GET(checkbuttonGreyScale, greyscale);
280 CHECK_GET(checkbuttonChroma, chroma_opt);
281 CHECK_GET(checkbuttonChromaMotion, chroma_me);
282 CHECK_GET(checkbuttonGMC, gmc);
283 CHECK_GET(checkbuttonBVHQ, bvhq);
284 CHECK_GET(checkbutton_par_asinput, par_as_input);
285 CHECK_GET(checkbuttonQPel, qpel);
286 CHECK_GET(checkbuttonHQAC, hqac);
287 CHECK_GET(checkbuttonTurbo, turbo);
288 CHECK_GET(checkbuttonPacked, packed);
289
290
291 SPIN_GET(spinbuttonIMaxPeriod, max_key_interval);
292 ENTRY_GET(entryIInterv, kfthreshold);
293 SPIN_GET(spinbuttonBFrame, bframes);
294
295 SPIN_GET(spinbutton_par_width, par_width);
296 SPIN_GET(spinbutton_par_height, par_height);
297
298
299 ENTRY_GET(entryIBoost , keyframe_boost );
300
301 ENTRY_GET(entryHiPass , curve_compression_high );
302 ENTRY_GET(entryLowPass , curve_compression_low );
303 ENTRY_GET(entryOvrControl, overflow_control_strength );
304
305 ENTRY_GET(entryMaxOvrImp , max_overflow_improvement );
306 ENTRY_GET(entryMaxOvrDeg , max_overflow_degradation );
307
308 ENTRY_GET(entryIreduction , kfreduction );
309 ENTRY_GET(entryIInterv , kfthreshold );
310 //TOGGLE_SET(toggleHPEL, halfpel);
311 SPIN_GET(spinbuttonIMax, qmax[0]);
312 SPIN_GET(spinbuttonPMax, qmax[1]);
313 SPIN_GET(spinbuttonBMax, qmax[2]);
314
315 SPIN_GET(spinbuttonIMin, qmin[0]);
316 SPIN_GET(spinbuttonPMin, qmin[1]);
317 SPIN_GET(spinbuttonBMin, qmin[2]);
318
319
320 }
321 //*****************************************************
updateMode(void)322 void updateMode( void )
323 {
324 uint32_t b;
325 // set the right select button
326 switch (mMode)
327 {
328 case COMPRESS_CBR:
329 HIST_SET(0);
330 b=mB;
331 VAL_SET(b);
332 gtk_widget_set_sensitive(WID(spinbuttonQuant),0);
333 gtk_widget_set_sensitive(WID(entryEntry),1);
334 gtk_label_set_text(GTK_LABEL(WID(label11)),QT_TR_NOOP("Target bitrate (kb/s):"));
335 break;
336
337 case COMPRESS_2PASS:
338 HIST_SET(2);
339 VAL_SET(mS);
340 gtk_widget_set_sensitive(WID(spinbuttonQuant),0);
341 gtk_widget_set_sensitive(WID(entryEntry),1);
342 gtk_label_set_text(GTK_LABEL(WID(label11)),QT_TR_NOOP("Target video size (MB):"));
343 break;
344 case COMPRESS_2PASS_BITRATE:
345 HIST_SET(3);
346 VAL_SET(mA);
347 gtk_widget_set_sensitive(WID(spinbuttonQuant),0);
348 gtk_widget_set_sensitive(WID(entryEntry),1);
349 gtk_label_set_text(GTK_LABEL(WID(label11)),QT_TR_NOOP("Average bitrate (kb/s):"));
350 break;
351
352 case COMPRESS_CQ:
353 HIST_SET(1);
354 gtk_widget_set_sensitive(WID(entryEntry),0);
355 gtk_widget_set_sensitive(WID(spinbuttonQuant),1);
356 gtk_spin_button_set_value(GTK_SPIN_BUTTON(WID(spinbuttonQuant)),(gfloat)mQ);
357 break;
358 case COMPRESS_SAME:
359 HIST_SET(4);
360 gtk_widget_set_sensitive(WID(entryEntry),0);
361 gtk_widget_set_sensitive(WID(spinbuttonQuant),0);
362
363 break;
364
365 }
366 }
367
368 //*****************************************************
cb_mod(GtkObject * object,gpointer user_data)369 int cb_mod(GtkObject * object, gpointer user_data)
370 {
371 int r;
372 r=getRangeInMenu(WID(optionmenuType));
373 switch(r)
374 {
375 case 0: mMode=COMPRESS_CBR ;break;
376 case 1: mMode=COMPRESS_CQ ;break;
377 case 2: mMode=COMPRESS_2PASS ;break;
378 case 3: mMode=COMPRESS_2PASS_BITRATE ;break;
379 case 4: mMode=COMPRESS_SAME;break;
380
381 }
382 updateMode();
383 printf("Changed!!!\n");
384 return 0;
385
386 }
387 //*****************************************************
ch_par_asinput(GtkObject * object,gpointer user_data)388 int ch_par_asinput(GtkObject * object, gpointer user_data)
389 {
390 int on = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(WID(checkbutton_par_asinput)));
391 gtk_widget_set_sensitive(WID(spinbutton_par_width), on^1);
392 gtk_widget_set_sensitive(WID(spinbutton_par_height), on^1);
393
394 if (on) {
395 SPIN_GET(spinbutton_par_width, par_width);
396 SPIN_GET(spinbutton_par_height, par_height);
397 gtk_spin_button_set_value(GTK_SPIN_BUTTON(WID(spinbutton_par_width)), video_body->getPARWidth());
398 gtk_spin_button_set_value(GTK_SPIN_BUTTON(WID(spinbutton_par_height)), video_body->getPARHeight());
399 }else{
400 SPIN_SET(spinbutton_par_width, par_width);
401 SPIN_SET(spinbutton_par_height, par_height);
402 }
403
404 return 0;
405 }
406 //*****************************************************
editMatrix(uint8_t * intra,uint8_t * inter)407 uint8_t editMatrix(uint8_t *intra, uint8_t *inter)
408 {
409 GtkWidget *dialog=NULL;
410 GtkWidget *spinbutton1;
411 GtkObject *spinbutton1_adj;
412 GtkWidget *intraCell[64],*interCell[64];
413 uint8_t ret=0;
414 int code;
415 int col, row;
416
417 dialog=create_dialog3();
418
419 gtk_dialog_set_alternative_button_order(GTK_DIALOG(dialog),
420 GTK_RESPONSE_OK,
421 GTK_RESPONSE_CANCEL,
422 -1);
423 gtk_register_dialog(dialog);
424 //
425 for(int i=0;i<64;i++)
426 { //Intra
427 col=i%8;
428 row=i>>3;
429 spinbutton1_adj = gtk_adjustment_new (intra[i], 8, 255, 1, 10, 10);
430 intraCell[i]=spinbutton1 = gtk_spin_button_new (GTK_ADJUSTMENT (spinbutton1_adj), 1, 0);
431 // gtk_widget_show (spinbutton1);
432 gtk_table_attach (GTK_TABLE (WID(tableIntra)), spinbutton1, col, col+1, row, row+1,
433 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
434 (GtkAttachOptions) (0), 0, 0);
435
436
437 }
438 for(int i=0;i<64;i++)
439 { //Inter
440 col=i%8;
441 row=i>>3;
442 spinbutton1_adj = gtk_adjustment_new (inter[i], 1, 255, 1, 10, 10);
443 interCell[i]=spinbutton1 = gtk_spin_button_new (GTK_ADJUSTMENT (spinbutton1_adj), 1, 0);
444 // gtk_widget_show (spinbutton1);
445 gtk_table_attach (GTK_TABLE (WID(tableInter)), spinbutton1, col, col+1, row, row+1,
446 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
447 (GtkAttachOptions) (0), 0, 0);
448 }
449 for(int i=0;i<64;i++)
450 {
451 gtk_widget_show (intraCell[i]);
452 gtk_widget_show (interCell[i]);
453 }
454 //
455
456 CALL_Z(button12,SAVE_MATRIX)
457 _loop:
458 code=gtk_dialog_run(GTK_DIALOG(dialog));
459 if(code==XVID4_RESPONSE_SAVE_MATRIX)
460 {
461 printf("Save\n");
462 char *name;
463 FILE *fd;
464 GUI_FileSelWrite(QT_TR_NOOP("Select Custom Matrix File to write"),&name);
465 if(!name) goto _loop;
466 fd=fopen(name,"wb");
467 if(!fd)
468 {
469 GUI_Error_HIG(QT_TR_NOOP("Error Writing"),QT_TR_NOOP("Error writing the custom matrix file."));
470 ADM_dealloc(name);
471 goto _loop;
472 }
473 for(int i=0;i<64;i++)
474 {
475 inter[i]=gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(interCell[i]));
476 intra[i]=gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(intraCell[i]));
477 }
478 fwrite(intra,1,64,fd);
479 fwrite(inter,1,64,fd);
480 fclose(fd);
481 ADM_dealloc(name);
482 goto _loop;
483 }
484 if(code==GTK_RESPONSE_OK)
485 {
486 printf("Accept\n");
487 ret=1;
488 for(int i=0;i<64;i++)
489 {
490 intra[i]=gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(intraCell[i]));
491 inter[i]=gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(interCell[i]));
492 }
493 }else
494 printf("refused\n");
495 /*
496 for(int i=1;i<65;i++)
497 {
498 wid=findMatrixWidget("intra
499 }
500 */
501
502 gtk_unregister_dialog(dialog);
503 gtk_widget_destroy(dialog);
504 return ret;
505
506 }
507 //-------------------- Glade-2 here----------
508 //_____KK_______
509
510
511 GtkWidget*
create_dialog1(void)512 create_dialog1 (void)
513 {
514 GtkWidget *dialog1;
515 GtkWidget *dialog_vbox1;
516 GtkWidget *notebook1;
517 GtkWidget *vbox2;
518 GtkWidget *frame1;
519 GtkWidget *vbox3;
520 GtkWidget *hbox19;
521 GtkWidget *vbox21;
522 GtkWidget *label10;
523 GtkWidget *label11;
524 GtkWidget *label12;
525 GtkWidget *vbox22;
526 GtkWidget *optionmenuType;
527 GtkWidget *menu1;
528 GtkWidget *one_pass_cbr1;
529 GtkWidget *one_pass_quantizer1;
530 GtkWidget *two_pass1;
531 GtkWidget *two_pass__average_bitrate1;
532 GtkWidget *same_qz_as_input1;
533 GtkWidget *entryEntry;
534 GtkObject *spinbuttonQuant_adj;
535 GtkWidget *spinbuttonQuant;
536 GtkWidget *label9;
537 GtkWidget *hbox7;
538 GtkWidget *vbox4;
539 GtkWidget *checkbuttonInterlaced;
540 GtkWidget *checkbuttonGreyScale;
541 GtkWidget *vbox5;
542 GtkWidget *checkbuttonCartoon;
543 GtkWidget *checkbuttonChroma;
544 GtkWidget *vbox23;
545 GtkWidget *checkbuttonTurbo;
546 GtkWidget *checkbuttonPacked;
547 GtkWidget *labelMain;
548 GtkWidget *vbox6;
549 GtkWidget *hbox8;
550 GtkWidget *vbox8;
551 GtkWidget *labelMotionSearchPrecision;
552 GtkWidget *labelVHQMode;
553 GtkWidget *vbox7;
554 GtkWidget *optionmenuMS;
555 GtkWidget *menu2;
556 GtkWidget *_0___none1;
557 GtkWidget *_1___very_low1;
558 GtkWidget *_2___low2;
559 GtkWidget *_3___medium1;
560 GtkWidget *_4___high1;
561 GtkWidget *_5___very_high1;
562 GtkWidget *_6___ultra_high1;
563 GtkWidget *optionmenuVHQ;
564 GtkWidget *menu3;
565 GtkWidget *_0___off1;
566 GtkWidget *_1___mode_decision1;
567 GtkWidget *_2___limited_search1;
568 GtkWidget *_3___medium_search1;
569 GtkWidget *_4___wide_search1;
570 GtkWidget *hbox10;
571 GtkWidget *checkbuttonChromaMotion;
572 GtkWidget *checkbutton4MV;
573 GtkWidget *checkbuttonHQAC;
574 GtkWidget *hbox9;
575 GtkWidget *labelIFrameIntervalMin;
576 GtkObject *spinbuttonIMinPeriod_adj;
577 GtkWidget *spinbuttonIMinPeriod;
578 GtkWidget *labelIFrameIntervalMax;
579 GtkObject *spinbuttonIMaxPeriod_adj;
580 GtkWidget *spinbuttonIMaxPeriod;
581 GtkWidget *frameAdvancedSimpleProfile;
582 GtkWidget *vbox9;
583 GtkWidget *hbox11;
584 GtkWidget *labelNumberOfBFrames;
585 GtkObject *spinbuttonBFrame_adj;
586 GtkWidget *spinbuttonBFrame;
587 GtkWidget *hbox12;
588 GtkWidget *checkbuttonQPel;
589 GtkWidget *checkbuttonGMC;
590 GtkWidget *checkbuttonBVHQ;
591 GtkWidget *labelAdvancedSimpleProfile;
592 GtkWidget *labelMotionEstimation;
593 GtkWidget *vbox10;
594 GtkWidget *hbox13;
595 GtkWidget *labelQuantizationType;
596 GtkWidget *radiobuttonH263;
597 GSList *radiobuttonH263_group = NULL;
598 GtkWidget *radiobuttonMpeg;
599 GtkWidget *radiobuttonCustomMatrix;
600 GtkWidget *hbox20;
601 GtkWidget *labelLoadCustomMatrix;
602 GtkWidget *buttonLoadMatrix;
603 GtkWidget *alignment6;
604 GtkWidget *hbox21;
605 GtkWidget *image1;
606 GtkWidget *label13;
607 GtkWidget *vseparator1;
608 GtkWidget *buttonCreateCustomMatrix;
609 GtkWidget *frameQuantizationRestrictions;
610 GtkWidget *hbox14;
611 GtkWidget *vbox11;
612 GtkWidget *labelIFrameQuantizerMin;
613 GtkWidget *labelPFrameQuantizerMin;
614 GtkWidget *labelBFrameQuantizaterMin;
615 GtkWidget *vbox12;
616 GtkObject *spinbuttonIMin_adj;
617 GtkWidget *spinbuttonIMin;
618 GtkObject *spinbuttonPMin_adj;
619 GtkWidget *spinbuttonPMin;
620 GtkObject *spinbuttonBMin_adj;
621 GtkWidget *spinbuttonBMin;
622 GtkWidget *vbox13;
623 GtkWidget *labelIFrameQuantizerMax;
624 GtkWidget *labelPFrameQuantizerMax;
625 GtkWidget *labelBFrameQuantizerMax;
626 GtkWidget *vbox14;
627 GtkObject *spinbuttonIMax_adj;
628 GtkWidget *spinbuttonIMax;
629 GtkObject *spinbuttonPMax_adj;
630 GtkWidget *spinbuttonPMax;
631 GtkObject *spinbuttonBMax_adj;
632 GtkWidget *spinbuttonBMax;
633 GtkWidget *labelQuantizerRestrictions;
634 GtkWidget *checkbuttonTrellis;
635 GtkWidget *labelQuantization;
636 GtkWidget *vbox15;
637 GtkWidget *frameTwoPassTuning;
638 GtkWidget *vbox16;
639 GtkWidget *hbox;
640 GtkWidget *vbox17;
641 GtkWidget *labelIFrameBoost;
642 GtkWidget *labelIFrameCloserThan;
643 GtkWidget *labelAreReducedBy;
644 GtkWidget *labelMaxOverflowImprovement;
645 GtkWidget *labelMaxOverflowDegradation;
646 GtkWidget *vbox18;
647 GtkWidget *entryIBoost;
648 GtkWidget *entryIInterv;
649 GtkWidget *entryIreduction;
650 GtkWidget *entryMaxOvrImp;
651 GtkWidget *entryMaxOvrDeg;
652 GtkWidget *labelTwoPassTuning;
653 GtkWidget *frameCurveCompression;
654 GtkWidget *hbox18;
655 GtkWidget *vbox19;
656 GtkWidget *labelHighBitrateScenes;
657 GtkWidget *labelLowBitrateScenes;
658 GtkWidget *labelOverflowControlStrength;
659 GtkWidget *vbox20;
660 GtkWidget *entryHiPass;
661 GtkWidget *entryLowPass;
662 GtkWidget *entryOvrControl;
663 GtkWidget *labelCurveCompression;
664 GtkWidget *labelSecondPass;
665 GtkWidget *dialog_action_area1;
666 GtkWidget *cancelbutton1;
667 GtkWidget *okbutton1;
668 GtkTooltips *tooltips;
669
670 GtkWidget *frame_par1;
671 GtkWidget *hbox_par1;
672 GtkWidget *label_par1;
673 GtkWidget *label_par2;
674 GtkWidget *checkbutton_par_asinput;
675 GtkObject *spinbutton_par_width_adj;
676 GtkWidget *spinbutton_par_width;
677 GtkObject *spinbutton_par_height_adj;
678 GtkWidget *spinbutton_par_height;
679
680
681 tooltips = gtk_tooltips_new ();
682
683 dialog1 = gtk_dialog_new ();
684 gtk_container_set_border_width (GTK_CONTAINER (dialog1), 2);
685 gtk_window_set_title (GTK_WINDOW (dialog1), QT_TR_NOOP("XviD encoding options"));
686 gtk_window_set_type_hint (GTK_WINDOW (dialog1), GDK_WINDOW_TYPE_HINT_DIALOG);
687
688 dialog_vbox1 = GTK_DIALOG (dialog1)->vbox;
689 gtk_widget_show (dialog_vbox1);
690
691 notebook1 = gtk_notebook_new ();
692 gtk_widget_show (notebook1);
693 gtk_box_pack_start (GTK_BOX (dialog_vbox1), notebook1, TRUE, TRUE, 0);
694
695 vbox2 = gtk_vbox_new (FALSE, 5);
696 gtk_widget_show (vbox2);
697 gtk_container_add (GTK_CONTAINER (notebook1), vbox2);
698 gtk_notebook_set_tab_label_packing (GTK_NOTEBOOK (notebook1), vbox2,
699 FALSE, FALSE, GTK_PACK_START);
700 gtk_container_set_border_width (GTK_CONTAINER (vbox2), 5);
701
702 frame1 = gtk_frame_new (NULL);
703 gtk_widget_show (frame1);
704 gtk_box_pack_start (GTK_BOX (vbox2), frame1, FALSE, FALSE, 0);
705
706 vbox3 = gtk_vbox_new (FALSE, 5);
707 gtk_widget_show (vbox3);
708 gtk_container_add (GTK_CONTAINER (frame1), vbox3);
709 gtk_container_set_border_width (GTK_CONTAINER (vbox3), 5);
710
711 hbox19 = gtk_hbox_new (FALSE, 10);
712 gtk_widget_show (hbox19);
713 gtk_box_pack_start (GTK_BOX (vbox3), hbox19, TRUE, TRUE, 0);
714
715 vbox21 = gtk_vbox_new (FALSE, 5);
716 gtk_widget_show (vbox21);
717 gtk_box_pack_start (GTK_BOX (hbox19), vbox21, FALSE, FALSE, 0);
718
719 label10 = gtk_label_new (QT_TR_NOOP("Encoding type:"));
720 gtk_widget_show (label10);
721 gtk_box_pack_start (GTK_BOX (vbox21), label10, TRUE, TRUE, 0);
722 gtk_misc_set_alignment (GTK_MISC (label10), 0, 0.5);
723
724 label11 = gtk_label_new (QT_TR_NOOP("Bitrate (kb/s):"));
725 gtk_widget_show (label11);
726 gtk_box_pack_start (GTK_BOX (vbox21), label11, TRUE, TRUE, 0);
727 gtk_misc_set_alignment (GTK_MISC (label11), 0, 0.5);
728
729 label12 = gtk_label_new (QT_TR_NOOP("Quantizer:"));
730 gtk_widget_show (label12);
731 gtk_box_pack_start (GTK_BOX (vbox21), label12, TRUE, TRUE, 0);
732 gtk_misc_set_alignment (GTK_MISC (label12), 0, 0.5);
733
734 vbox22 = gtk_vbox_new (FALSE, 5);
735 gtk_widget_show (vbox22);
736 gtk_box_pack_start (GTK_BOX (hbox19), vbox22, FALSE, FALSE, 0);
737
738 optionmenuType = gtk_option_menu_new ();
739 gtk_widget_show (optionmenuType);
740 gtk_box_pack_start (GTK_BOX (vbox22), optionmenuType, FALSE, FALSE, 0);
741 gtk_tooltips_set_tip (tooltips, optionmenuType, QT_TR_NOOP("Select 1-pass or 2-pass encoding"), NULL);
742
743 menu1 = gtk_menu_new ();
744
745 one_pass_cbr1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("Single Pass - Bitrate"));
746 gtk_widget_show (one_pass_cbr1);
747 gtk_container_add (GTK_CONTAINER (menu1), one_pass_cbr1);
748
749 one_pass_quantizer1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("Single Pass - Quantizer"));
750 gtk_widget_show (one_pass_quantizer1);
751 gtk_container_add (GTK_CONTAINER (menu1), one_pass_quantizer1);
752
753 two_pass1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("Two Pass - Video Size"));
754 gtk_widget_show (two_pass1);
755 gtk_container_add (GTK_CONTAINER (menu1), two_pass1);
756
757 two_pass__average_bitrate1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("Two Pass - Average Bitrate"));
758 gtk_widget_show (two_pass__average_bitrate1);
759 gtk_container_add (GTK_CONTAINER (menu1), two_pass__average_bitrate1);
760
761 same_qz_as_input1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("Same Quantizer as Input"));
762 gtk_widget_show (same_qz_as_input1);
763 gtk_container_add (GTK_CONTAINER (menu1), same_qz_as_input1);
764
765 gtk_option_menu_set_menu (GTK_OPTION_MENU (optionmenuType), menu1);
766
767 entryEntry = gtk_entry_new ();
768 gtk_widget_show (entryEntry);
769 gtk_box_pack_start (GTK_BOX (vbox22), entryEntry, FALSE, FALSE, 0);
770 gtk_tooltips_set_tip (tooltips, entryEntry, QT_TR_NOOP("Target video bitrate"), NULL);
771 gtk_entry_set_width_chars (GTK_ENTRY (entryEntry), 10);
772
773 spinbuttonQuant_adj = gtk_adjustment_new (4, 1, 31, 1, 10, 10);
774 spinbuttonQuant = gtk_spin_button_new (GTK_ADJUSTMENT (spinbuttonQuant_adj), 1, 0);
775 gtk_widget_show (spinbuttonQuant);
776 gtk_box_pack_start (GTK_BOX (vbox22), spinbuttonQuant, FALSE, FALSE, 0);
777 gtk_tooltips_set_tip (tooltips, spinbuttonQuant, QT_TR_NOOP("Constant quantizer - each frame will get the same compression"), NULL);
778
779 label9 = gtk_label_new (QT_TR_NOOP("Variable bitrate mode"));
780 gtk_widget_show (label9);
781 gtk_frame_set_label_widget (GTK_FRAME (frame1), label9);
782
783 hbox7 = gtk_hbox_new (FALSE, 10);
784 gtk_widget_show (hbox7);
785 gtk_box_pack_start (GTK_BOX (vbox2), hbox7, FALSE, FALSE, 0);
786
787 vbox4 = gtk_vbox_new (FALSE, 0);
788 gtk_widget_show (vbox4);
789 gtk_box_pack_start (GTK_BOX (hbox7), vbox4, FALSE, FALSE, 0);
790
791 checkbuttonInterlaced = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("_Interlaced"));
792 gtk_widget_show (checkbuttonInterlaced);
793 gtk_box_pack_start (GTK_BOX (vbox4), checkbuttonInterlaced, FALSE, FALSE, 0);
794 gtk_tooltips_set_tip (tooltips, checkbuttonInterlaced, QT_TR_NOOP("Enables interlaced frame support - use only if your source contains interlacing artifacts (i.e. fields instead of progressive frames)"), NULL);
795
796 checkbuttonGreyScale = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("_Greyscale"));
797 gtk_widget_show (checkbuttonGreyScale);
798 gtk_box_pack_start (GTK_BOX (vbox4), checkbuttonGreyScale, FALSE, FALSE, 0);
799 gtk_tooltips_set_tip (tooltips, checkbuttonGreyScale, QT_TR_NOOP("Encode in black & white"), NULL);
800
801 vbox5 = gtk_vbox_new (FALSE, 0);
802 gtk_widget_show (vbox5);
803 gtk_box_pack_start (GTK_BOX (hbox7), vbox5, FALSE, FALSE, 0);
804
805 checkbuttonCartoon = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("Ca_rtoon mode"));
806 gtk_widget_show (checkbuttonCartoon);
807 gtk_box_pack_start (GTK_BOX (vbox5), checkbuttonCartoon, FALSE, FALSE, 0);
808 gtk_tooltips_set_tip (tooltips, checkbuttonCartoon, QT_TR_NOOP("Enables special motion estimation features for cartoons/anime"), NULL);
809
810 checkbuttonChroma = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("C_hroma optimizer"));
811 gtk_widget_show (checkbuttonChroma);
812 gtk_box_pack_start (GTK_BOX (vbox5), checkbuttonChroma, FALSE, FALSE, 0);
813 gtk_tooltips_set_tip (tooltips, checkbuttonChroma, QT_TR_NOOP("Enables a chroma optimizer prefilter"), NULL);
814
815 vbox23 = gtk_vbox_new (FALSE, 0);
816 gtk_widget_show (vbox23);
817 gtk_box_pack_start (GTK_BOX (hbox7), vbox23, TRUE, TRUE, 0);
818
819 checkbuttonTurbo = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("Turbo Mode"));
820 gtk_widget_show (checkbuttonTurbo);
821 gtk_box_pack_start (GTK_BOX (vbox23), checkbuttonTurbo, FALSE, FALSE, 0);
822 gtk_tooltips_set_tip (tooltips, checkbuttonTurbo, QT_TR_NOOP("Enables fast 1st pass encoding"), NULL);
823
824 checkbuttonPacked = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("Packed bitstream"));
825 gtk_widget_show (checkbuttonPacked);
826 gtk_box_pack_start (GTK_BOX (vbox23), checkbuttonPacked, FALSE, FALSE, 0);
827 gtk_tooltips_set_tip (tooltips, checkbuttonPacked, QT_TR_NOOP("Enables Divx like packed vop, DO NOT SET, it is ugly"), NULL);
828
829 labelMain = gtk_label_new (QT_TR_NOOP("Main"));
830 gtk_widget_show (labelMain);
831 gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 0), labelMain);
832
833 vbox6 = gtk_vbox_new (FALSE, 5);
834 gtk_widget_show (vbox6);
835 gtk_container_add (GTK_CONTAINER (notebook1), vbox6);
836 gtk_notebook_set_tab_label_packing (GTK_NOTEBOOK (notebook1), vbox6,
837 FALSE, FALSE, GTK_PACK_START);
838 gtk_container_set_border_width (GTK_CONTAINER (vbox6), 5);
839
840 hbox8 = gtk_hbox_new (FALSE, 10);
841 gtk_widget_show (hbox8);
842 gtk_box_pack_start (GTK_BOX (vbox6), hbox8, FALSE, FALSE, 0);
843
844 vbox8 = gtk_vbox_new (FALSE, 10);
845 gtk_widget_show (vbox8);
846 gtk_box_pack_start (GTK_BOX (hbox8), vbox8, FALSE, FALSE, 0);
847
848 labelMotionSearchPrecision = gtk_label_new (QT_TR_NOOP("Motion search precision:"));
849 gtk_widget_show (labelMotionSearchPrecision);
850 gtk_box_pack_start (GTK_BOX (vbox8), labelMotionSearchPrecision, TRUE, TRUE, 0);
851
852 labelVHQMode = gtk_label_new (QT_TR_NOOP("VHQ mode:"));
853 gtk_widget_show (labelVHQMode);
854 gtk_box_pack_start (GTK_BOX (vbox8), labelVHQMode, TRUE, TRUE, 0);
855 gtk_label_set_justify (GTK_LABEL (labelVHQMode), GTK_JUSTIFY_FILL);
856 gtk_misc_set_alignment (GTK_MISC (labelVHQMode), 0, 0.5);
857
858 vbox7 = gtk_vbox_new (FALSE, 10);
859 gtk_widget_show (vbox7);
860 gtk_box_pack_start (GTK_BOX (hbox8), vbox7, FALSE, FALSE, 0);
861
862 optionmenuMS = gtk_option_menu_new ();
863 gtk_widget_show (optionmenuMS);
864 gtk_box_pack_start (GTK_BOX (vbox7), optionmenuMS, FALSE, FALSE, 0);
865 gtk_tooltips_set_tip (tooltips, optionmenuMS, QT_TR_NOOP("Higher settings give higher quality results, at the cost of slower encoding"), NULL);
866
867 menu2 = gtk_menu_new ();
868
869 _0___none1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("0 - None"));
870 gtk_widget_show (_0___none1);
871 gtk_container_add (GTK_CONTAINER (menu2), _0___none1);
872
873 _1___very_low1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("1 - Very low"));
874 gtk_widget_show (_1___very_low1);
875 gtk_container_add (GTK_CONTAINER (menu2), _1___very_low1);
876
877 _2___low2 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("2 - Low"));
878 gtk_widget_show (_2___low2);
879 gtk_container_add (GTK_CONTAINER (menu2), _2___low2);
880
881 _3___medium1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("3 - Medium"));
882 gtk_widget_show (_3___medium1);
883 gtk_container_add (GTK_CONTAINER (menu2), _3___medium1);
884
885 _4___high1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("4 - High"));
886 gtk_widget_show (_4___high1);
887 gtk_container_add (GTK_CONTAINER (menu2), _4___high1);
888
889 _5___very_high1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("5 - Very high"));
890 gtk_widget_show (_5___very_high1);
891 gtk_container_add (GTK_CONTAINER (menu2), _5___very_high1);
892
893 _6___ultra_high1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("6 - Ultra high"));
894 gtk_widget_show (_6___ultra_high1);
895 gtk_container_add (GTK_CONTAINER (menu2), _6___ultra_high1);
896
897 gtk_option_menu_set_menu (GTK_OPTION_MENU (optionmenuMS), menu2);
898
899 optionmenuVHQ = gtk_option_menu_new ();
900 gtk_widget_show (optionmenuVHQ);
901 gtk_box_pack_start (GTK_BOX (vbox7), optionmenuVHQ, FALSE, FALSE, 0);
902 gtk_tooltips_set_tip (tooltips, optionmenuVHQ, QT_TR_NOOP("VHQ enables an additional search process to increase quality"), NULL);
903
904 menu3 = gtk_menu_new ();
905
906 _0___off1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("0 - Off"));
907 gtk_widget_show (_0___off1);
908 gtk_container_add (GTK_CONTAINER (menu3), _0___off1);
909
910 _1___mode_decision1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("1 - Mode decision"));
911 gtk_widget_show (_1___mode_decision1);
912 gtk_container_add (GTK_CONTAINER (menu3), _1___mode_decision1);
913
914 _2___limited_search1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("2 - Limited search"));
915 gtk_widget_show (_2___limited_search1);
916 gtk_container_add (GTK_CONTAINER (menu3), _2___limited_search1);
917
918 _3___medium_search1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("3 - Medium search"));
919 gtk_widget_show (_3___medium_search1);
920 gtk_container_add (GTK_CONTAINER (menu3), _3___medium_search1);
921
922 _4___wide_search1 = gtk_menu_item_new_with_mnemonic (QT_TR_NOOP("4 - Wide search"));
923 gtk_widget_show (_4___wide_search1);
924 gtk_container_add (GTK_CONTAINER (menu3), _4___wide_search1);
925
926 gtk_option_menu_set_menu (GTK_OPTION_MENU (optionmenuVHQ), menu3);
927
928 hbox10 = gtk_hbox_new (FALSE, 10);
929 gtk_widget_show (hbox10);
930 gtk_box_pack_start (GTK_BOX (vbox6), hbox10, FALSE, FALSE, 0);
931
932 checkbuttonChromaMotion = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("C_hroma motion"));
933 gtk_widget_show (checkbuttonChromaMotion);
934 gtk_box_pack_start (GTK_BOX (hbox10), checkbuttonChromaMotion, FALSE, FALSE, 0);
935 gtk_tooltips_set_tip (tooltips, checkbuttonChromaMotion, QT_TR_NOOP("Use chroma information to estimate motion"), NULL);
936
937 checkbutton4MV = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("_4MV"));
938 gtk_widget_show (checkbutton4MV);
939 gtk_box_pack_start (GTK_BOX (hbox10), checkbutton4MV, FALSE, FALSE, 0);
940 gtk_tooltips_set_tip (tooltips, checkbutton4MV, QT_TR_NOOP("Use 4 motion vectors per macroblock, might give better compression"), NULL);
941
942 checkbuttonHQAC = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("HQ _AC"));
943 gtk_widget_show (checkbuttonHQAC);
944 gtk_box_pack_start (GTK_BOX (hbox10), checkbuttonHQAC, FALSE, FALSE, 0);
945 gtk_tooltips_set_tip (tooltips, checkbuttonHQAC, QT_TR_NOOP("Enable a better prediction of AC component. Turns on Lumi masking - applies more compression to dark/light areas that the eye cannot notice easily"), NULL);
946
947 hbox9 = gtk_hbox_new (FALSE, 10);
948 gtk_widget_show (hbox9);
949 gtk_box_pack_start (GTK_BOX (vbox6), hbox9, FALSE, FALSE, 0);
950
951 labelIFrameIntervalMin = gtk_label_new (QT_TR_NOOP("I-frame interval - Min:"));
952 gtk_widget_show (labelIFrameIntervalMin);
953 gtk_box_pack_start (GTK_BOX (hbox9), labelIFrameIntervalMin, FALSE, FALSE, 0);
954
955 spinbuttonIMinPeriod_adj = gtk_adjustment_new (1, 1, 9, 1, 10, 10);
956 spinbuttonIMinPeriod = gtk_spin_button_new (GTK_ADJUSTMENT (spinbuttonIMinPeriod_adj), 1, 0);
957 gtk_widget_show (spinbuttonIMinPeriod);
958 gtk_box_pack_start (GTK_BOX (hbox9), spinbuttonIMinPeriod, FALSE, FALSE, 0);
959 gtk_tooltips_set_tip (tooltips, spinbuttonIMinPeriod, QT_TR_NOOP("Minimum space between I-frames, 1 will disable forced I-frame spacing"), NULL);
960
961 labelIFrameIntervalMax = gtk_label_new (QT_TR_NOOP("Max:"));
962 gtk_widget_show (labelIFrameIntervalMax);
963 gtk_box_pack_start (GTK_BOX (hbox9), labelIFrameIntervalMax, FALSE, FALSE, 0);
964
965 spinbuttonIMaxPeriod_adj = gtk_adjustment_new (250, 1, 500, 1, 10, 10);
966 spinbuttonIMaxPeriod = gtk_spin_button_new (GTK_ADJUSTMENT (spinbuttonIMaxPeriod_adj), 1, 0);
967 gtk_widget_show (spinbuttonIMaxPeriod);
968 gtk_box_pack_start (GTK_BOX (hbox9), spinbuttonIMaxPeriod, FALSE, FALSE, 0);
969 gtk_tooltips_set_tip (tooltips, spinbuttonIMaxPeriod, QT_TR_NOOP("Maximum number of frames allowed between I-frames"), NULL);
970
971 frameAdvancedSimpleProfile = gtk_frame_new (NULL);
972 gtk_widget_show (frameAdvancedSimpleProfile);
973 gtk_box_pack_start (GTK_BOX (vbox6), frameAdvancedSimpleProfile, FALSE, FALSE, 0);
974
975 vbox9 = gtk_vbox_new (FALSE, 5);
976 gtk_widget_show (vbox9);
977 gtk_container_add (GTK_CONTAINER (frameAdvancedSimpleProfile), vbox9);
978 gtk_container_set_border_width (GTK_CONTAINER (vbox9), 5);
979
980 hbox11 = gtk_hbox_new (FALSE, 10);
981 gtk_widget_show (hbox11);
982 gtk_box_pack_start (GTK_BOX (vbox9), hbox11, FALSE, FALSE, 0);
983
984 labelNumberOfBFrames = gtk_label_new (QT_TR_NOOP("Number of B-frames:"));
985 gtk_widget_show (labelNumberOfBFrames);
986 gtk_box_pack_start (GTK_BOX (hbox11), labelNumberOfBFrames, FALSE, FALSE, 0);
987
988 spinbuttonBFrame_adj = gtk_adjustment_new (1, 0, 3, 1, 1, 1);
989 spinbuttonBFrame = gtk_spin_button_new (GTK_ADJUSTMENT (spinbuttonBFrame_adj), 1, 0);
990 gtk_widget_show (spinbuttonBFrame);
991 gtk_box_pack_start (GTK_BOX (hbox11), spinbuttonBFrame, FALSE, FALSE, 0);
992 gtk_tooltips_set_tip (tooltips, spinbuttonBFrame, QT_TR_NOOP("Maximum number of sequential B-frames (when set to 0, the original I/P encoder is used)"), NULL);
993
994 hbox12 = gtk_hbox_new (FALSE, 10);
995 gtk_widget_show (hbox12);
996 gtk_box_pack_start (GTK_BOX (vbox9), hbox12, FALSE, FALSE, 0);
997
998 checkbuttonQPel = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("_Qpel"));
999 gtk_widget_show (checkbuttonQPel);
1000 gtk_box_pack_start (GTK_BOX (hbox12), checkbuttonQPel, FALSE, FALSE, 0);
1001 gtk_tooltips_set_tip (tooltips, checkbuttonQPel, QT_TR_NOOP("Use Quarter pixel resolution for a more precise motion estimation"), NULL);
1002
1003 checkbuttonGMC = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("_GMC"));
1004 gtk_widget_show (checkbuttonGMC);
1005 gtk_box_pack_start (GTK_BOX (hbox12), checkbuttonGMC, FALSE, FALSE, 0);
1006 gtk_tooltips_set_tip (tooltips, checkbuttonGMC, QT_TR_NOOP("Global Motion Compensation can save bits on camera pans, zooming and rotation"), NULL);
1007
1008 checkbuttonBVHQ = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("_BVHQ"));
1009 gtk_widget_show (checkbuttonBVHQ);
1010 gtk_box_pack_start (GTK_BOX (hbox12), checkbuttonBVHQ, FALSE, FALSE, 0);
1011 gtk_tooltips_set_tip (tooltips, checkbuttonBVHQ, QT_TR_NOOP("Produces nicer-looking B-frames"), NULL);
1012
1013 labelAdvancedSimpleProfile = gtk_label_new (QT_TR_NOOP("Advanced Simple Profile"));
1014 gtk_widget_show (labelAdvancedSimpleProfile);
1015 gtk_frame_set_label_widget (GTK_FRAME (frameAdvancedSimpleProfile), labelAdvancedSimpleProfile);
1016
1017 frame_par1 = gtk_frame_new (NULL);
1018 gtk_widget_show (frame_par1);
1019 gtk_box_pack_start (GTK_BOX (vbox6), frame_par1, TRUE, TRUE, 1);
1020 hbox_par1 = gtk_hbox_new (FALSE, 0);
1021 gtk_widget_show (hbox_par1);
1022 gtk_container_add (GTK_CONTAINER (frame_par1), hbox_par1);
1023 gtk_container_set_border_width (GTK_CONTAINER (hbox_par1), 5);
1024
1025 checkbutton_par_asinput = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("As Input"));
1026 gtk_widget_show (checkbutton_par_asinput);
1027 gtk_box_pack_start (GTK_BOX (hbox_par1), checkbutton_par_asinput, FALSE, FALSE, 10);
1028 gtk_tooltips_set_tip (tooltips, checkbutton_par_asinput, QT_TR_NOOP("Get PAR from input video file"), NULL);
1029
1030 spinbutton_par_width_adj = gtk_adjustment_new (1, 1, 255, 1, 1, 1);
1031 spinbutton_par_width = gtk_spin_button_new (GTK_ADJUSTMENT (spinbutton_par_width_adj), 1, 0);
1032 gtk_widget_show (spinbutton_par_width);
1033 gtk_box_pack_start (GTK_BOX (hbox_par1), spinbutton_par_width, FALSE, FALSE, 0);
1034 gtk_tooltips_set_tip (tooltips, spinbutton_par_width, QT_TR_NOOP("Pixel Width"), NULL);
1035
1036 label_par1 = gtk_label_new (QT_TR_NOOP(":"));
1037 gtk_widget_show (label_par1);
1038 gtk_box_pack_start (GTK_BOX (hbox_par1), label_par1, FALSE, FALSE, 2);
1039 gtk_label_set_justify (GTK_LABEL (label_par1), GTK_JUSTIFY_CENTER);
1040
1041 spinbutton_par_height_adj = gtk_adjustment_new (1, 1, 255, 1, 1, 1);
1042 spinbutton_par_height = gtk_spin_button_new (GTK_ADJUSTMENT (spinbutton_par_height_adj), 1, 0);
1043 gtk_widget_show (spinbutton_par_height);
1044 gtk_box_pack_start (GTK_BOX (hbox_par1), spinbutton_par_height, FALSE, FALSE, 0);
1045 gtk_tooltips_set_tip (tooltips, spinbutton_par_height, QT_TR_NOOP("Pixel Height"), NULL);
1046 label_par2 = gtk_label_new (QT_TR_NOOP("Pixel Aspect Ratio"));
1047 gtk_widget_show (label_par2);
1048 gtk_frame_set_label_widget (GTK_FRAME (frame_par1), label_par2);
1049 gtk_label_set_use_markup (GTK_LABEL (label_par2), TRUE);
1050
1051 labelMotionEstimation = gtk_label_new (QT_TR_NOOP("Motion & Misc"));
1052 gtk_widget_show (labelMotionEstimation);
1053 gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 1), labelMotionEstimation);
1054
1055 vbox10 = gtk_vbox_new (FALSE, 5);
1056 gtk_widget_show (vbox10);
1057 gtk_container_add (GTK_CONTAINER (notebook1), vbox10);
1058 gtk_container_set_border_width (GTK_CONTAINER (vbox10), 5);
1059
1060 hbox13 = gtk_hbox_new (FALSE, 10);
1061 gtk_widget_show (hbox13);
1062 gtk_box_pack_start (GTK_BOX (vbox10), hbox13, FALSE, FALSE, 0);
1063
1064 labelQuantizationType = gtk_label_new (QT_TR_NOOP("Quantization type:"));
1065 gtk_widget_show (labelQuantizationType);
1066 gtk_box_pack_start (GTK_BOX (hbox13), labelQuantizationType, FALSE, FALSE, 0);
1067
1068 radiobuttonH263 = gtk_radio_button_new_with_mnemonic (NULL, QT_TR_NOOP("_H.263"));
1069 gtk_widget_show (radiobuttonH263);
1070 gtk_box_pack_start (GTK_BOX (hbox13), radiobuttonH263, FALSE, FALSE, 0);
1071 gtk_tooltips_set_tip (tooltips, radiobuttonH263, QT_TR_NOOP("H.263 quantizers smooth the picture (useful at lower bitrates)"), NULL);
1072 gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobuttonH263), radiobuttonH263_group);
1073 radiobuttonH263_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobuttonH263));
1074
1075 radiobuttonMpeg = gtk_radio_button_new_with_mnemonic (NULL, QT_TR_NOOP("_MPEG"));
1076 gtk_widget_show (radiobuttonMpeg);
1077 gtk_box_pack_start (GTK_BOX (hbox13), radiobuttonMpeg, FALSE, FALSE, 0);
1078 gtk_tooltips_set_tip (tooltips, radiobuttonMpeg, QT_TR_NOOP("MPEG quantizers (slightly slower) produce sharper picture (useful at higher bitrates)"), NULL);
1079 gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobuttonMpeg), radiobuttonH263_group);
1080 radiobuttonH263_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobuttonMpeg));
1081
1082 radiobuttonCustomMatrix = gtk_radio_button_new_with_mnemonic (NULL, QT_TR_NOOP("_Custom Matrix"));
1083 gtk_widget_show (radiobuttonCustomMatrix);
1084 gtk_box_pack_start (GTK_BOX (hbox13), radiobuttonCustomMatrix, FALSE, FALSE, 0);
1085 gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobuttonCustomMatrix), radiobuttonH263_group);
1086 radiobuttonH263_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobuttonCustomMatrix));
1087
1088 hbox20 = gtk_hbox_new (FALSE, 0);
1089 gtk_widget_show (hbox20);
1090 gtk_box_pack_start (GTK_BOX (vbox10), hbox20, FALSE, TRUE, 0);
1091
1092 labelLoadCustomMatrix = gtk_label_new (QT_TR_NOOP("Load Custom Matrix: "));
1093 gtk_widget_show (labelLoadCustomMatrix);
1094 gtk_box_pack_start (GTK_BOX (hbox20), labelLoadCustomMatrix, FALSE, FALSE, 0);
1095 gtk_label_set_justify (GTK_LABEL (labelLoadCustomMatrix), GTK_JUSTIFY_RIGHT);
1096
1097 buttonLoadMatrix = gtk_button_new ();
1098 gtk_widget_show (buttonLoadMatrix);
1099 gtk_box_pack_start (GTK_BOX (hbox20), buttonLoadMatrix, FALSE, FALSE, 0);
1100
1101 alignment6 = gtk_alignment_new (0.5, 0.5, 0, 0);
1102 gtk_widget_show (alignment6);
1103 gtk_container_add (GTK_CONTAINER (buttonLoadMatrix), alignment6);
1104
1105 hbox21 = gtk_hbox_new (FALSE, 2);
1106 gtk_widget_show (hbox21);
1107 gtk_container_add (GTK_CONTAINER (alignment6), hbox21);
1108
1109 image1 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON);
1110 gtk_widget_show (image1);
1111 gtk_box_pack_start (GTK_BOX (hbox21), image1, FALSE, FALSE, 0);
1112
1113 label13 = gtk_label_new_with_mnemonic (QT_TR_NOOP("Open CQM file"));
1114 gtk_widget_show (label13);
1115 gtk_box_pack_start (GTK_BOX (hbox21), label13, FALSE, FALSE, 0);
1116
1117 vseparator1 = gtk_vseparator_new ();
1118 gtk_widget_show (vseparator1);
1119 gtk_box_pack_start (GTK_BOX (hbox20), vseparator1, FALSE, TRUE, 0);
1120
1121 buttonCreateCustomMatrix = gtk_button_new_with_mnemonic (QT_TR_NOOP("Edit Custom Matrix"));
1122 gtk_widget_show (buttonCreateCustomMatrix);
1123 gtk_box_pack_start (GTK_BOX (hbox20), buttonCreateCustomMatrix, FALSE, FALSE, 0);
1124
1125 frameQuantizationRestrictions = gtk_frame_new (NULL);
1126 gtk_widget_show (frameQuantizationRestrictions);
1127 gtk_box_pack_start (GTK_BOX (vbox10), frameQuantizationRestrictions, FALSE, FALSE, 0);
1128
1129 hbox14 = gtk_hbox_new (FALSE, 10);
1130 gtk_widget_show (hbox14);
1131 gtk_container_add (GTK_CONTAINER (frameQuantizationRestrictions), hbox14);
1132 gtk_container_set_border_width (GTK_CONTAINER (hbox14), 5);
1133
1134 vbox11 = gtk_vbox_new (FALSE, 5);
1135 gtk_widget_show (vbox11);
1136 gtk_box_pack_start (GTK_BOX (hbox14), vbox11, FALSE, FALSE, 0);
1137
1138 labelIFrameQuantizerMin = gtk_label_new (QT_TR_NOOP("I-frame quantizer - Min:"));
1139 gtk_widget_show (labelIFrameQuantizerMin);
1140 gtk_box_pack_start (GTK_BOX (vbox11), labelIFrameQuantizerMin, TRUE, TRUE, 0);
1141 gtk_misc_set_alignment (GTK_MISC (labelIFrameQuantizerMin), 0, 0.5);
1142
1143 labelPFrameQuantizerMin = gtk_label_new (QT_TR_NOOP("P-frame quantizer - Min:"));
1144 gtk_widget_show (labelPFrameQuantizerMin);
1145 gtk_box_pack_start (GTK_BOX (vbox11), labelPFrameQuantizerMin, TRUE, TRUE, 0);
1146 gtk_misc_set_alignment (GTK_MISC (labelPFrameQuantizerMin), 0, 0.5);
1147
1148 labelBFrameQuantizaterMin = gtk_label_new (QT_TR_NOOP("B-frame quantizer - Min:"));
1149 gtk_widget_show (labelBFrameQuantizaterMin);
1150 gtk_box_pack_start (GTK_BOX (vbox11), labelBFrameQuantizaterMin, TRUE, TRUE, 0);
1151 gtk_misc_set_alignment (GTK_MISC (labelBFrameQuantizaterMin), 0, 0.5);
1152
1153 vbox12 = gtk_vbox_new (FALSE, 5);
1154 gtk_widget_show (vbox12);
1155 gtk_box_pack_start (GTK_BOX (hbox14), vbox12, FALSE, FALSE, 0);
1156
1157 spinbuttonIMin_adj = gtk_adjustment_new (2, 1, 31, 1, 10, 10);
1158 spinbuttonIMin = gtk_spin_button_new (GTK_ADJUSTMENT (spinbuttonIMin_adj), 1, 0);
1159 gtk_widget_show (spinbuttonIMin);
1160 gtk_box_pack_start (GTK_BOX (vbox12), spinbuttonIMin, FALSE, FALSE, 0);
1161 gtk_tooltips_set_tip (tooltips, spinbuttonIMin, QT_TR_NOOP("Minimum quantizer allowed for I-frames"), NULL);
1162
1163 spinbuttonPMin_adj = gtk_adjustment_new (2, 1, 31, 1, 10, 10);
1164 spinbuttonPMin = gtk_spin_button_new (GTK_ADJUSTMENT (spinbuttonPMin_adj), 1, 0);
1165 gtk_widget_show (spinbuttonPMin);
1166 gtk_box_pack_start (GTK_BOX (vbox12), spinbuttonPMin, FALSE, FALSE, 0);
1167 gtk_tooltips_set_tip (tooltips, spinbuttonPMin, QT_TR_NOOP("Minimum quantizer allowed for P-frames"), NULL);
1168
1169 spinbuttonBMin_adj = gtk_adjustment_new (2, 1, 31, 1, 10, 10);
1170 spinbuttonBMin = gtk_spin_button_new (GTK_ADJUSTMENT (spinbuttonBMin_adj), 1, 0);
1171 gtk_widget_show (spinbuttonBMin);
1172 gtk_box_pack_start (GTK_BOX (vbox12), spinbuttonBMin, FALSE, FALSE, 0);
1173 gtk_tooltips_set_tip (tooltips, spinbuttonBMin, QT_TR_NOOP("Minimum quantizer allowed for B-frames"), NULL);
1174
1175 vbox13 = gtk_vbox_new (FALSE, 5);
1176 gtk_widget_show (vbox13);
1177 gtk_box_pack_start (GTK_BOX (hbox14), vbox13, FALSE, FALSE, 0);
1178
1179 labelIFrameQuantizerMax = gtk_label_new (QT_TR_NOOP("Max:"));
1180 gtk_widget_show (labelIFrameQuantizerMax);
1181 gtk_box_pack_start (GTK_BOX (vbox13), labelIFrameQuantizerMax, TRUE, TRUE, 0);
1182 gtk_misc_set_alignment (GTK_MISC (labelIFrameQuantizerMax), 0, 0.5);
1183
1184 labelPFrameQuantizerMax = gtk_label_new (QT_TR_NOOP("Max:"));
1185 gtk_widget_show (labelPFrameQuantizerMax);
1186 gtk_box_pack_start (GTK_BOX (vbox13), labelPFrameQuantizerMax, TRUE, TRUE, 0);
1187 gtk_misc_set_alignment (GTK_MISC (labelPFrameQuantizerMax), 0, 0.5);
1188
1189 labelBFrameQuantizerMax = gtk_label_new (QT_TR_NOOP("Max:"));
1190 gtk_widget_show (labelBFrameQuantizerMax);
1191 gtk_box_pack_start (GTK_BOX (vbox13), labelBFrameQuantizerMax, TRUE, TRUE, 0);
1192 gtk_misc_set_alignment (GTK_MISC (labelBFrameQuantizerMax), 0, 0.5);
1193
1194 vbox14 = gtk_vbox_new (FALSE, 5);
1195 gtk_widget_show (vbox14);
1196 gtk_box_pack_start (GTK_BOX (hbox14), vbox14, FALSE, FALSE, 0);
1197
1198 spinbuttonIMax_adj = gtk_adjustment_new (31, 1, 31, 1, 10, 10);
1199 spinbuttonIMax = gtk_spin_button_new (GTK_ADJUSTMENT (spinbuttonIMax_adj), 1, 0);
1200 gtk_widget_show (spinbuttonIMax);
1201 gtk_box_pack_start (GTK_BOX (vbox14), spinbuttonIMax, FALSE, FALSE, 0);
1202 gtk_tooltips_set_tip (tooltips, spinbuttonIMax, QT_TR_NOOP("Maximum quantizer allowed for I-frames"), NULL);
1203
1204 spinbuttonPMax_adj = gtk_adjustment_new (31, 1, 31, 1, 10, 10);
1205 spinbuttonPMax = gtk_spin_button_new (GTK_ADJUSTMENT (spinbuttonPMax_adj), 1, 0);
1206 gtk_widget_show (spinbuttonPMax);
1207 gtk_box_pack_start (GTK_BOX (vbox14), spinbuttonPMax, FALSE, FALSE, 0);
1208 gtk_tooltips_set_tip (tooltips, spinbuttonPMax, QT_TR_NOOP("Maximum quantizer allowed for P-frames"), NULL);
1209
1210 spinbuttonBMax_adj = gtk_adjustment_new (31, 1, 31, 1, 10, 10);
1211 spinbuttonBMax = gtk_spin_button_new (GTK_ADJUSTMENT (spinbuttonBMax_adj), 1, 0);
1212 gtk_widget_show (spinbuttonBMax);
1213 gtk_box_pack_start (GTK_BOX (vbox14), spinbuttonBMax, FALSE, FALSE, 0);
1214 gtk_tooltips_set_tip (tooltips, spinbuttonBMax, QT_TR_NOOP("Maximum quantizer allowed for B-frames"), NULL);
1215
1216 labelQuantizerRestrictions = gtk_label_new (QT_TR_NOOP("Quantizer restrictions"));
1217 gtk_widget_show (labelQuantizerRestrictions);
1218 gtk_frame_set_label_widget (GTK_FRAME (frameQuantizationRestrictions), labelQuantizerRestrictions);
1219
1220 checkbuttonTrellis = gtk_check_button_new_with_mnemonic (QT_TR_NOOP("_Trellis quantization"));
1221 gtk_widget_show (checkbuttonTrellis);
1222 gtk_box_pack_start (GTK_BOX (vbox10), checkbuttonTrellis, FALSE, FALSE, 0);
1223 gtk_tooltips_set_tip (tooltips, checkbuttonTrellis, QT_TR_NOOP("Rate distortion quantization, will find optimal encoding for each block"), NULL);
1224
1225 labelQuantization = gtk_label_new (QT_TR_NOOP("Quantization"));
1226 gtk_widget_show (labelQuantization);
1227 gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 2), labelQuantization);
1228
1229 vbox15 = gtk_vbox_new (FALSE, 5);
1230 gtk_widget_show (vbox15);
1231 gtk_container_add (GTK_CONTAINER (notebook1), vbox15);
1232 gtk_notebook_set_tab_label_packing (GTK_NOTEBOOK (notebook1), vbox15,
1233 FALSE, FALSE, GTK_PACK_START);
1234 gtk_container_set_border_width (GTK_CONTAINER (vbox15), 5);
1235
1236 frameTwoPassTuning = gtk_frame_new (NULL);
1237 gtk_widget_show (frameTwoPassTuning);
1238 gtk_box_pack_start (GTK_BOX (vbox15), frameTwoPassTuning, FALSE, FALSE, 0);
1239
1240 vbox16 = gtk_vbox_new (FALSE, 10);
1241 gtk_widget_show (vbox16);
1242 gtk_container_add (GTK_CONTAINER (frameTwoPassTuning), vbox16);
1243 gtk_container_set_border_width (GTK_CONTAINER (vbox16), 5);
1244
1245 hbox = gtk_hbox_new (FALSE, 10);
1246 gtk_widget_show (hbox);
1247 gtk_box_pack_start (GTK_BOX (vbox16), hbox, FALSE, FALSE, 0);
1248
1249 vbox17 = gtk_vbox_new (FALSE, 0);
1250 gtk_widget_show (vbox17);
1251 gtk_box_pack_start (GTK_BOX (hbox), vbox17, TRUE, TRUE, 0);
1252
1253 labelIFrameBoost = gtk_label_new (QT_TR_NOOP("I-frame boost (%):"));
1254 gtk_widget_show (labelIFrameBoost);
1255 gtk_box_pack_start (GTK_BOX (vbox17), labelIFrameBoost, TRUE, TRUE, 0);
1256 gtk_misc_set_alignment (GTK_MISC (labelIFrameBoost), 0, 0.5);
1257
1258 labelIFrameCloserThan = gtk_label_new (QT_TR_NOOP("I-frames closer than ... frames..."));
1259 gtk_widget_show (labelIFrameCloserThan);
1260 gtk_box_pack_start (GTK_BOX (vbox17), labelIFrameCloserThan, TRUE, TRUE, 0);
1261 gtk_misc_set_alignment (GTK_MISC (labelIFrameCloserThan), 0, 0.5);
1262
1263 labelAreReducedBy = gtk_label_new (QT_TR_NOOP("...are reduced by (%):"));
1264 gtk_widget_show (labelAreReducedBy);
1265 gtk_box_pack_start (GTK_BOX (vbox17), labelAreReducedBy, TRUE, TRUE, 0);
1266 gtk_misc_set_alignment (GTK_MISC (labelAreReducedBy), 0, 0.5);
1267
1268 labelMaxOverflowImprovement = gtk_label_new (QT_TR_NOOP("Max overflow improvement (%):"));
1269 gtk_widget_show (labelMaxOverflowImprovement);
1270 gtk_box_pack_start (GTK_BOX (vbox17), labelMaxOverflowImprovement, TRUE, TRUE, 0);
1271 gtk_misc_set_alignment (GTK_MISC (labelMaxOverflowImprovement), 0, 0.5);
1272
1273 labelMaxOverflowDegradation = gtk_label_new (QT_TR_NOOP("Max overflow degradation (%):"));
1274 gtk_widget_show (labelMaxOverflowDegradation);
1275 gtk_box_pack_start (GTK_BOX (vbox17), labelMaxOverflowDegradation, TRUE, TRUE, 0);
1276 gtk_misc_set_alignment (GTK_MISC (labelMaxOverflowDegradation), 0, 0.5);
1277
1278 vbox18 = gtk_vbox_new (FALSE, 5);
1279 gtk_widget_show (vbox18);
1280 gtk_box_pack_start (GTK_BOX (hbox), vbox18, FALSE, FALSE, 0);
1281
1282 entryIBoost = gtk_entry_new ();
1283 gtk_widget_show (entryIBoost);
1284 gtk_box_pack_start (GTK_BOX (vbox18), entryIBoost, FALSE, FALSE, 0);
1285 gtk_tooltips_set_tip (tooltips, entryIBoost, QT_TR_NOOP("A value of 20 will give 20% more bits to every I-frame"), NULL);
1286
1287 entryIInterv = gtk_entry_new ();
1288 gtk_widget_show (entryIInterv);
1289 gtk_box_pack_start (GTK_BOX (vbox18), entryIInterv, FALSE, FALSE, 0);
1290 gtk_widget_set_size_request (entryIInterv, 158, -1);
1291 gtk_tooltips_set_tip (tooltips, entryIInterv, QT_TR_NOOP("I-frames appearing in the range below this value will be treated as consecutive keyframes"), NULL);
1292
1293 entryIreduction = gtk_entry_new ();
1294 gtk_widget_show (entryIreduction);
1295 gtk_box_pack_start (GTK_BOX (vbox18), entryIreduction, FALSE, FALSE, 0);
1296 gtk_tooltips_set_tip (tooltips, entryIreduction, QT_TR_NOOP("Reduction of bitrate for the first consecutive I-frames. The last I-frame will get treated normally"), NULL);
1297
1298 entryMaxOvrImp = gtk_entry_new ();
1299 gtk_widget_show (entryMaxOvrImp);
1300 gtk_box_pack_start (GTK_BOX (vbox18), entryMaxOvrImp, FALSE, FALSE, 0);
1301 gtk_tooltips_set_tip (tooltips, entryMaxOvrImp, QT_TR_NOOP("How much of the overflow the codec can eat into during undersized sections - larger values will bridge the gap faster"), NULL);
1302
1303 entryMaxOvrDeg = gtk_entry_new ();
1304 gtk_widget_show (entryMaxOvrDeg);
1305 gtk_box_pack_start (GTK_BOX (vbox18), entryMaxOvrDeg, FALSE, FALSE, 0);
1306 gtk_tooltips_set_tip (tooltips, entryMaxOvrDeg, QT_TR_NOOP("How much of the overflow the codec can eat into during oversized sections - larger values will bridge the gap faster"), NULL);
1307
1308 labelTwoPassTuning = gtk_label_new (QT_TR_NOOP("Two pass tuning"));
1309 gtk_widget_show (labelTwoPassTuning);
1310 gtk_frame_set_label_widget (GTK_FRAME (frameTwoPassTuning), labelTwoPassTuning);
1311
1312 frameCurveCompression = gtk_frame_new (NULL);
1313 gtk_widget_show (frameCurveCompression);
1314 gtk_box_pack_start (GTK_BOX (vbox15), frameCurveCompression, FALSE, FALSE, 0);
1315
1316 hbox18 = gtk_hbox_new (FALSE, 10);
1317 gtk_widget_show (hbox18);
1318 gtk_container_add (GTK_CONTAINER (frameCurveCompression), hbox18);
1319 gtk_container_set_border_width (GTK_CONTAINER (hbox18), 5);
1320
1321 vbox19 = gtk_vbox_new (FALSE, 0);
1322 gtk_widget_show (vbox19);
1323 gtk_box_pack_start (GTK_BOX (hbox18), vbox19, TRUE, TRUE, 0);
1324
1325 labelHighBitrateScenes = gtk_label_new (QT_TR_NOOP("High bitrate scenes (%):"));
1326 gtk_widget_show (labelHighBitrateScenes);
1327 gtk_box_pack_start (GTK_BOX (vbox19), labelHighBitrateScenes, TRUE, TRUE, 0);
1328 gtk_misc_set_alignment (GTK_MISC (labelHighBitrateScenes), 0, 0.5);
1329
1330 labelLowBitrateScenes = gtk_label_new (QT_TR_NOOP("Low bitrate scenes (%):"));
1331 gtk_widget_show (labelLowBitrateScenes);
1332 gtk_box_pack_start (GTK_BOX (vbox19), labelLowBitrateScenes, TRUE, TRUE, 0);
1333 gtk_misc_set_alignment (GTK_MISC (labelLowBitrateScenes), 0, 0.5);
1334
1335 labelOverflowControlStrength = gtk_label_new (QT_TR_NOOP("Overflow control strength (%):"));
1336 gtk_widget_show (labelOverflowControlStrength);
1337 gtk_box_pack_start (GTK_BOX (vbox19), labelOverflowControlStrength, TRUE, TRUE, 0);
1338 gtk_misc_set_alignment (GTK_MISC (labelOverflowControlStrength), 0, 0.5);
1339
1340 vbox20 = gtk_vbox_new (FALSE, 5);
1341 gtk_widget_show (vbox20);
1342 gtk_box_pack_start (GTK_BOX (hbox18), vbox20, FALSE, FALSE, 0);
1343
1344 entryHiPass = gtk_entry_new ();
1345 gtk_widget_show (entryHiPass);
1346 gtk_box_pack_start (GTK_BOX (vbox20), entryHiPass, FALSE, FALSE, 0);
1347 gtk_tooltips_set_tip (tooltips, entryHiPass, QT_TR_NOOP("The higher this value, the more bits get taken from frames larger than the average size, and redistributed to others"), NULL);
1348
1349 entryLowPass = gtk_entry_new ();
1350 gtk_widget_show (entryLowPass);
1351 gtk_box_pack_start (GTK_BOX (vbox20), entryLowPass, FALSE, FALSE, 0);
1352 gtk_tooltips_set_tip (tooltips, entryLowPass, QT_TR_NOOP("The higher this value, the more bits get assigned to frames below the average frame size"), NULL);
1353
1354 entryOvrControl = gtk_entry_new ();
1355 gtk_widget_show (entryOvrControl);
1356 gtk_box_pack_start (GTK_BOX (vbox20), entryOvrControl, FALSE, FALSE, 0);
1357 gtk_tooltips_set_tip (tooltips, entryOvrControl, QT_TR_NOOP("0 = default from core (let XviD decide), else overflow payback percent per frame"), NULL);
1358
1359 labelCurveCompression = gtk_label_new (QT_TR_NOOP("Curve compression"));
1360 gtk_widget_show (labelCurveCompression);
1361 gtk_frame_set_label_widget (GTK_FRAME (frameCurveCompression), labelCurveCompression);
1362
1363 labelSecondPass = gtk_label_new (QT_TR_NOOP("Second Pass"));
1364 gtk_widget_show (labelSecondPass);
1365 gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 3), labelSecondPass);
1366
1367 dialog_action_area1 = GTK_DIALOG (dialog1)->action_area;
1368 gtk_widget_show (dialog_action_area1);
1369 gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area1), GTK_BUTTONBOX_END);
1370
1371 cancelbutton1 = gtk_button_new_from_stock ("gtk-cancel");
1372 gtk_widget_show (cancelbutton1);
1373 gtk_dialog_add_action_widget (GTK_DIALOG (dialog1), cancelbutton1, GTK_RESPONSE_CANCEL);
1374 GTK_WIDGET_SET_FLAGS (cancelbutton1, GTK_CAN_DEFAULT);
1375
1376 okbutton1 = gtk_button_new_from_stock ("gtk-ok");
1377 gtk_widget_show (okbutton1);
1378 gtk_dialog_add_action_widget (GTK_DIALOG (dialog1), okbutton1, GTK_RESPONSE_OK);
1379 GTK_WIDGET_SET_FLAGS (okbutton1, GTK_CAN_DEFAULT);
1380
1381 /* Store pointers to all widgets, for use by lookup_widget(). */
1382 GLADE_HOOKUP_OBJECT_NO_REF (dialog1, dialog1, "dialog1");
1383 GLADE_HOOKUP_OBJECT_NO_REF (dialog1, dialog_vbox1, "dialog_vbox1");
1384 GLADE_HOOKUP_OBJECT (dialog1, notebook1, "notebook1");
1385 GLADE_HOOKUP_OBJECT (dialog1, vbox2, "vbox2");
1386 GLADE_HOOKUP_OBJECT (dialog1, frame1, "frame1");
1387 GLADE_HOOKUP_OBJECT (dialog1, vbox3, "vbox3");
1388 GLADE_HOOKUP_OBJECT (dialog1, hbox19, "hbox19");
1389 GLADE_HOOKUP_OBJECT (dialog1, vbox21, "vbox21");
1390 GLADE_HOOKUP_OBJECT (dialog1, label10, "label10");
1391 GLADE_HOOKUP_OBJECT (dialog1, label11, "label11");
1392 GLADE_HOOKUP_OBJECT (dialog1, label12, "label12");
1393 GLADE_HOOKUP_OBJECT (dialog1, vbox22, "vbox22");
1394 GLADE_HOOKUP_OBJECT (dialog1, optionmenuType, "optionmenuType");
1395 GLADE_HOOKUP_OBJECT (dialog1, menu1, "menu1");
1396 GLADE_HOOKUP_OBJECT (dialog1, one_pass_cbr1, "one_pass_cbr1");
1397 GLADE_HOOKUP_OBJECT (dialog1, one_pass_quantizer1, "one_pass_quantizer1");
1398 GLADE_HOOKUP_OBJECT (dialog1, two_pass1, "two_pass1");
1399 GLADE_HOOKUP_OBJECT (dialog1, two_pass__average_bitrate1, "two_pass__average_bitrate1");
1400 GLADE_HOOKUP_OBJECT (dialog1, same_qz_as_input1, "same_qz_as_input1");
1401 GLADE_HOOKUP_OBJECT (dialog1, entryEntry, "entryEntry");
1402 GLADE_HOOKUP_OBJECT (dialog1, spinbuttonQuant, "spinbuttonQuant");
1403 GLADE_HOOKUP_OBJECT (dialog1, label9, "label9");
1404 GLADE_HOOKUP_OBJECT (dialog1, hbox7, "hbox7");
1405 GLADE_HOOKUP_OBJECT (dialog1, vbox4, "vbox4");
1406 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonInterlaced, "checkbuttonInterlaced");
1407 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonGreyScale, "checkbuttonGreyScale");
1408 GLADE_HOOKUP_OBJECT (dialog1, vbox5, "vbox5");
1409 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonCartoon, "checkbuttonCartoon");
1410 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonChroma, "checkbuttonChroma");
1411 GLADE_HOOKUP_OBJECT (dialog1, vbox23, "vbox23");
1412 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonTurbo, "checkbuttonTurbo");
1413 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonPacked, "checkbuttonPacked");
1414 GLADE_HOOKUP_OBJECT (dialog1, labelMain, "labelMain");
1415 GLADE_HOOKUP_OBJECT (dialog1, vbox6, "vbox6");
1416 GLADE_HOOKUP_OBJECT (dialog1, hbox8, "hbox8");
1417 GLADE_HOOKUP_OBJECT (dialog1, vbox8, "vbox8");
1418 GLADE_HOOKUP_OBJECT (dialog1, labelMotionSearchPrecision, "labelMotionSearchPrecision");
1419 GLADE_HOOKUP_OBJECT (dialog1, labelVHQMode, "labelVHQMode");
1420 GLADE_HOOKUP_OBJECT (dialog1, vbox7, "vbox7");
1421 GLADE_HOOKUP_OBJECT (dialog1, optionmenuMS, "optionmenuMS");
1422 GLADE_HOOKUP_OBJECT (dialog1, menu2, "menu2");
1423 GLADE_HOOKUP_OBJECT (dialog1, _0___none1, "_0___none1");
1424 GLADE_HOOKUP_OBJECT (dialog1, _1___very_low1, "_1___very_low1");
1425 GLADE_HOOKUP_OBJECT (dialog1, _2___low2, "_2___low2");
1426 GLADE_HOOKUP_OBJECT (dialog1, _3___medium1, "_3___medium1");
1427 GLADE_HOOKUP_OBJECT (dialog1, _4___high1, "_4___high1");
1428 GLADE_HOOKUP_OBJECT (dialog1, _5___very_high1, "_5___very_high1");
1429 GLADE_HOOKUP_OBJECT (dialog1, _6___ultra_high1, "_6___ultra_high1");
1430 GLADE_HOOKUP_OBJECT (dialog1, optionmenuVHQ, "optionmenuVHQ");
1431 GLADE_HOOKUP_OBJECT (dialog1, menu3, "menu3");
1432 GLADE_HOOKUP_OBJECT (dialog1, _0___off1, "_0___off1");
1433 GLADE_HOOKUP_OBJECT (dialog1, _1___mode_decision1, "_1___mode_decision1");
1434 GLADE_HOOKUP_OBJECT (dialog1, _2___limited_search1, "_2___limited_search1");
1435 GLADE_HOOKUP_OBJECT (dialog1, _3___medium_search1, "_3___medium_search1");
1436 GLADE_HOOKUP_OBJECT (dialog1, _4___wide_search1, "_4___wide_search1");
1437 GLADE_HOOKUP_OBJECT (dialog1, hbox10, "hbox10");
1438 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonChromaMotion, "checkbuttonChromaMotion");
1439 GLADE_HOOKUP_OBJECT (dialog1, checkbutton4MV, "checkbutton4MV");
1440 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonHQAC, "checkbuttonHQAC");
1441 GLADE_HOOKUP_OBJECT (dialog1, hbox9, "hbox9");
1442 GLADE_HOOKUP_OBJECT (dialog1, labelIFrameIntervalMin, "labelIFrameIntervalMin");
1443 GLADE_HOOKUP_OBJECT (dialog1, spinbuttonIMinPeriod, "spinbuttonIMinPeriod");
1444 GLADE_HOOKUP_OBJECT (dialog1, labelIFrameIntervalMax, "labelIFrameIntervalMax");
1445 GLADE_HOOKUP_OBJECT (dialog1, spinbuttonIMaxPeriod, "spinbuttonIMaxPeriod");
1446 GLADE_HOOKUP_OBJECT (dialog1, frameAdvancedSimpleProfile, "frameAdvancedSimpleProfile");
1447 GLADE_HOOKUP_OBJECT (dialog1, vbox9, "vbox9");
1448 GLADE_HOOKUP_OBJECT (dialog1, hbox11, "hbox11");
1449 GLADE_HOOKUP_OBJECT (dialog1, labelNumberOfBFrames, "labelNumberOfBFrames");
1450 GLADE_HOOKUP_OBJECT (dialog1, spinbuttonBFrame, "spinbuttonBFrame");
1451 GLADE_HOOKUP_OBJECT (dialog1, hbox12, "hbox12");
1452 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonQPel, "checkbuttonQPel");
1453 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonGMC, "checkbuttonGMC");
1454 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonBVHQ, "checkbuttonBVHQ");
1455 GLADE_HOOKUP_OBJECT (dialog1, labelAdvancedSimpleProfile, "labelAdvancedSimpleProfile");
1456 GLADE_HOOKUP_OBJECT (dialog1, checkbutton_par_asinput, "checkbutton_par_asinput");
1457 GLADE_HOOKUP_OBJECT (dialog1, spinbutton_par_width, "spinbutton_par_width");
1458 GLADE_HOOKUP_OBJECT (dialog1, spinbutton_par_height, "spinbutton_par_height");
1459 GLADE_HOOKUP_OBJECT (dialog1, labelMotionEstimation, "labelMotionEstimation");
1460 GLADE_HOOKUP_OBJECT (dialog1, vbox10, "vbox10");
1461 GLADE_HOOKUP_OBJECT (dialog1, hbox13, "hbox13");
1462 GLADE_HOOKUP_OBJECT (dialog1, labelQuantizationType, "labelQuantizationType");
1463 GLADE_HOOKUP_OBJECT (dialog1, radiobuttonH263, "radiobuttonH263");
1464 GLADE_HOOKUP_OBJECT (dialog1, radiobuttonMpeg, "radiobuttonMpeg");
1465 GLADE_HOOKUP_OBJECT (dialog1, radiobuttonCustomMatrix, "radiobuttonCustomMatrix");
1466 GLADE_HOOKUP_OBJECT (dialog1, hbox20, "hbox20");
1467 GLADE_HOOKUP_OBJECT (dialog1, labelLoadCustomMatrix, "labelLoadCustomMatrix");
1468 GLADE_HOOKUP_OBJECT (dialog1, buttonLoadMatrix, "buttonLoadMatrix");
1469 GLADE_HOOKUP_OBJECT (dialog1, alignment6, "alignment6");
1470 GLADE_HOOKUP_OBJECT (dialog1, hbox21, "hbox21");
1471 GLADE_HOOKUP_OBJECT (dialog1, image1, "image1");
1472 GLADE_HOOKUP_OBJECT (dialog1, label13, "label13");
1473 GLADE_HOOKUP_OBJECT (dialog1, vseparator1, "vseparator1");
1474 GLADE_HOOKUP_OBJECT (dialog1, buttonCreateCustomMatrix, "buttonCreateCustomMatrix");
1475 GLADE_HOOKUP_OBJECT (dialog1, frameQuantizationRestrictions, "frameQuantizationRestrictions");
1476 GLADE_HOOKUP_OBJECT (dialog1, hbox14, "hbox14");
1477 GLADE_HOOKUP_OBJECT (dialog1, vbox11, "vbox11");
1478 GLADE_HOOKUP_OBJECT (dialog1, labelIFrameQuantizerMin, "labelIFrameQuantizerMin");
1479 GLADE_HOOKUP_OBJECT (dialog1, labelPFrameQuantizerMin, "labelPFrameQuantizerMin");
1480 GLADE_HOOKUP_OBJECT (dialog1, labelBFrameQuantizaterMin, "labelBFrameQuantizaterMin");
1481 GLADE_HOOKUP_OBJECT (dialog1, vbox12, "vbox12");
1482 GLADE_HOOKUP_OBJECT (dialog1, spinbuttonIMin, "spinbuttonIMin");
1483 GLADE_HOOKUP_OBJECT (dialog1, spinbuttonPMin, "spinbuttonPMin");
1484 GLADE_HOOKUP_OBJECT (dialog1, spinbuttonBMin, "spinbuttonBMin");
1485 GLADE_HOOKUP_OBJECT (dialog1, vbox13, "vbox13");
1486 GLADE_HOOKUP_OBJECT (dialog1, labelIFrameQuantizerMax, "labelIFrameQuantizerMax");
1487 GLADE_HOOKUP_OBJECT (dialog1, labelPFrameQuantizerMax, "labelPFrameQuantizerMax");
1488 GLADE_HOOKUP_OBJECT (dialog1, labelBFrameQuantizerMax, "labelBFrameQuantizerMax");
1489 GLADE_HOOKUP_OBJECT (dialog1, vbox14, "vbox14");
1490 GLADE_HOOKUP_OBJECT (dialog1, spinbuttonIMax, "spinbuttonIMax");
1491 GLADE_HOOKUP_OBJECT (dialog1, spinbuttonPMax, "spinbuttonPMax");
1492 GLADE_HOOKUP_OBJECT (dialog1, spinbuttonBMax, "spinbuttonBMax");
1493 GLADE_HOOKUP_OBJECT (dialog1, labelQuantizerRestrictions, "labelQuantizerRestrictions");
1494 GLADE_HOOKUP_OBJECT (dialog1, checkbuttonTrellis, "checkbuttonTrellis");
1495 GLADE_HOOKUP_OBJECT (dialog1, labelQuantization, "labelQuantization");
1496 GLADE_HOOKUP_OBJECT (dialog1, vbox15, "vbox15");
1497 GLADE_HOOKUP_OBJECT (dialog1, frameTwoPassTuning, "frameTwoPassTuning");
1498 GLADE_HOOKUP_OBJECT (dialog1, vbox16, "vbox16");
1499 GLADE_HOOKUP_OBJECT (dialog1, hbox, "hbox");
1500 GLADE_HOOKUP_OBJECT (dialog1, vbox17, "vbox17");
1501 GLADE_HOOKUP_OBJECT (dialog1, labelIFrameBoost, "labelIFrameBoost");
1502 GLADE_HOOKUP_OBJECT (dialog1, labelIFrameCloserThan, "labelIFrameCloserThan");
1503 GLADE_HOOKUP_OBJECT (dialog1, labelAreReducedBy, "labelAreReducedBy");
1504 GLADE_HOOKUP_OBJECT (dialog1, labelMaxOverflowImprovement, "labelMaxOverflowImprovement");
1505 GLADE_HOOKUP_OBJECT (dialog1, labelMaxOverflowDegradation, "labelMaxOverflowDegradation");
1506 GLADE_HOOKUP_OBJECT (dialog1, vbox18, "vbox18");
1507 GLADE_HOOKUP_OBJECT (dialog1, entryIBoost, "entryIBoost");
1508 GLADE_HOOKUP_OBJECT (dialog1, entryIInterv, "entryIInterv");
1509 GLADE_HOOKUP_OBJECT (dialog1, entryIreduction, "entryIreduction");
1510 GLADE_HOOKUP_OBJECT (dialog1, entryMaxOvrImp, "entryMaxOvrImp");
1511 GLADE_HOOKUP_OBJECT (dialog1, entryMaxOvrDeg, "entryMaxOvrDeg");
1512 GLADE_HOOKUP_OBJECT (dialog1, labelTwoPassTuning, "labelTwoPassTuning");
1513 GLADE_HOOKUP_OBJECT (dialog1, frameCurveCompression, "frameCurveCompression");
1514 GLADE_HOOKUP_OBJECT (dialog1, hbox18, "hbox18");
1515 GLADE_HOOKUP_OBJECT (dialog1, vbox19, "vbox19");
1516 GLADE_HOOKUP_OBJECT (dialog1, labelHighBitrateScenes, "labelHighBitrateScenes");
1517 GLADE_HOOKUP_OBJECT (dialog1, labelLowBitrateScenes, "labelLowBitrateScenes");
1518 GLADE_HOOKUP_OBJECT (dialog1, labelOverflowControlStrength, "labelOverflowControlStrength");
1519 GLADE_HOOKUP_OBJECT (dialog1, vbox20, "vbox20");
1520 GLADE_HOOKUP_OBJECT (dialog1, entryHiPass, "entryHiPass");
1521 GLADE_HOOKUP_OBJECT (dialog1, entryLowPass, "entryLowPass");
1522 GLADE_HOOKUP_OBJECT (dialog1, entryOvrControl, "entryOvrControl");
1523 GLADE_HOOKUP_OBJECT (dialog1, labelCurveCompression, "labelCurveCompression");
1524 GLADE_HOOKUP_OBJECT (dialog1, labelSecondPass, "labelSecondPass");
1525 GLADE_HOOKUP_OBJECT_NO_REF (dialog1, dialog_action_area1, "dialog_action_area1");
1526 GLADE_HOOKUP_OBJECT (dialog1, cancelbutton1, "cancelbutton1");
1527 GLADE_HOOKUP_OBJECT (dialog1, okbutton1, "okbutton1");
1528 GLADE_HOOKUP_OBJECT_NO_REF (dialog1, tooltips, "tooltips");
1529
1530 return dialog1;
1531 }
1532
1533 GtkWidget*
create_dialog3(void)1534 create_dialog3 (void)
1535 {
1536 GtkWidget *dialog3;
1537 GtkWidget *dialog_vbox3;
1538 GtkWidget *vbox26;
1539 GtkWidget *frame7;
1540 GtkWidget *alignment12;
1541 GtkWidget *tableIntra;
1542 GtkWidget *label19;
1543 GtkWidget *frame6;
1544 GtkWidget *alignment11;
1545 GtkWidget *tableInter;
1546 GtkWidget *label18;
1547 GtkWidget *dialog_action_area4;
1548 GtkWidget *button12;
1549 GtkWidget *button13;
1550 GtkWidget *button14;
1551
1552 dialog3 = gtk_dialog_new ();
1553 gtk_window_set_title (GTK_WINDOW (dialog3), QT_TR_NOOP("Edit Custom Matrix"));
1554 gtk_window_set_type_hint (GTK_WINDOW (dialog3), GDK_WINDOW_TYPE_HINT_DIALOG);
1555
1556 dialog_vbox3 = GTK_DIALOG (dialog3)->vbox;
1557 gtk_widget_show (dialog_vbox3);
1558
1559 vbox26 = gtk_vbox_new (FALSE, 0);
1560 gtk_widget_show (vbox26);
1561 gtk_box_pack_start (GTK_BOX (dialog_vbox3), vbox26, TRUE, TRUE, 0);
1562
1563 frame7 = gtk_frame_new (NULL);
1564 gtk_widget_show (frame7);
1565 gtk_box_pack_start (GTK_BOX (vbox26), frame7, TRUE, TRUE, 0);
1566
1567 alignment12 = gtk_alignment_new (0.5, 0.5, 1, 1);
1568 gtk_widget_show (alignment12);
1569 gtk_container_add (GTK_CONTAINER (frame7), alignment12);
1570 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment12), 0, 0, 12, 0);
1571
1572 tableIntra = gtk_table_new (8, 8, FALSE);
1573 gtk_widget_show (tableIntra);
1574 gtk_container_add (GTK_CONTAINER (alignment12), tableIntra);
1575
1576 label19 = gtk_label_new (QT_TR_NOOP("<b>Intra Matrix</b>"));
1577 gtk_widget_show (label19);
1578 gtk_frame_set_label_widget (GTK_FRAME (frame7), label19);
1579 gtk_label_set_use_markup (GTK_LABEL (label19), TRUE);
1580
1581 frame6 = gtk_frame_new (NULL);
1582 gtk_widget_show (frame6);
1583 gtk_box_pack_start (GTK_BOX (vbox26), frame6, TRUE, TRUE, 0);
1584
1585 alignment11 = gtk_alignment_new (0.5, 0.5, 1, 1);
1586 gtk_widget_show (alignment11);
1587 gtk_container_add (GTK_CONTAINER (frame6), alignment11);
1588 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment11), 0, 0, 12, 0);
1589
1590 tableInter = gtk_table_new (8, 8, FALSE);
1591 gtk_widget_show (tableInter);
1592 gtk_container_add (GTK_CONTAINER (alignment11), tableInter);
1593
1594 label18 = gtk_label_new (QT_TR_NOOP("<b>Inter Matrix</b>"));
1595 gtk_widget_show (label18);
1596 gtk_frame_set_label_widget (GTK_FRAME (frame6), label18);
1597 gtk_label_set_use_markup (GTK_LABEL (label18), TRUE);
1598
1599 dialog_action_area4 = GTK_DIALOG (dialog3)->action_area;
1600 gtk_widget_show (dialog_action_area4);
1601 gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area4), GTK_BUTTONBOX_END);
1602
1603 button12 = gtk_button_new_from_stock ("gtk-save");
1604 gtk_widget_show (button12);
1605 gtk_dialog_add_action_widget (GTK_DIALOG (dialog3), button12, 0);
1606 GTK_WIDGET_SET_FLAGS (button12, GTK_CAN_DEFAULT);
1607
1608 button13 = gtk_button_new_from_stock ("gtk-cancel");
1609 gtk_widget_show (button13);
1610 gtk_dialog_add_action_widget (GTK_DIALOG (dialog3), button13, GTK_RESPONSE_CANCEL);
1611 GTK_WIDGET_SET_FLAGS (button13, GTK_CAN_DEFAULT);
1612
1613 button14 = gtk_button_new_from_stock ("gtk-ok");
1614 gtk_widget_show (button14);
1615 gtk_dialog_add_action_widget (GTK_DIALOG (dialog3), button14, GTK_RESPONSE_OK);
1616 GTK_WIDGET_SET_FLAGS (button14, GTK_CAN_DEFAULT);
1617
1618 /* Store pointers to all widgets, for use by lookup_widget(). */
1619 GLADE_HOOKUP_OBJECT_NO_REF (dialog3, dialog3, "dialog3");
1620 GLADE_HOOKUP_OBJECT_NO_REF (dialog3, dialog_vbox3, "dialog_vbox3");
1621 GLADE_HOOKUP_OBJECT (dialog3, vbox26, "vbox26");
1622 GLADE_HOOKUP_OBJECT (dialog3, frame7, "frame7");
1623 GLADE_HOOKUP_OBJECT (dialog3, alignment12, "alignment12");
1624 GLADE_HOOKUP_OBJECT (dialog3, tableIntra, "tableIntra");
1625 GLADE_HOOKUP_OBJECT (dialog3, label19, "label19");
1626 GLADE_HOOKUP_OBJECT (dialog3, frame6, "frame6");
1627 GLADE_HOOKUP_OBJECT (dialog3, alignment11, "alignment11");
1628 GLADE_HOOKUP_OBJECT (dialog3, tableInter, "tableInter");
1629 GLADE_HOOKUP_OBJECT (dialog3, label18, "label18");
1630 GLADE_HOOKUP_OBJECT_NO_REF (dialog3, dialog_action_area4, "dialog_action_area4");
1631 GLADE_HOOKUP_OBJECT (dialog3, button12, "button12");
1632 GLADE_HOOKUP_OBJECT (dialog3, button13, "button13");
1633 GLADE_HOOKUP_OBJECT (dialog3, button14, "button14");
1634
1635 return dialog3;
1636 }
1637 #endif
1638