@@ -57,13 +57,6 @@ static const char* detect_bom(const char* buf, const size_t bufsize) {
5757 return "UTF-8" ;
5858}
5959
60- #ifdef _WIN32
61- #define WIN32_LEAN_AND_MEAN
62- #include <windows.h>
63- #else
64- #include <sys/stat.h>
65- #endif
66-
6760#ifdef _WIN32
6861static wchar_t * utf8_to_utf16le (const char * data ) {
6962 const int out_size = MultiByteToWideChar (CP_UTF8 , 0 , data , -1 , NULL , 0 );
@@ -216,7 +209,6 @@ AVS_Value AVSC_CC assrender_create(AVS_ScriptEnvironment* env, AVS_Value args,
216209 AVS_FilterInfo * fi ;
217210 AVS_Clip * c = avs_new_c_filter (env , & fi , avs_array_elt (args , 0 ), 1 );
218211 const AVS_VideoInfo * vi = & fi -> vi ;
219- char e [250 ];
220212
221213 const char * f = avs_as_string (avs_array_elt (args , 1 ));
222214 const char * vfr = avs_as_string (avs_array_elt (args , 2 ));
@@ -318,7 +310,7 @@ AVS_Value AVSC_CC assrender_create(AVS_ScriptEnvironment* env, AVS_Value args,
318310 if (!strcasecmp (strrchr (f , '.' ), ".srt" )) {
319311 FILE * fp = open_utf8_filename (f , "r" );
320312 if (!fp ) {
321- sprintf ( e , "AssRender: input file '%s' does not exist or is not a regular file" , f );
313+ const char * e = avs_sprintf ( env , "AssRender: input file '%s' does not exist or is not a regular file" , f );
322314 v = avs_new_value_error (e );
323315 avs_release_clip (c );
324316 return v ;
@@ -330,15 +322,15 @@ AVS_Value AVSC_CC assrender_create(AVS_ScriptEnvironment* env, AVS_Value args,
330322
331323 fp = open_utf8_filename (f , "rb" );
332324 if (!fp ) {
333- sprintf ( e , "AssRender: input file '%s' does not exist or is not a regular file" , f );
325+ const char * e = avs_sprintf ( env , "AssRender: input file '%s' does not exist or is not a regular file" , f );
334326 v = avs_new_value_error (e );
335327 avs_release_clip (c );
336328 return v ;
337329 }
338330
339331 buf = read_file_bytes (fp , & bufsize );
340332 if (!buf ) {
341- sprintf ( e , "AssRender: unable to read '%s'" , f );
333+ const char * e = avs_sprintf ( env , "AssRender: unable to read '%s'" , f );
342334 v = avs_new_value_error (e );
343335 avs_release_clip (c );
344336 return v ;
@@ -358,7 +350,7 @@ AVS_Value AVSC_CC assrender_create(AVS_ScriptEnvironment* env, AVS_Value args,
358350 }
359351
360352 if (!ass ) {
361- sprintf ( e , "AssRender: unable to parse '%s'" , f );
353+ const char * e = avs_sprintf ( env , "AssRender: unable to parse '%s'" , f );
362354 v = avs_new_value_error (e );
363355 avs_release_clip (c );
364356 return v ;
@@ -371,7 +363,7 @@ AVS_Value AVSC_CC assrender_create(AVS_ScriptEnvironment* env, AVS_Value args,
371363 FILE * fh = open_utf8_filename (vfr , "r" );
372364
373365 if (!fh ) {
374- sprintf ( e , "AssRender: could not read timecodes file '%s'" , vfr );
366+ const char * e = avs_sprintf ( env , "AssRender: could not read timecodes file '%s'" , vfr );
375367 v = avs_new_value_error (e );
376368 avs_release_clip (c );
377369 return v ;
@@ -380,7 +372,7 @@ AVS_Value AVSC_CC assrender_create(AVS_ScriptEnvironment* env, AVS_Value args,
380372 data -> isvfr = 1 ;
381373
382374 if (fscanf (fh , "# timecode format v%d" , & ver ) != 1 ) {
383- sprintf ( e , "AssRender: invalid timecodes file '%s'" , vfr );
375+ const char * e = avs_sprintf ( env , "AssRender: invalid timecodes file '%s'" , vfr );
384376 v = avs_new_value_error (e );
385377 avs_release_clip (c );
386378 return v ;
@@ -450,13 +442,6 @@ AVS_Value AVSC_CC assrender_create(AVS_ScriptEnvironment* env, AVS_Value args,
450442 color_mt = MATRIX_BT2020 ;
451443 }
452444 else if (!strcasecmp (tmpcsp , "none" ) || !strcasecmp (tmpcsp , "guess" )) {
453- /* not yet
454- * Theoretically only for 10 and 12 bits:
455- if (fi->vi.width > 1920 || fi->vi.height > 1080)
456- color_mt = MATRIX_BT2020;
457- else
458- */
459-
460445 int mt_from_props_ok = 0 ;
461446 matrix_type mt_from_props = MATRIX_NONE ;
462447
@@ -467,10 +452,16 @@ AVS_Value AVSC_CC assrender_create(AVS_ScriptEnvironment* env, AVS_Value args,
467452 if (mt_from_props_ok && mt_from_props != MATRIX_NONE ) {
468453 color_mt = mt_from_props ;
469454 } else {
470- if (vi -> width >= 1280 || vi -> height >= 576 ) {
471- color_mt = MATRIX_PC709 ;
455+ /* not yet
456+ * Theoretically only for 10 and 12 bits:
457+ if (fi->vi.width > 1920 || fi->vi.height > 1080)
458+ color_mt = MATRIX_BT2020;
459+ else
460+ */
461+ if (vi -> width > 1024 || vi -> height > 576 ) {
462+ color_mt = MATRIX_BT709 ;
472463 } else {
473- color_mt = MATRIX_PC601 ;
464+ color_mt = MATRIX_BT601 ;
474465 }
475466 }
476467 }
@@ -501,7 +492,6 @@ AVS_Value AVSC_CC assrender_create(AVS_ScriptEnvironment* env, AVS_Value args,
501492 return v ;
502493 }
503494
504-
505495 switch (fi -> vi .pixel_type )
506496 {
507497 case AVS_CS_YV12 :
0 commit comments