XDAIS  dais-x04
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Data Fields
IVIDTRANSCODE_DynamicParams Struct Reference

This structure defines the codec parameters that can be modified after creation via control() calls. More...

#include <ividtranscode.h>

Collaboration diagram for IVIDTRANSCODE_DynamicParams:
Collaboration graph

Data Fields

XDAS_Int32 size
XDAS_Int32 readHeaderOnlyFlag
XDAS_Int32 keepInputResolutionFlag [2]
XDAS_Int32 outputHeight [2]
XDAS_Int32 outputWidth [2]
XDAS_Int32 keepInputFrameRateFlag [2]
XDAS_Int32 inputFrameRate
XDAS_Int32 outputFrameRate [2]
XDAS_Int32 targetBitRate [2]
XDAS_Int32 rateControl [2]
XDAS_Int32 keepInputGOPFlag [2]
XDAS_Int32 intraFrameInterval [2]
XDAS_Int32 interFrameInterval [2]
XDAS_Int32 forceFrame [2]
XDAS_Int32 frameSkipTranscodeFlag [2]

Detailed Description

This structure defines the codec parameters that can be modified after creation via control() calls.

Remarks:
It is not necessary that a given implementation support all dynamic parameters to be configurable at run time. If a particular algorithm does not support run-time updates to a parameter that the application is attempting to change at runtime, it may indicate this as an error.
This structure may be extended by individual codec implementations allowing customization with vendor specific parameters. The presence of vendor specific extensions will be detected by the value of the size parameter.
The size field must be correctly set by the caller. See https://processors.wiki.ti.com/index.php/Extending_data_structures_in_XDM for more details.
See also:
IVIDTRANSCODE_Fxns::control()

Field Documentation

XDAS_Int32 IVIDTRANSCODE_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDTRANSCODE_DynamicParams::readHeaderOnlyFlag

Read the seq header, populate outargs, and return.

Remarks:
Possible values XDAS_TRUE, XDAS_FALSE
XDAS_Int32 IVIDTRANSCODE_DynamicParams::keepInputResolutionFlag[2]

Flag for each transcoded stream to indicate if the output frame resolution is to be kept equal to the input frame resolution (i.e. no resolution change).

Remarks:
Possible values XDAS_TRUE, XDAS_FALSE
XDAS_Int32 IVIDTRANSCODE_DynamicParams::outputHeight[2]

Output frame height for each of the transcoded outputs.

Remarks:
Used for scaling.
This field is ignored when the keepInputResolutionFlag is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::outputWidth[2]

Output frame for each of the transcoded outputs.

Remarks:
Used for scaling.
This field is ignored when the keepInputResolution is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::keepInputFrameRateFlag[2]

Flag for each transcoded stream to indicate if the input frame rate is to be maintained (i.e., no frame rate change).

Remarks:
Possible values XDAS_TRUE, XDAS_FALSE
XDAS_Int32 IVIDTRANSCODE_DynamicParams::inputFrameRate

Reference, or input, frame rate in fps * 1000.

Remarks:
For example, if ref frame rate is 30 frames per second, this field will be 30000.
This field is ignored when the keepInputFramerate field is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::outputFrameRate[2]

Target frame rate in fps * 1000, for each of the transcoded outputs.

Remarks:
For example, if target frame rate is 30 frames per second, this field will be 30000.
This field is ignored when the keepInputFramerate field is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::targetBitRate[2]

Target bit rate in bits per second, for each of the transcoded outputs.

XDAS_Int32 IVIDTRANSCODE_DynamicParams::rateControl[2]

Rate control related selection for each of the transcoded outputs.

See also:
IVIDEO_RateControlPreset
XDAS_Int32 IVIDTRANSCODE_DynamicParams::keepInputGOPFlag[2]

Retain the input GOP structure (to the extent possible) flag for each transcoded output.

Remarks:
Possible values are XDAS_TRUE, and XDAS_FALSE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::intraFrameInterval[2]

I frame interval for each of the transcoded outputs.

Remarks:
For example, this field will be:
  • 0 - Only first frame to be intra coded. e.g. IPPPPPP...
  • 1 - No inter frames (all intra frames).
  • 2 - Consecutive IPIPIP... sequence (if no B frames).
  • 3 - IPPIPP... or IPBIPBI... and so on.
This field is ignored when the keepInputGOP field is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::interFrameInterval[2]

Number of B frames between two reference frames for each of the transcoded output.

Remarks:
For example, this field will be:
  • 0 - to use maxInterFrameInterval.
  • 1 - 0 B frames between two reference frames.
  • 2 - 1 B frame between two reference frames.
  • 3 - 2 B frames between two reference frames.
  • and so on...
See also:
IVIDTRANSCODE_Params.maxInterFrameInterval.
Remarks:
This field is ignored when the keepInputGOP field is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::forceFrame[2]

Force the current (immediate) frame within the specific transcoded output to be encoded as a specific frame type.

Remarks:
For example, this field will be:
  • IVIDEO_NA_FRAME - No forcing of any specific frame type for the frame.
  • IVIDEO_I_FRAME - Force the frame to be encoded as I frame.
  • IVIDEO_IDR_FRAME - Force the frame to be encoded as an IDR frame (specific to H.264 codecs).
  • IVIDEO_P_FRAME - Force the frame to be encoded as a P frame.
  • IVIDEO_B_FRAME - Force the frame to be encoded as a B frame.
See also:
IVIDEO_FrameType.
Remarks:
This field is ignored when the keepInputGOPFlag field is set to XDAS_TRUE.
XDAS_Int32 IVIDTRANSCODE_DynamicParams::frameSkipTranscodeFlag[2]

A flag per transcoded output to enforce a frame skip.

Remarks:
Possible values XDAS_TRUE, XDAS_FALSE
This field is ignored when the keepInputGOPFlag field is set to XDAS_TRUE.
See also:
IVIDEO_FrameSkipTranscode

The documentation for this struct was generated from the following file:
Copyright 2013, Texas Instruments Incorporated