Commit Graph

1911 Commits

Author SHA1 Message Date
Herman Chen
a9eeb8f5f1 [vpu]: remove unnecessary vpu_api.h reference
Change-Id: I236999afd553581c521cb549b260236c3fc05f97
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-11-04 09:26:35 +08:00
Herman Chen
93e6a3c2d1 [legacy]: change encoder output size dynamically
If hardware output very large video stream enlarge the corresponding output
buffer size.

Change-Id: Id7e96531e744917fe25a9c0f09effa78eb873697
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-11-03 17:31:00 +08:00
rimon.xu
ad4d41147c [h264e]: fix delta_qp bit order reverse error
Change-Id: I03eec5e9386657ae579613c7067ccce44580de18
Signed-off-by: rimon.xu <rimon.xu@rock-chips.com>
2016-11-03 17:16:32 +08:00
Lin Kesheng
4d2fa9ae4c [mpi_enc_test]: add option num_frame
1. add option num_frame
2. reduce osd region size

Change-Id: I560686178c902755b49422b9c7c89889338216bd
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-11-03 14:15:49 +08:00
timkingh.huang
257d14f7f6 [jpegd]: fix compile warning
note: uintptr_t data type is the same size as void*.

Change-Id: I5ea537f720fab6436d293816e3f618feca15609c
Signed-off-by: timkingh.huang <timkingh.huang@rock-chips.com>
2016-11-03 09:27:21 +08:00
Herman Chen
e541877c54 [legacy]: fix error on setup default width/height
Change-Id: I95e3e7cfb04063a81e5ab9e1dae261f2ed4957f3
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-11-01 16:23:23 +08:00
Herman Chen
d5dc784516 [mpp]: change MPP_DEC_SET_FRAME_INFO interface
Use MppFrame as the input of MPP_DEC_SET_FRAME_INFO control function.

Change-Id: I29974bb90b09239e0f69e75ee3830656851900ae
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-10-31 17:40:46 +08:00
linyuhui
757ded4d9f [m2vd]: use temporal_reference to fix original pts error
1. on original & external pts error use POC/temporal_reference
   in GOP to predict new pts
2. set mpeg2 temporal_reference to MppFrame POC for dpb & cal
   pts debugging

Change-Id: I3bb1b2c6646ddf4f4100c1d87158d81e1e8777ba
2016-10-31 10:02:37 +08:00
Lin Kesheng
fad35922fc [h264e_rkv]: pack cfg into SEI and write to stream
1. add SEI writting interface
2. write extra_info_cfg and rc_cfg to SEI
3. stream_get_pos use s->buf_plus8 rather than s->p_start

Change-Id: I71de4d6f5dc31f21c0a32dc5ded275ced260d861
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-10-25 20:54:06 +08:00
Lin Kesheng
1586aaf1e7 [h264e_codec]: modify H264E input parameter validation
modify H264EncStrmEncode input paramter validation

Change-Id: I578671f6ca94aa85dc5876f7e1039378c60595f4
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-10-24 09:19:40 +08:00
leo.ding
0d77905b08 [h264d]: modify hidden error, use p_hal->strm_len instead.
Change-Id: Ie10b40773a3bad40a613c9500f5cd7d26a0581e9
Signed-off-by: leo.ding <leo.ding@rock-chips.com>
2016-10-24 09:12:57 +08:00
linyuhui
d59f92c0af [h264d]: remove dpb error flag error over-mark
Change-Id: Idf5394bb48c02aa46dd7957ff1cda81d01d8a526
2016-10-24 09:11:44 +08:00
linyuhui
a570a4523e [h264d]: need realloc buffer when nalu length larger than nalu buf size
Change-Id: I4b5e0c67e7226ac9890b02898cd5a892e13f33c4
2016-10-24 09:11:20 +08:00
Lin Kesheng
60a05c1452 [hal_h264e_vpu]: set extra_info_cfg->frame_rate to SPS
Change-Id: I9e612775f12adc402d6d62aeca19e2c147e929dd
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-10-21 11:41:47 +08:00
Herman Chen
c056a31049 [cmake]: fix missing version symbol on Android
Change-Id: Ie9137ddf807b37f8713cb3cbcd41bbf639477446
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-10-20 20:14:10 +08:00
Herman Chen
cd97a84407 [mpp_buffer]: fix macro hand writing error
Change-Id: I6a3799314c345defaaf28b1377d621f51fee4e1a
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-10-18 15:23:09 +08:00
Lin Kesheng
083ed1340e [h264e_ctrl]: modify rc cfg validate log
Change-Id: I0a58171efa1f116b7ed3d822575d86161d1e4c78
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-10-17 17:22:43 +08:00
Herman Chen
d1be7a7b4d [mpp]: add mpp decode function implement
Change-Id: Ia37d42a1b52bb152a5cf98e78b040150d6451124
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-10-11 10:39:46 +08:00
Herman Chen
80140b3966 [ion]: use mpp_log to print scan info
In order to avoid misunderstanding change mpp_err to mpp_log

Change-Id: Id4a0591a0eeb7975fcdf1979b9d45c9b8d076370
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-10-11 10:06:33 +08:00
Herman Chen
e9520d5cb0 [mpi_dec_test]: cleanup test case
separate simple and advanced process

Change-Id: Ie278357e69bb0748e9958952e3a7f5560c75d024
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-10-10 20:08:32 +08:00
Herman Chen
4ed68d1855 [mpp]: fix error of clear input stream length
Change-Id: I06ebf5bc04c813b9e42d6a08e74e38dc56e5b2ca
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-10-10 16:52:48 +08:00
Herman Chen
04b6a23ce2 [test]: modify mpi_dec_test for mjpeg decoding
1. clear input packet length when packet is copied
2. modify mjpeg advanced decoding path in mpi_dec_test
3. add numerator and denominator set prop function
4. remove extra log on first info change
5. fix eos process and buffer size check in advanced decoding flow
6. fix jpegd stream length config error

Change-Id: Id6c26ebda090eb4076f27deaad4d61b4221f2653
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-10-10 11:03:59 +08:00
leo.ding
a76b30c9b1 [vpu_api_legacy]: add default stride frame info for AVC
Change-Id: Iaed040b6b21636f02572ff2ef0ec6f723619b39b
Signed-off-by: leo.ding <leo.ding@rock-chips.com>
2016-10-09 16:56:04 +08:00
leo.ding
6feccc5e68 [h264d]: optimize performance of 4K H.264 video
4K H.264 video had a buffer of stride 4096. This will reduce hardware
performance significantly. So we increase it to be odd times of 256B.
Then hardware performance will restore to normal level.

Change-Id: If6567dc3d13eb7df0375d4fd528e64f56c92f591
Signed-off-by: leo.ding <leo.ding@rock-chips.com>
2016-10-09 14:35:51 +08:00
Lin Kesheng
f04d6604f7 [h264e_rkv]: Implement OSD function
1. add description for OSD cmd in rk_mpi_cmd.h
2. judge if input MppBuffer for OSD is NULL

Change-Id: I6d674c81790d9cf57acdfa23f20c929b56f263e9
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-10-09 10:31:51 +08:00
Lin Kesheng
089660baa8 [hal_h264e_rkv]: support osd configuration
1. add osd control interface
2. remove h264e_hal_rkv_coveragetest_cfg.osd
3. add h264e_hal_test & mpi_enc_test for osd
4. use tool to format code

Change-Id: Iadb3453d8e6976e5f718253f762d144864419e94
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-10-08 11:19:11 +08:00
timkingh.huang
44852d9696 [mpi_dec_test]:add advanced decoding path
(1) when decoding mjpeg, switch to mpi_dec_test_decode_advanced
(2) add advanced decoding interface for mjpeg in vpu_api_legacy.cpp

Change-Id: Ib1848d1686c76826385f76405dda81dd0405cb62
Signed-off-by: timkingh.huang <timkingh.huang@rock-chips.com>
2016-10-08 08:57:41 +08:00
Jung Zhao
deb649610c [drm]: add macro control in os_allocator.c
1. fix compiling error of previous commit
2. can enable drm on x86 pc linux platform

Change-Id: I06271fe0efcaa7de2531c7fb3e21bf9c75781beb
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-10-07 17:37:05 +08:00
Jung Zhao
e9b7563de2 [drm]: disable drm allocator by default
Change-Id: Id2262b3e7154f17aad93c9304d54fbd0c4dd532f
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
2016-10-07 16:56:40 +08:00
sayon.chen
d7870a2423 [m2v] add error mask for m2v dec
Change-Id: I6767625084598e27b2fbcf5dedfe74c613987656
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
2016-09-30 16:47:12 +08:00
sayon.chen
56aecba3f7 [vp8d_parser] fix vp8 gts failure
Rollback entropy probabilities when refresh is not set

Change-Id: I35667dccd16ad9d57526d47c8c41117c8cdc754f
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
2016-09-30 16:45:15 +08:00
Herman Chen
c58df3f3f9 [mpp_enc]: Implement new encoder framework
1. Separate encoder configure to four parts
2. Add Preprocess / OSD / Extra configs
3. Implement mv_info interface

Change-Id: I2350a25c9f40b199cee8ef6c75ac6ca099f143c4
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-09-27 11:08:08 +08:00
Lin Kesheng
3300d13c3c [HAL_H264E_RKV]: complete buffers allocation
1. add HalEncTask.flags.err to decribe errors
2. support alloc error treatment
3. support frame rate configuration
4. user tool to format file mpi_enc_test.c
5. allocate buffer according to color space

Change-Id: I17a89039504390bf1f2ff664a0aa4075b04d33ee
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-09-20 16:52:20 +08:00
Herman Chen
1752473f33 [mpi]: fix -Wstrict-prototypes warning
Change-Id: If9549b213c6b5d5545186e1289a436957160924f
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-14 16:13:28 +08:00
Herman Chen
65df276a8d [cmake]: Fix git not found issue
Change-Id: I887a019a08b74e86f4e69f066d5b6faebc6400cd
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-14 10:08:08 +08:00
Herman Chen
d3ccbde5b1 [cmake]: add toolchain detection for rk1108
Also add codec options

Change-Id: I14b159f6deedb3e325f9500d0c3060fac321e31a
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-13 15:10:31 +08:00
Herman Chen
5f7053520e [test]: fix mpi_enc_test help info
Change-Id: I8eb8b8593e41dab607fe14619504904ba9c01b1b
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-13 11:00:39 +08:00
Herman Chen
30c6bd08c1 [cmake]: add codec option
Use mpp/codecs.cmake to enable/disable codecs in order to reduce library
size.
All decoder and encoder can be disbaled now. Default all open.

Change-Id: I3307460df12f2f3fc82898d823ab2da12002d6c6
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-10 15:46:12 +08:00
timkingh.huang
2ee1843c54 [jpegd]: fix bug for jpeg including DRI (Define Restart Interval)
by configuring reg148

note: DRI specifies the interval between RSTn markers, in macroblocks.
This marker is followed by two bytes indicating the fixed size so it
can be treated like any other variable size segment.

Change-Id: Ifab377c8996c6ace9d7ad114e3dadb817693da28
Signed-off-by: timkingh.huang <timkingh.huang@rock-chips.com>
2016-09-09 17:48:15 +08:00
Herman Chen
243568bd92 [cmake]: set linux/arm cmake script to Release
Change-Id: Id99284a22713276c42b6eedaca3b4cd8695686e2
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-09 14:30:29 +08:00
Lin Kesheng
58f818a772 [hal_h264e_rkv]: supplement rc interface between hal and control
1. add interface 'mb_rc_mode'
2. realize one mb-rc configuration
3. raise time out threshold to maximum 0xf

Change-Id: I41a751caf35791fc48c785d8a243eb2ee0a2aa20
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-09-09 14:26:16 +08:00
herman.chen
a0c0639205 [meta]: modify metadata type and key definition
This is prepare for adding metadata key tree.

Change-Id: Ibd8f4a2c820cdeb5c59ade9a0f80d29e803143da
Signed-off-by: herman.chen <herman.chen@rock-chips.com>
2016-09-08 16:56:45 +08:00
Herman Chen
a0c8a331ad [mpi_enc_test]: add default test without input
Change-Id: Ia8e57e4d9e36b5bedac206bef5ab2abb47ea0b0f
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-08 16:41:56 +08:00
Herman Chen
6679d04fd0 [all]: format code using astyle
Change-Id: I3248cde8fd8133310822813d4fbd9973b43b1388
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-08 15:30:57 +08:00
Lin Kesheng
60373a6973 [all]: format code
use fromdos to change file type, remove ^M in code.

Change-Id: I000202dc51fcff57cc0771455baebea595115b1d
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-09-08 15:21:02 +08:00
Lin Kesheng
ad303826da [hal_h264e_rkv]: fix bugs in hal test
1. do not fix input_image_format while validate syntax,
   now yuv420sp and yuv420p are both supported in test case.
2. change the hw_buf type from MppBuffer* to MppBuffer when dump stream.

Change-Id: Icf6b408e0ccaf07812c5cb2077101ede39d60c5a
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-09-08 10:32:09 +08:00
herman.chen
e5dd9eddb0 [jpege]: modify jpeg encoder controller
1. simplify syntax interface and feedback interface
2. add controller flow, register file regeneration move to hal
3. add control function and can return hardware output length
4. add jpeg header write function

Change-Id: I25899acaeb9c139f9b59d47e4765ec9ea09c0062
2016-09-07 18:33:53 +08:00
Herman Chen
800fe35b34 [misc]: remove unused file
Change-Id: I8e4d9921a37778c2d32116b2e2bdd5e78d17e363
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-06 21:15:53 +08:00
Herman Chen
48e1fa6541 [format]: fix mpp_bitput format
Change-Id: I8cb8c3c38319be5bb68e9a50006f80b904703981
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-06 16:29:29 +08:00
Herman Chen
673bc0eef4 [osal]: fix allocator error on x86_64
x86_64 is for simulation debug. It is just for working flow test.

Change-Id: I2d1cb50e52a104e58f6eaf3b27fd9dcf41b9ada6
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-06 16:22:58 +08:00