--- vlc-0.8.6f/modules/codec/dirac.c.orig 2008-04-05 00:08:38.700072896 +0200 +++ vlc-0.8.6f/modules/codec/dirac.c 2008-04-05 00:23:17.139699739 +0200 @@ -145,31 +145,31 @@ int i_plane; p_dec->fmt_out.i_codec = - p_sys->p_dirac->seq_params.chroma == format411 ? - VLC_FOURCC('I','4','1','1') : - p_sys->p_dirac->seq_params.chroma == format420 ? + p_sys->p_dirac->src_params.chroma == format444 ? + VLC_FOURCC('I','4','4','4') : + p_sys->p_dirac->src_params.chroma == format420 ? VLC_FOURCC('I','4','2','0') : - p_sys->p_dirac->seq_params.chroma == format422 ? + p_sys->p_dirac->src_params.chroma == format422 ? VLC_FOURCC('I','4','2','2') : 0; p_dec->fmt_out.video.i_visible_width = - p_dec->fmt_out.video.i_width = p_sys->p_dirac->seq_params.width; + p_dec->fmt_out.video.i_width = p_sys->p_dirac->src_params.width; p_dec->fmt_out.video.i_visible_height = - p_dec->fmt_out.video.i_height = p_sys->p_dirac->seq_params.height; + p_dec->fmt_out.video.i_height = p_sys->p_dirac->src_params.height; p_dec->fmt_out.video.i_aspect = VOUT_ASPECT_FACTOR * 4 / 3; p_dec->fmt_out.video.i_frame_rate = - p_sys->p_dirac->seq_params.frame_rate.numerator; + p_sys->p_dirac->src_params.frame_rate.numerator; p_dec->fmt_out.video.i_frame_rate_base = - p_sys->p_dirac->seq_params.frame_rate.denominator; + p_sys->p_dirac->src_params.frame_rate.denominator; /* Get a new picture */ p_pic = p_dec->pf_vout_buffer_new( p_dec ); if( p_pic == NULL ) return NULL; - p_pic->b_progressive = !p_sys->p_dirac->seq_params.interlace; - p_pic->b_top_field_first = p_sys->p_dirac->seq_params.topfieldfirst; + p_pic->b_progressive = !p_sys->p_dirac->src_params.source_sampling; + p_pic->b_top_field_first = p_sys->p_dirac->src_params.topfieldfirst; p_pic->i_nb_fields = 2; /* Copy picture stride by stride */ @@ -248,19 +248,19 @@ uint8_t *buf[3]; msg_Dbg( p_dec, "%dx%d, chroma %i, %f fps", - p_sys->p_dirac->seq_params.width, - p_sys->p_dirac->seq_params.height, - p_sys->p_dirac->seq_params.chroma, - (float)p_sys->p_dirac->seq_params.frame_rate.numerator/ - p_sys->p_dirac->seq_params.frame_rate.denominator ); + p_sys->p_dirac->src_params.width, + p_sys->p_dirac->src_params.height, + p_sys->p_dirac->src_params.chroma, + (float)p_sys->p_dirac->src_params.frame_rate.numerator/ + p_sys->p_dirac->src_params.frame_rate.denominator ); FreeFrameBuffer( p_sys->p_dirac ); - buf[0] = malloc( p_sys->p_dirac->seq_params.width * - p_sys->p_dirac->seq_params.height ); - buf[1] = malloc( p_sys->p_dirac->seq_params.chroma_width * - p_sys->p_dirac->seq_params.chroma_height ); - buf[2] = malloc( p_sys->p_dirac->seq_params.chroma_width * - p_sys->p_dirac->seq_params.chroma_height ); + buf[0] = malloc( p_sys->p_dirac->src_params.width * + p_sys->p_dirac->src_params.height ); + buf[1] = malloc( p_sys->p_dirac->src_params.chroma_width * + p_sys->p_dirac->src_params.chroma_height ); + buf[2] = malloc( p_sys->p_dirac->src_params.chroma_width * + p_sys->p_dirac->src_params.chroma_height ); dirac_set_buf( p_sys->p_dirac, buf, NULL ); break; @@ -354,18 +354,18 @@ /* Initialse the encoder context with the presets for SD576 - Standard * Definition Digital (some parameters will be overwritten later on) */ - dirac_encoder_context_init( &p_sys->ctx, SD576 ); + dirac_encoder_context_init( &p_sys->ctx, VIDEO_FORMAT_SD_576I50 ); /* Override parameters if required */ - p_sys->ctx.seq_params.width = p_enc->fmt_in.video.i_width; - p_sys->ctx.seq_params.height = p_enc->fmt_in.video.i_height; - p_sys->ctx.seq_params.chroma = format420; - p_sys->ctx.seq_params.frame_rate.numerator = + p_sys->ctx.src_params.width = p_enc->fmt_in.video.i_width; + p_sys->ctx.src_params.height = p_enc->fmt_in.video.i_height; + p_sys->ctx.src_params.chroma = format420; + p_sys->ctx.src_params.frame_rate.numerator = p_enc->fmt_in.video.i_frame_rate; - p_sys->ctx.seq_params.frame_rate.denominator = + p_sys->ctx.src_params.frame_rate.denominator = p_enc->fmt_in.video.i_frame_rate_base; - p_sys->ctx.seq_params.interlace = 0; - p_sys->ctx.seq_params.topfieldfirst = 0; + p_sys->ctx.src_params.source_sampling = 0; + p_sys->ctx.src_params.topfieldfirst = 0; var_Get( p_enc, ENC_CFG_PREFIX "quality", &val ); f_quality = val.f_float;