summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/omx/vid_enc.h
diff options
context:
space:
mode:
authorChristian König <[email protected]>2014-03-26 17:42:19 +0100
committerChristian König <[email protected]>2014-04-22 16:42:08 +0200
commit7eda318ffe372a9c95036f7ff8eaaceb753aae11 (patch)
treefad5dd09350d6959f89ddce95e6e92237341a18b /src/gallium/state_trackers/omx/vid_enc.h
parentb03be6908e7650e8959342f2e352266fabff88c2 (diff)
st/omx/enc: implement frame reordering and B-frames
Signed-off-by: Christian König <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers/omx/vid_enc.h')
-rw-r--r--src/gallium/state_trackers/omx/vid_enc.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gallium/state_trackers/omx/vid_enc.h b/src/gallium/state_trackers/omx/vid_enc.h
index 76bfbea0917..22f276faa6d 100644
--- a/src/gallium/state_trackers/omx/vid_enc.h
+++ b/src/gallium/state_trackers/omx/vid_enc.h
@@ -56,10 +56,11 @@
#define OMX_VID_ENC_CONTROL_FRAME_RATE_DEN_DEFAULT 1001
#define OMX_VID_ENC_QUANT_I_FRAMES_DEFAULT 0x1c
#define OMX_VID_ENC_QUANT_P_FRAMES_DEFAULT 0x1c
-#define OMX_VID_ENC_QUANT_B_FRAMES_DEFAULT 0
+#define OMX_VID_ENC_QUANT_B_FRAMES_DEFAULT 0x1c
#define OMX_VID_ENC_SCALING_WIDTH_DEFAULT 0xffffffff
#define OMX_VID_ENC_SCALING_HEIGHT_DEFAULT 0xffffffff
#define OMX_VID_ENC_IDR_PERIOD_DEFAULT 1000
+#define OMX_VID_ENC_P_PERIOD_DEFAULT 1
#define OMX_VID_ENC_NUM_SCALING_BUFFERS 4
@@ -71,8 +72,11 @@ DERIVEDCLASS(vid_enc_PrivateType, omx_base_filter_PrivateType)
struct pipe_video_codec *codec; \
struct list_head free_tasks; \
struct list_head used_tasks; \
+ struct list_head b_frames; \
OMX_U32 frame_rate; \
OMX_U32 frame_num; \
+ OMX_U32 pic_order_cnt; \
+ OMX_U32 ref_idx_l0, ref_idx_l1; \
OMX_VIDEO_PARAM_BITRATETYPE bitrate; \
OMX_VIDEO_PARAM_QUANTIZATIONTYPE quant; \
OMX_CONFIG_INTRAREFRESHVOPTYPE force_pic_type; \