Hi,
I'm connect a sensor(2464x2096@25FPS) to Ti8167, my RDK version is DVRRDK_04.01.00.02. I had updated the codecs version as following:
-h264dec_DIR := $(TI_SW_ROOT)/codecs/REL.500.V.H264AVC.D.HP.IVAHD.02.00.08.00
-h264enc_DIR := $(TI_SW_ROOT)/codecs/REL.500.V.H264AVC.E.IVAHD.02.00.06.00
+h264dec_DIR := $(TI_SW_ROOT)/codecs/REL.500.V.H264AVC.D.HP.IVAHD.02.00.15.00
+h264enc_DIR := $(TI_SW_ROOT)/codecs/REL.500.V.H264AVC.E.IVAHD.02.00.08.00
h264dec_PATH := $(h264dec_DIR)/500.V.H264AVC.D.HP.IVAHD.02.00/IVAHD_001
h264enc_PATH := $(h264enc_DIR)/500.V.H264AVC.E.IVAHD.02.00/IVAHD_001
jpegdec_DIR := $(TI_SW_ROOT)/codecs/REL.500.V.MJPEG.D.IVAHD.01.00.06.00
-jpegenc_DIR := $(TI_SW_ROOT)/codecs/REL.500.V.MJPEG.E.IVAHD.01.00.04.00
+jpegenc_DIR := $(TI_SW_ROOT)/codecs/REL.500.V.MJPEG.E.IVAHD.01.00.15.00
Our board's DDR is 2GB. I'll show my link struct with a visio file. The Ti8167 will encode three streams at the same time.
My systemVid_encDecIvaChMapTbl listed following,
static SystemVideo_Ivahd2ChMap_Tbl systemVid_encDecIvaChMapTbl = {
.isPopulated = 1,
.ivaMap[0] =
{
.EncNumCh = 4,
.EncChList = {0, 3, 6, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.DecNumCh = 4,
.DecChList = {8, 10, 12, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
},
.ivaMap[1] {
.EncNumCh = 4,
.EncChList = {1, 4, 7, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.DecNumCh = 4,
.DecChList = {9, 11, 13, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
},
.ivaMap[2] =
{
.EncNumCh = 8,
.EncChList = {2, 5, 8, 11, 12, 13, 14, 15, 0, 0, 0, 0, 0, 0, 0, 0},
.DecNumCh = 8,
.DecChList = {0, 1, 2, 3, 4, 5, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0},
},
};
Condition A:
2464x2096@25FPS MJPEG + 1080P@25FPS H264 + 720P/D1@25FPS H264 (In visio file, link 0 + 2 + 3 )
Stream |
2464x2096@25FPS MJPEG |
1080P@25FPS H264 |
720P@25FPS H264 |
Enc Channel |
0 |
5 |
6 |
In this condition, everything is ok.
Condition B:
2464x2096@25FPS MJPEG + 1080P@25FPS H264 + 2464x2096@25FPS H264 (In visio file, link 0 + 2 + 1 )
Stream |
2646x2096@25FPS MJPEG |
1080P@25FPS H264 |
2464x2096@25FPS H264 |
Enc Channel |
0 |
5 |
4 |
In this condtion, I can found some white lines at the left side in both MJPEG stream and H264 stream frequently.
I had uploaded a H264 file to show this issue. It can be playback with VLC,
My Sensor timmming is listed following:
H_TOTAL:2818
V_TOTAL:2100
active pixel:2496 x 2096
Pixel clock: 150MHz
Frame Rate: 25fps
In our application, the FPGA copied the sensor data to VP1 and VP2 at the same time. so the capture's bandwidth is 2464x2096@50FPS.
In this condtion, It looks like casued by capture vpdma overrun or encoder vpdma underrun. but I have't found any
error message in UART console.
Please help me to analysis this issue. Thanks!