[][src]Function ffav_sys::swr_build_matrix

pub unsafe extern "C" fn swr_build_matrix(
    in_layout: u64,
    out_layout: u64,
    center_mix_level: f64,
    surround_mix_level: f64,
    lfe_mix_level: f64,
    rematrix_maxval: f64,
    rematrix_volume: f64,
    matrix: *mut f64,
    stride: c_int,
    matrix_encoding: AVMatrixEncoding,
    log_ctx: *mut c_void
) -> c_int

Generate a channel mixing matrix.

This function is the one used internally by libswresample for building the default mixing matrix. It is made public just as a utility function for building custom matrices.

@param in_layout input channel layout @param out_layout output channel layout @param center_mix_level mix level for the center channel @param surround_mix_level mix level for the surround channel(s) @param lfe_mix_level mix level for the low-frequency effects channel @param rematrix_maxval if 1.0, coefficients will be normalized to prevent overflow. if INT_MAX, coefficients will not be normalized. @param[out] matrix mixing coefficients; matrix[i + stride * o] is the weight of input channel i in output channel o. @param stride distance between adjacent input channels in the matrix array @param matrix_encoding matrixed stereo downmix mode (e.g. dplii) @param log_ctx parent logging context, can be NULL @return 0 on success, negative AVERROR code on failure