aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBuddy Liong2015-11-24 16:32:11 -0600
committerBuddy Liong2016-03-01 17:11:16 -0600
commit4cde6d994029b7a442bc2e32f161ca3aa284f6fa (patch)
treefa0c79a6f6fea7f64dcb512f11395a83eabe94a9 /dce_rpc.h
parente05d0b506a8f5e9218449d3952ee6c1d327fddb5 (diff)
downloadrepo-libdce-4cde6d994029b7a442bc2e32f161ca3aa284f6fa.tar.gz
repo-libdce-4cde6d994029b7a442bc2e32f161ca3aa284f6fa.tar.xz
repo-libdce-4cde6d994029b7a442bc2e32f161ca3aa284f6fa.zip
H.264 low latency with IVIDEO_NUMROWS
H.264 codec user guide describes the functionality of low latency. This functionality allows user to encode/decode a sub-frame level data communications. Without low latency, user can only encode/decode a complete/full frame only. More information about H264 low latency can be found in codec release package: * H.264 Encoder 2.0 on HDVICP2 and Media Controller Based Platform User's Guide (SPRUHG3), Appendix G - Low Latency / Sub Frame Level Synchronization * H.264 Decoder 2.0 on HDVICP2 and Media Controller Based Platform User's Guide (SPRUHF9), Appendix I - Low Latency / Sub Frame Level Synchronization This commit is only implemented low latency with IVIDEO_NUMROWS. H.264 encoder handles inputDataMode = IVIDEO_NUMROWS with getDataFxn as callback to get the numRows being filled into the inputBuffer pointer passed at process call. From H.264 encoder user guide Appendix G, more details can be found in sec. G2 H.264 Encoder Input with sub frame level synchronization H.264 decoder handles outputDataMode = IVIDEO_NUMROWS with putDataFxn as callback to notify client on the numRows/numBlocks being filled by codec into the outputBuffer pointer passed at process call. From H.264 decoder user guide Appendix I, more details can be found in sec. I.2 Details of using Sub Frame Level data sync at output side. The update is only valid on video codec on IVA-HD. This changes depend on the changes done on IPUMM DCE server. No low latency update is performed on video codec on DSP. This commit has dependencies on: IPC 3.42.00.02 or latest IPUMM commit ids: commit e37750cc921a9442c48e7212824b28850ac3aaa7 - H.264 low latency - IVIDEO_NUMROWS commit 266749c0b6a2584d563625f881f998c3d78ca873 - Handling when MPU crashes, eg. CTRL-C on MPU side. commit 030572aaa1964bb50a903852fab0ecc0149b6b7e - H.264 Low Latency - sync put_DataFxn to MPU side Change-Id: I308bc74a879099f38705df6e6dda4a86b6645986 Signed-off-by: Buddy Liong <buddy.liong@ti.com>
Diffstat (limited to 'dce_rpc.h')
-rw-r--r--dce_rpc.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/dce_rpc.h b/dce_rpc.h
index d1307ce..dcbeaf7 100644
--- a/dce_rpc.h
+++ b/dce_rpc.h
@@ -63,6 +63,12 @@ typedef enum dce_rpc_call {
63 DCE_RPC_CODEC_DELETE 63 DCE_RPC_CODEC_DELETE
64} dce_rpc_call; 64} dce_rpc_call;
65 65
66//Enumeration for dce function callback
67typedef enum dce_callback_rpc_call {
68 DCE_CALLBACK_RPC_GET_DATAFXN = 0,
69 DCE_CALLBACK_RPC_PUT_DATAFXN,
70 DCE_CALLBACK_RPC_GET_BUFFERFXN
71} dce_callback_rpc_call;
66 72
67typedef enum dce_codec_type { 73typedef enum dce_codec_type {
68 OMAP_DCE_VIDENC2 = 1, 74 OMAP_DCE_VIDENC2 = 1,