- p_param->i_width = vi->width;
- p_param->i_height = vi->height;
- p_param->i_fps_num = vi->fps_numerator;
- p_param->i_fps_den = vi->fps_denominator;
- h->num_frames = vi->num_frames;
- p_param->i_csp = X264_CSP_YV12;
-
- fprintf( stderr, "avs [info]: %dx%d @ %.2f fps (%d frames)\n",
- p_param->i_width, p_param->i_height,
- (double)p_param->i_fps_num / p_param->i_fps_den,
- h->num_frames );
+ info->width = vi->width;
+ info->height = vi->height;
+ info->fps_num = vi->fps_numerator;
+ info->fps_den = vi->fps_denominator;
+ h->num_frames = info->num_frames = vi->num_frames;
+ info->thread_safe = 1;
+#if HAVE_SWSCALE
+ if( avs_is_rgb32( vi ) )
+ info->csp = X264_CSP_BGRA | X264_CSP_VFLIP;
+ else if( avs_is_rgb24( vi ) )
+ info->csp = X264_CSP_BGR | X264_CSP_VFLIP;
+ else if( avs_is_yuy2( vi ) )
+ info->csp = PIX_FMT_YUYV422 | X264_CSP_OTHER;
+ else if( avs_is_yv24( vi ) )
+ info->csp = X264_CSP_I444;
+ else if( avs_is_yv16( vi ) )
+ info->csp = X264_CSP_I422;
+ else if( avs_is_yv12( vi ) )
+ info->csp = X264_CSP_I420;
+ else if( avs_is_yv411( vi ) )
+ info->csp = PIX_FMT_YUV411P | X264_CSP_OTHER;
+ else if( avs_is_y8( vi ) )
+ info->csp = PIX_FMT_GRAY8 | X264_CSP_OTHER;
+ else
+ info->csp = X264_CSP_NONE;
+#else
+ info->csp = X264_CSP_I420;
+#endif
+ info->vfr = 0;