Lines Matching refs:params

278 static int cx2341x_get_ctrl(const struct cx2341x_mpeg_params *params,  in cx2341x_get_ctrl()  argument
283 ctrl->value = params->audio_sampling_freq; in cx2341x_get_ctrl()
286 ctrl->value = params->audio_encoding; in cx2341x_get_ctrl()
289 ctrl->value = params->audio_l2_bitrate; in cx2341x_get_ctrl()
292 ctrl->value = params->audio_ac3_bitrate; in cx2341x_get_ctrl()
295 ctrl->value = params->audio_mode; in cx2341x_get_ctrl()
298 ctrl->value = params->audio_mode_extension; in cx2341x_get_ctrl()
301 ctrl->value = params->audio_emphasis; in cx2341x_get_ctrl()
304 ctrl->value = params->audio_crc; in cx2341x_get_ctrl()
307 ctrl->value = params->audio_mute; in cx2341x_get_ctrl()
310 ctrl->value = params->video_encoding; in cx2341x_get_ctrl()
313 ctrl->value = params->video_aspect; in cx2341x_get_ctrl()
316 ctrl->value = params->video_b_frames; in cx2341x_get_ctrl()
319 ctrl->value = params->video_gop_size; in cx2341x_get_ctrl()
322 ctrl->value = params->video_gop_closure; in cx2341x_get_ctrl()
325 ctrl->value = params->video_bitrate_mode; in cx2341x_get_ctrl()
328 ctrl->value = params->video_bitrate; in cx2341x_get_ctrl()
331 ctrl->value = params->video_bitrate_peak; in cx2341x_get_ctrl()
334 ctrl->value = params->video_temporal_decimation; in cx2341x_get_ctrl()
337 ctrl->value = params->video_mute; in cx2341x_get_ctrl()
340 ctrl->value = params->video_mute_yuv; in cx2341x_get_ctrl()
343 ctrl->value = params->stream_type; in cx2341x_get_ctrl()
346 ctrl->value = params->stream_vbi_fmt; in cx2341x_get_ctrl()
349 ctrl->value = params->video_spatial_filter_mode; in cx2341x_get_ctrl()
352 ctrl->value = params->video_spatial_filter; in cx2341x_get_ctrl()
355 ctrl->value = params->video_luma_spatial_filter_type; in cx2341x_get_ctrl()
358 ctrl->value = params->video_chroma_spatial_filter_type; in cx2341x_get_ctrl()
361 ctrl->value = params->video_temporal_filter_mode; in cx2341x_get_ctrl()
364 ctrl->value = params->video_temporal_filter; in cx2341x_get_ctrl()
367 ctrl->value = params->video_median_filter_type; in cx2341x_get_ctrl()
370 ctrl->value = params->video_luma_median_filter_top; in cx2341x_get_ctrl()
373 ctrl->value = params->video_luma_median_filter_bottom; in cx2341x_get_ctrl()
376 ctrl->value = params->video_chroma_median_filter_top; in cx2341x_get_ctrl()
379 ctrl->value = params->video_chroma_median_filter_bottom; in cx2341x_get_ctrl()
382 ctrl->value = params->stream_insert_nav_packets; in cx2341x_get_ctrl()
392 static int cx2341x_set_ctrl(struct cx2341x_mpeg_params *params, int busy, in cx2341x_set_ctrl() argument
399 params->audio_sampling_freq = ctrl->value; in cx2341x_set_ctrl()
404 if (params->capabilities & CX2341X_CAP_HAS_AC3) in cx2341x_set_ctrl()
408 params->audio_encoding = ctrl->value; in cx2341x_set_ctrl()
413 params->audio_l2_bitrate = ctrl->value; in cx2341x_set_ctrl()
418 if (!(params->capabilities & CX2341X_CAP_HAS_AC3)) in cx2341x_set_ctrl()
420 params->audio_ac3_bitrate = ctrl->value; in cx2341x_set_ctrl()
423 params->audio_mode = ctrl->value; in cx2341x_set_ctrl()
426 params->audio_mode_extension = ctrl->value; in cx2341x_set_ctrl()
429 params->audio_emphasis = ctrl->value; in cx2341x_set_ctrl()
432 params->audio_crc = ctrl->value; in cx2341x_set_ctrl()
435 params->audio_mute = ctrl->value; in cx2341x_set_ctrl()
438 params->video_aspect = ctrl->value; in cx2341x_set_ctrl()
442 int gop = params->video_gop_size; in cx2341x_set_ctrl()
443 params->video_b_frames = ctrl->value; in cx2341x_set_ctrl()
444 params->video_gop_size = b * ((gop + b - 1) / b); in cx2341x_set_ctrl()
446 while (params->video_gop_size > 34) in cx2341x_set_ctrl()
447 params->video_gop_size -= b; in cx2341x_set_ctrl()
451 int b = params->video_b_frames + 1; in cx2341x_set_ctrl()
453 params->video_gop_size = b * ((gop + b - 1) / b); in cx2341x_set_ctrl()
455 while (params->video_gop_size > 34) in cx2341x_set_ctrl()
456 params->video_gop_size -= b; in cx2341x_set_ctrl()
457 ctrl->value = params->video_gop_size; in cx2341x_set_ctrl()
461 params->video_gop_closure = ctrl->value; in cx2341x_set_ctrl()
467 if (params->video_encoding == V4L2_MPEG_VIDEO_ENCODING_MPEG_1 && in cx2341x_set_ctrl()
470 params->video_bitrate_mode = ctrl->value; in cx2341x_set_ctrl()
475 params->video_bitrate = ctrl->value; in cx2341x_set_ctrl()
480 params->video_bitrate_peak = ctrl->value; in cx2341x_set_ctrl()
483 params->video_temporal_decimation = ctrl->value; in cx2341x_set_ctrl()
486 params->video_mute = (ctrl->value != 0); in cx2341x_set_ctrl()
489 params->video_mute_yuv = ctrl->value; in cx2341x_set_ctrl()
494 params->stream_type = ctrl->value; in cx2341x_set_ctrl()
495 params->video_encoding = in cx2341x_set_ctrl()
496 (params->stream_type == V4L2_MPEG_STREAM_TYPE_MPEG1_SS || in cx2341x_set_ctrl()
497 params->stream_type == V4L2_MPEG_STREAM_TYPE_MPEG1_VCD) ? in cx2341x_set_ctrl()
500 if (params->video_encoding == V4L2_MPEG_VIDEO_ENCODING_MPEG_1) in cx2341x_set_ctrl()
502 params->video_bitrate_mode = in cx2341x_set_ctrl()
506 params->stream_vbi_fmt = ctrl->value; in cx2341x_set_ctrl()
509 params->video_spatial_filter_mode = ctrl->value; in cx2341x_set_ctrl()
512 params->video_spatial_filter = ctrl->value; in cx2341x_set_ctrl()
515 params->video_luma_spatial_filter_type = ctrl->value; in cx2341x_set_ctrl()
518 params->video_chroma_spatial_filter_type = ctrl->value; in cx2341x_set_ctrl()
521 params->video_temporal_filter_mode = ctrl->value; in cx2341x_set_ctrl()
524 params->video_temporal_filter = ctrl->value; in cx2341x_set_ctrl()
527 params->video_median_filter_type = ctrl->value; in cx2341x_set_ctrl()
530 params->video_luma_median_filter_top = ctrl->value; in cx2341x_set_ctrl()
533 params->video_luma_median_filter_bottom = ctrl->value; in cx2341x_set_ctrl()
536 params->video_chroma_median_filter_top = ctrl->value; in cx2341x_set_ctrl()
539 params->video_chroma_median_filter_bottom = ctrl->value; in cx2341x_set_ctrl()
542 params->stream_insert_nav_packets = ctrl->value; in cx2341x_set_ctrl()
584 int cx2341x_ctrl_query(const struct cx2341x_mpeg_params *params, in cx2341x_ctrl_query() argument
599 if (params->capabilities & CX2341X_CAP_HAS_SLICED_VBI) in cx2341x_ctrl_query()
616 if (params->capabilities & CX2341X_CAP_HAS_AC3) { in cx2341x_ctrl_query()
641 if (params->capabilities & CX2341X_CAP_HAS_AC3 && in cx2341x_ctrl_query()
642 params->audio_encoding != V4L2_MPEG_AUDIO_ENCODING_LAYER_2) in cx2341x_ctrl_query()
658 params->audio_mode != V4L2_MPEG_AUDIO_MODE_JOINT_STEREO) in cx2341x_ctrl_query()
684 if (params->capabilities & CX2341X_CAP_HAS_AC3) { in cx2341x_ctrl_query()
685 if (params->audio_encoding != in cx2341x_ctrl_query()
715 params->is_50hz ? 12 : 15); in cx2341x_ctrl_query()
726 params->video_encoding == V4L2_MPEG_VIDEO_ENCODING_MPEG_1) in cx2341x_ctrl_query()
736 params->video_bitrate_mode == in cx2341x_ctrl_query()
761 if (params->video_spatial_filter_mode == in cx2341x_ctrl_query()
772 if (params->video_spatial_filter_mode == in cx2341x_ctrl_query()
783 if (params->video_spatial_filter_mode == in cx2341x_ctrl_query()
798 if (params->video_temporal_filter_mode == in cx2341x_ctrl_query()
813 if (params->video_median_filter_type == in cx2341x_ctrl_query()
822 if (params->video_median_filter_type == in cx2341x_ctrl_query()
831 if (params->video_median_filter_type == in cx2341x_ctrl_query()
840 if (params->video_median_filter_type == in cx2341x_ctrl_query()
909 static void cx2341x_calc_audio_properties(struct cx2341x_mpeg_params *params) in cx2341x_calc_audio_properties() argument
911 params->audio_properties = in cx2341x_calc_audio_properties()
912 (params->audio_sampling_freq << 0) | in cx2341x_calc_audio_properties()
913 (params->audio_mode << 8) | in cx2341x_calc_audio_properties()
914 (params->audio_mode_extension << 10) | in cx2341x_calc_audio_properties()
915 (((params->audio_emphasis == V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17) in cx2341x_calc_audio_properties()
916 ? 3 : params->audio_emphasis) << 12) | in cx2341x_calc_audio_properties()
917 (params->audio_crc << 14); in cx2341x_calc_audio_properties()
919 if ((params->capabilities & CX2341X_CAP_HAS_AC3) && in cx2341x_calc_audio_properties()
920 params->audio_encoding == V4L2_MPEG_AUDIO_ENCODING_AC3) { in cx2341x_calc_audio_properties()
921 params->audio_properties |= in cx2341x_calc_audio_properties()
924 (params->audio_ac3_bitrate << 4) | in cx2341x_calc_audio_properties()
928 params->audio_properties |= in cx2341x_calc_audio_properties()
929 ((3 - params->audio_encoding) << 2) | in cx2341x_calc_audio_properties()
930 ((1 + params->audio_l2_bitrate) << 4); in cx2341x_calc_audio_properties()
963 int cx2341x_ext_ctrls(struct cx2341x_mpeg_params *params, int busy, in cx2341x_ext_ctrls() argument
973 err = cx2341x_get_ctrl(params, ctrl); in cx2341x_ext_ctrls()
987 err = cx2341x_ctrl_query(params, &qctrl); in cx2341x_ext_ctrls()
991 menu_items = cx2341x_ctrl_get_menu(params, qctrl.id); in cx2341x_ext_ctrls()
995 err = cx2341x_set_ctrl(params, busy, ctrl); in cx2341x_ext_ctrls()
1000 params->video_bitrate_mode == V4L2_MPEG_VIDEO_BITRATE_MODE_VBR && in cx2341x_ext_ctrls()
1001 params->video_bitrate_peak < params->video_bitrate) { in cx2341x_ext_ctrls()
1008 cx2341x_calc_audio_properties(params); in cx2341x_ext_ctrls()