2907
- 收藏
- 点赞
- 分享
- 举报
HI_MPI_VENC_SendFrame 帧率控制
平台:HI3516EV300
MMP:4.0
问题描述:
通过V4L2方式从USB摄像头中读取YVU420数据然后通过HI_MPI_VENC_SendFrame 函数将数据发送到编码器中生成H264视频文件,但是生成的H264视频文件,在播放的时候,视频内容类似快进播放的样子。
我的配置步骤如下:
1、使用SAMPLE_COMM_VENC_Start函数启动编码器
[code]
enRcMode = SAMPLE_RC_CBR;
stGopAttr.enGopMode = VENC_GOPMODE_NORMALP; //VENC_GOPMODE_SMARTP
stGopAttr.stNormalP.s32IPQpDelta = 2;
/***encode h.264 **/
s32Ret = SAMPLE_COMM_VENC_Start(VencChn[1], enPayLoad[1], enSize[1], enRcMode,u32Profile[1],bRcnRefShareBuf,&stGopAttr);
if (HI_SUCCESS != s32Ret)
{
SAMPLE_PRT("Venc Start failed for %#x!\n", s32Ret);
goto EXIT_VENC_H264_UnBind;
}
[/code]
2、启动一个线程然后不断的往编码器中送YVU420SP格式的数据
[code]
......
u32Stride = ALIGN_UP((u32Width * 8 + 7) >> 3, DEFAULT_ALIGN);
u32LStride = u32Stride;
u32CStride = u32Stride;
u32Size = u32Stride * u32Height * 3 / 2;
u32LumaSize = u32Stride * u32Height;
u32ChrmSize = u32Stride * u32Height / 4;
memset(&stVbPoolCfg, 0, sizeof(VB_POOL_CONFIG_S));
stVbPoolCfg.u64BlkSize = u32Size;
stVbPoolCfg.u32BlkCnt = 2;
stVbPoolCfg.enRemapMode = VB_REMAP_MODE_NONE;
hPool = HI_MPI_VB_CreatePool(&stVbPoolCfg);
if (hPool == VB_INVALID_POOLID)
{
SAMPLE_PRT("HI_MPI_VB_CreatePool failed! \n");
return (void*)HI_FAILURE;
}
memset(&stFrmInfo.stVFrame, 0, sizeof(VIDEO_FRAME_S));
stFrmInfo.stVFrame.enField = VIDEO_FIELD_FRAME;
stFrmInfo.stVFrame.enCompressMode = COMPRESS_MODE_NONE;
stFrmInfo.stVFrame.enPixelFormat = SAMPLE_PIXEL_FORMAT; //PIXEL_FORMAT_YVU_SEMIPLANAR_420
stFrmInfo.stVFrame.enVideoFormat = VIDEO_FORMAT_LINEAR;
stFrmInfo.stVFrame.enDynamicRange = DYNAMIC_RANGE_SDR8;
stFrmInfo.stVFrame.enColorGamut = COLOR_GAMUT_BT709;
stFrmInfo.stVFrame.u32Width = 1280;
stFrmInfo.stVFrame.u32Height = 720;
stFrmInfo.stVFrame.u32Stride[0] = u32LStride;
stFrmInfo.stVFrame.u32Stride[1] = u32CStride;
stFrmInfo.stVFrame.u32Stride[2] = u32CStride;
stFrmInfo.stVFrame.u32TimeRef = 0;
stFrmInfo.stVFrame.u64PTS = 0;
stFrmInfo.u32PoolId = hPool;//HI_MPI_VB_Handle2PoolId(vbblk);
HI_PDT_UVC_Init(); //初始化USB摄像头
while(pstPara->bThreadStart == HI_TRUE)
{
videofd = HI_PDT_UVC_GetFd(); //获取摄像头文件描述符
if(videofd == -1)
{
SAMPLE_PRT("videofd is unInit\n");
break;
}
FD_ZERO(&fds);
FD_SET(videofd,&fds);
/*Timeout*/
tv.tv_sec = 2;
tv.tv_usec = 0;
u32ret = select(videofd + 1,&fds,NULL,NULL,&tv);
if(0 > u32ret){
if(EINTR == errno)
continue;
perror("Fail to select \n");
break;
}else if(0 == u32ret){
fprintf(stderr,"select Timeout \n");
continue;
}else{
if(!FD_ISSET(videofd,&fds))
continue;
//SAMPLE_PRT("start read frame\n");
while((vbblk = HI_MPI_VB_GetBlock(hPool,u32Size,HI_NULL))== VB_INVALID_HANDLE);
u64PhyAddrs = HI_MPI_VB_Handle2PhysAddr(vbblk);
if(u64PhyAddrs == 0x00)
{
SAMPLE_PRT("HI_MPI_VB_Handle2PhysAddr:%x \n",u64PhyAddrs);
HI_MPI_VB_ReleaseBlock(vbblk);
continue;
}
pVirAddrs = (HI_U8 *)HI_MPI_SYS_Mmap(u64PhyAddrs, u32Size);
if(pVirAddrs == HI_NULL)
{
SAMPLE_PRT("HI_MPI_SYS_Mmap:%#x \n",pVirAddrs);
HI_MPI_VB_ReleaseBlock(vbblk);
continue;
}
stFrmInfo.stVFrame.u64PhyAddr[0] = u64PhyAddrs;
stFrmInfo.stVFrame.u64PhyAddr[1] = stFrmInfo.stVFrame.u64PhyAddr[0] + u32LumaSize;
stFrmInfo.stVFrame.u64PhyAddr[2] = stFrmInfo.stVFrame.u64PhyAddr[1] + u32ChrmSize;
stFrmInfo.stVFrame.u64VirAddr[0] = (HI_U64)(HI_UL)pVirAddrs;
stFrmInfo.stVFrame.u64VirAddr[1] = (HI_UL)(stFrmInfo.stVFrame.u64VirAddr[0]) + u32LumaSize;
stFrmInfo.stVFrame.u64VirAddr[2] = (HI_UL)(stFrmInfo.stVFrame.u64VirAddr[1]) + u32ChrmSize;
u32Cnt++;
stFrmInfo.stVFrame.u64PTS = (u32Cnt * 40);
stFrmInfo.stVFrame.u32TimeRef = (u32Cnt * 2);
HI_PDT_read_frame(videofd,pVirAddrs,u32Size);//读取USB摄像头数据并写入到虚拟地址
HI_MPI_VENC_SendFrame(1, &stFrmInfo, -1);//发送数据到编码器的通道1
HI_MPI_VB_ReleaseBlock(vbblk); //
HI_MPI_SYS_Munmap ((HI_VOID *)(HI_UL)pVirAddrs, u32Size);
usleep(50000);
}
}
[/code]
RC运行日志:
[code]
~ # cat /proc/umap/rc
[RC] Version: [Hi3516EV200_MPP_V1.0.1.0 B050 Release],Build Time[May 9 2019, 22:51:50]
------BASE PARAMS 1------------------------------------------------------------
ChnId Gop StatTm ViFr TrgFr ProType RcMode Br(kbps) FluLev IQp PQp BQp
0 30 1 30 30 96 CBR 512 1 N/A N/A N/A
1 30 1 12 8 96 CBR 3072 1 N/A N/A N/A
------BASE PARAMS 2------------------------------------------------------------
ChnId MinQp MaxQp MinIQp MaxIQp EnableIdr bQpMapEn QpMapMode
0 10 51 10 51 Y N N/A
1 10 51 10 51 Y N N/A
------BASE PARAMS 3------------------------------------------------------------
ChnId LongTermStatTime ShortTermStatTime LongTermMaxBitrate LongTermMinBitrate
-----RUN COMM PARAM 1----------------------------------------------------------
ChnId RowQpDelta ThrdI(16)
0 1 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
1 1 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
-----RUN COMM PARAM 2------------------------------------------------------------
ChnId FirstFrmStartQP ThrdP(16)
0 -1 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
1 -1 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
-----RUN COMM PARAM 3----------------------------------------------------------
ChnId DirectionThrd ThrdB(16)
0 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
1 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
-----RUN COMM PARAM 4----------------------------------------------------------
ChnId bLost LostThr LostFrmStr EncGap RCPriority SprFrmMod SprIFrm SprPFrm SprBFrm bClrStat
0 N 83886080 NORMAl 0 BITRATE None 500000 500000 500000 1
1 N 83886080 NORMAl 0 BITRATE None 500000 500000 500000 1
-----RUN COMM PARAM 5----------------------------------------------------------
ChnId bDetectSceneChange bAdapInsertIFrame
0 Y N
1 Y N
-----Foreground INFO 1----------------------------------------------------------
ChnId bThrdEn DirectionThrd ThrdP(16)
0 0 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 20 20 25 25]
1 0 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 20 20 25 25]
-----Foreground INFO 2----------------------------------------------------------
ChnId ThreshGain ThreshOffset ThrdB(16)
0 8 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 20 20 25 25]
1 8 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 20 20 25 25]
-----GOP MODE ATTR-------------------------------------------------------------
ChnId GopMode IpQpDelta SPInterval SPQpDelta BFrmNum BQpDelta BgInterval ViQpDelta
0 NormalP 2 N/A N/A N/A N/A N/A N/A
1 NormalP 2 N/A N/A N/A N/A N/A N/A
-----RUN CBR PARAM ------------------------------------------------------------
ChnId MinIprop MaxIprop MaxQp MinQp MaxIQp MinIQp MaxReEncTimes
0 1 20 51 10 51 10 0
1 1 20 51 10 51 10 0
-----RUN VBR COMM PARAM ------------------------------------------------------------
ChnId ChgPs MinIprop MaxIprop MaxQp MinQp MaxIQp MinIQp MaxReEncTimes
-----RUN AVBR PARAM ------------------------------------------------------------
ChnId MaxStillQP MotionSensi MinPercent MinStillPSNR MinQpDelta
-----RUN QVBR PARAM ------------------------------------------------------------
ChnId BitPercentLL BitPercentUL PsnrFluctuateLL PsnrFluctuateUL
-----RUN CVBR PARAM ------------------------------------------------------------
ChnId MinQpDelta MaxQpDelta ExBitPercent LongTermStatTimeUnit
-----RUN INFO1-----------------------------------------------------------------
ChnId InsBr(kbps) InsFr WatL CfgBt(kb) RealBt(kb) IPRatio TarPercent StartQp MinQp MaxQp
0 589 26 1468 10 6 133 N/A 19 10 51
1 2562 8 727 358 448 3 N/A 19 10 51
-----RC DeBreathEffect INFO-----------------------------------------------------------------
ChnId bEnable Strength0 Strength1 DeBrthEfctCnt
0 N N/A N/A 0
1 N N/A N/A 0
-----RC HierarchicalQp INFO-----------------------------------------------------------------
ChnId bEnable FrameNum[0] FrameNum[1] FrameNum[2] FrameNum[3] QpDelta[0] QpDelta[1] QpDelta[2] QpDelta[3]
0 N 1 1 0 0 -2 -4 0 0
1 N 1 1 0 0 -2 -4 0 0
-----RC PERFORMANCE INFO------------------------------------------------------
ChnId StaOfstaTim TotaOfstaTim StaOfEndTim TotaOfEndTim TotalTime
0 324523071543 16357 324523097311 2974 19331
1 324523045621 6919 324522943458 1052 7971
[/code]
VENC运行日志:
[code]~ # cat /proc/umap/venc
[VENC] Version: [Hi3516EV200_MPP_V1.0.1.0 B050 Release], Build Time[May 9 2019, 22:51:50]
-----MODULE PARAM--------------------------------------------------------------
VencBufferCache FrameBufRecycle VencMaxChnNum
0 0 16
-----VENC CHN ATTR 1-----------------------------------------------------------
ID Width Height Type ByFrame Sequence LeftBytes LeftFrm CurPacks GopMode Prio
0 2592 1520 96 Y 528 0 0 1 NormalP 0
1 1280 720 96 Y 211 0 0 4 NormalP 0
-----VENC CHN ATTR 2-----------------------------------------------------------
ID VeStr SrcFr TarFr Timeref PixFmt PicAddr WakeUpFrmCnt
0 Y -1 -1 1316 YVU420 0x457aa780 1
1 Y -1 -1 636 YVU420 0x46f20800 1
-----VENC JPEGE ATTR -----------------------------------------------------------
ID RcvMode MpfCnt Mpf0Width Mpf0Height Mpf1Width Mpf1Height
-----VENC CHN RECEIVE STAT-----------------------------------------------------
ID Start StartEx RecvLeft EncLeft JpegEncodeMode
0 1 0 0 0 NA
1 1 0 0 0 NA
-----VENC VPSS QUERY-----------------------------------------------------------
ID Query QueryOk QueryFR Invld Full VbFail QueryFail InfoErr Stop
0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
-----VENC SEND1----------------------------------------------------------------
ID VpssSnd VInfErr OthrSnd OInfErr Send Stop Full CropErr DrectSnd SizeErr
0 532 0 0 0 532 0 0 0 532 0
1 0 0 318 0 318 0 0 0 318 0
-----VENC SEND2----------------------------------------------------------------
ID SendVgs StartOk StartFail IntOk IntFail SrcAdd SrcSub DestAdd DestSub
0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
-----VENC PIC QUEUE STATE------------------------------------------------------
ID Free Busy Vgs BFrame
0 2 4 0 0
1 5 1 0 0
-----VENC DCF/MPF QUEUE STATE------------------------------------------------------
ID ThumbFree ThumbBusy Mpf0Free Mpf0Busy Mpf1Free Mpf1Busy
0 0 0 6 0 6 0
1 0 0 6 0 6 0
-----VENC CHNL INFO------------------------------------------------------------
ID Inq InqOk Start StartOk Config VencInt ChaResLost OverLoad RingSkip RcSkip
0 3178 2318 528 528 528 528 0 0 0 0
1 3508 318 318 212 212 211 0 0 0 106
-----VENC CROP INFO------------------------------------------------------------
ID CropEn StartX StartY Width Height
0 N 0 0 0 0
1 N 0 0 0 0
-----ROI INFO------------------------------------------------------------------
ID Type Index bRoiEn bAbsQp Qp Width Height StartX StartY
-----VENC STREAM STATE---------------------------------------------------------
ID FreeCnt BusyCnt UserCnt UserGet UserRls GetTimes Interval FrameRate
0 7 0 0 582 582 528 33232 16
1 2 0 0 235 235 211 98529 6
-----VENC PTS STATE---------------------------------------------------------
ID RcvFirstFrmPts RcvFrmPts
0 324502092587 324534626104
1 324502706618 324534637474[/code]
H264E运行日志:
[code]~ # cat /proc/umap/h264e
[H264E] Version: [Hi3516EV200_MPP_V1.0.1.0 B050 Release], Build Time[May 9 2019, 22:51:50]
-----MODULE PARAM--------------------------------------------------------------
OnePack H264eVBSource PowerSaveEn MiniBufMode bQpHstgrmEn
0 2 1 0 0
-----CHN ATTR------------------------------------------------------------------
ID MaxWidth MaxHeight Width Height profile C2GEn BufSize ByFrame GopMode MaxStrCnt
0 2592 1520 2592 1520 base N 2954880 Y NormalP 200
1 1280 720 1280 720 base N 691200 Y NormalP 200
-----PICTURE INFO--------------------------------------------------------------
ID EncdStart EncdSucceed Lost Disc Pskip Recode RlsStr UnrdStr
0 896 896 0 0 0 0 896 0
1 366 366 0 0 0 0 366 0
-----STREAM BUFFER-------------------------------------------------------------
ID Base RdTail RdHead WrTail WrHead DataLen BufFree
0 0xc5c00000 0x236f40 0x236f40 0x236f40 0x236f40 0 2957248
1 0xc5900000 0x48f80 0x48f80 0x48f80 0x48f80 0 692160
-----RefParam INFO--------------------------------------------------------------
ID EnPred Base Enhance RcnRefShareBuf
0 Y 1 0 Y
1 Y 1 0 Y
-----ROIBG INFO------------------------------------------------------------------
ID BgSrcFr BgTarFr
0 -1 -1
1 -1 -1
-----Syntax INFO1--------------------------------------------------------------
ID SlcspltEn Slcsize IntraRefresh RefreshMode RefreshNum QpOfIDR
0 N N/A N N/A N/A N/A
1 N N/A N N/A N/A N/A
-----Syntax INFO2--------------------------------------------------------------
ID profile EntrpyI EntrpyP EntrpyB Itrans Ptrans QMatrix POC DblkIdc alpha beta
0 base cavlc cavlc cavlc 4x4 4x4 N 0 0 0 0
1 base cavlc cavlc cavlc 4x4 4x4 N 0 0 0 0
-----Foreground && Scene INFO-------------------------------------------------------------
ID ForegroundSkipCoef BackgroundSkipCoef SceneMode
0 8 8 Scene_0
1 8 8 Scene_0
-----CuPrediction-------------------------------------------------------------------
ID PredMode Inter8Cost Inter16Cost Intra4Cost Intra8Cost Intra16Cost
0 AUTO 8 8 8 8 8
1 AUTO 8 8 8 8 8
-----SkipBias-------------------------------------------------------------------
ID SkipBiasEn Gain Offset ForegroundCost BackgroundCost
0 N 8 8 0 0
1 N 8 8 0 0
~ # [/code]
MMP:4.0
问题描述:
通过V4L2方式从USB摄像头中读取YVU420数据然后通过HI_MPI_VENC_SendFrame 函数将数据发送到编码器中生成H264视频文件,但是生成的H264视频文件,在播放的时候,视频内容类似快进播放的样子。
我的配置步骤如下:
1、使用SAMPLE_COMM_VENC_Start函数启动编码器
[code]
enRcMode = SAMPLE_RC_CBR;
stGopAttr.enGopMode = VENC_GOPMODE_NORMALP; //VENC_GOPMODE_SMARTP
stGopAttr.stNormalP.s32IPQpDelta = 2;
/***encode h.264 **/
s32Ret = SAMPLE_COMM_VENC_Start(VencChn[1], enPayLoad[1], enSize[1], enRcMode,u32Profile[1],bRcnRefShareBuf,&stGopAttr);
if (HI_SUCCESS != s32Ret)
{
SAMPLE_PRT("Venc Start failed for %#x!\n", s32Ret);
goto EXIT_VENC_H264_UnBind;
}
[/code]
2、启动一个线程然后不断的往编码器中送YVU420SP格式的数据
[code]
......
u32Stride = ALIGN_UP((u32Width * 8 + 7) >> 3, DEFAULT_ALIGN);
u32LStride = u32Stride;
u32CStride = u32Stride;
u32Size = u32Stride * u32Height * 3 / 2;
u32LumaSize = u32Stride * u32Height;
u32ChrmSize = u32Stride * u32Height / 4;
memset(&stVbPoolCfg, 0, sizeof(VB_POOL_CONFIG_S));
stVbPoolCfg.u64BlkSize = u32Size;
stVbPoolCfg.u32BlkCnt = 2;
stVbPoolCfg.enRemapMode = VB_REMAP_MODE_NONE;
hPool = HI_MPI_VB_CreatePool(&stVbPoolCfg);
if (hPool == VB_INVALID_POOLID)
{
SAMPLE_PRT("HI_MPI_VB_CreatePool failed! \n");
return (void*)HI_FAILURE;
}
memset(&stFrmInfo.stVFrame, 0, sizeof(VIDEO_FRAME_S));
stFrmInfo.stVFrame.enField = VIDEO_FIELD_FRAME;
stFrmInfo.stVFrame.enCompressMode = COMPRESS_MODE_NONE;
stFrmInfo.stVFrame.enPixelFormat = SAMPLE_PIXEL_FORMAT; //PIXEL_FORMAT_YVU_SEMIPLANAR_420
stFrmInfo.stVFrame.enVideoFormat = VIDEO_FORMAT_LINEAR;
stFrmInfo.stVFrame.enDynamicRange = DYNAMIC_RANGE_SDR8;
stFrmInfo.stVFrame.enColorGamut = COLOR_GAMUT_BT709;
stFrmInfo.stVFrame.u32Width = 1280;
stFrmInfo.stVFrame.u32Height = 720;
stFrmInfo.stVFrame.u32Stride[0] = u32LStride;
stFrmInfo.stVFrame.u32Stride[1] = u32CStride;
stFrmInfo.stVFrame.u32Stride[2] = u32CStride;
stFrmInfo.stVFrame.u32TimeRef = 0;
stFrmInfo.stVFrame.u64PTS = 0;
stFrmInfo.u32PoolId = hPool;//HI_MPI_VB_Handle2PoolId(vbblk);
HI_PDT_UVC_Init(); //初始化USB摄像头
while(pstPara->bThreadStart == HI_TRUE)
{
videofd = HI_PDT_UVC_GetFd(); //获取摄像头文件描述符
if(videofd == -1)
{
SAMPLE_PRT("videofd is unInit\n");
break;
}
FD_ZERO(&fds);
FD_SET(videofd,&fds);
/*Timeout*/
tv.tv_sec = 2;
tv.tv_usec = 0;
u32ret = select(videofd + 1,&fds,NULL,NULL,&tv);
if(0 > u32ret){
if(EINTR == errno)
continue;
perror("Fail to select \n");
break;
}else if(0 == u32ret){
fprintf(stderr,"select Timeout \n");
continue;
}else{
if(!FD_ISSET(videofd,&fds))
continue;
//SAMPLE_PRT("start read frame\n");
while((vbblk = HI_MPI_VB_GetBlock(hPool,u32Size,HI_NULL))== VB_INVALID_HANDLE);
u64PhyAddrs = HI_MPI_VB_Handle2PhysAddr(vbblk);
if(u64PhyAddrs == 0x00)
{
SAMPLE_PRT("HI_MPI_VB_Handle2PhysAddr:%x \n",u64PhyAddrs);
HI_MPI_VB_ReleaseBlock(vbblk);
continue;
}
pVirAddrs = (HI_U8 *)HI_MPI_SYS_Mmap(u64PhyAddrs, u32Size);
if(pVirAddrs == HI_NULL)
{
SAMPLE_PRT("HI_MPI_SYS_Mmap:%#x \n",pVirAddrs);
HI_MPI_VB_ReleaseBlock(vbblk);
continue;
}
stFrmInfo.stVFrame.u64PhyAddr[0] = u64PhyAddrs;
stFrmInfo.stVFrame.u64PhyAddr[1] = stFrmInfo.stVFrame.u64PhyAddr[0] + u32LumaSize;
stFrmInfo.stVFrame.u64PhyAddr[2] = stFrmInfo.stVFrame.u64PhyAddr[1] + u32ChrmSize;
stFrmInfo.stVFrame.u64VirAddr[0] = (HI_U64)(HI_UL)pVirAddrs;
stFrmInfo.stVFrame.u64VirAddr[1] = (HI_UL)(stFrmInfo.stVFrame.u64VirAddr[0]) + u32LumaSize;
stFrmInfo.stVFrame.u64VirAddr[2] = (HI_UL)(stFrmInfo.stVFrame.u64VirAddr[1]) + u32ChrmSize;
u32Cnt++;
stFrmInfo.stVFrame.u64PTS = (u32Cnt * 40);
stFrmInfo.stVFrame.u32TimeRef = (u32Cnt * 2);
HI_PDT_read_frame(videofd,pVirAddrs,u32Size);//读取USB摄像头数据并写入到虚拟地址
HI_MPI_VENC_SendFrame(1, &stFrmInfo, -1);//发送数据到编码器的通道1
HI_MPI_VB_ReleaseBlock(vbblk); //
HI_MPI_SYS_Munmap ((HI_VOID *)(HI_UL)pVirAddrs, u32Size);
usleep(50000);
}
}
[/code]
RC运行日志:
[code]
~ # cat /proc/umap/rc
[RC] Version: [Hi3516EV200_MPP_V1.0.1.0 B050 Release],Build Time[May 9 2019, 22:51:50]
------BASE PARAMS 1------------------------------------------------------------
ChnId Gop StatTm ViFr TrgFr ProType RcMode Br(kbps) FluLev IQp PQp BQp
0 30 1 30 30 96 CBR 512 1 N/A N/A N/A
1 30 1 12 8 96 CBR 3072 1 N/A N/A N/A
------BASE PARAMS 2------------------------------------------------------------
ChnId MinQp MaxQp MinIQp MaxIQp EnableIdr bQpMapEn QpMapMode
0 10 51 10 51 Y N N/A
1 10 51 10 51 Y N N/A
------BASE PARAMS 3------------------------------------------------------------
ChnId LongTermStatTime ShortTermStatTime LongTermMaxBitrate LongTermMinBitrate
-----RUN COMM PARAM 1----------------------------------------------------------
ChnId RowQpDelta ThrdI(16)
0 1 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
1 1 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
-----RUN COMM PARAM 2------------------------------------------------------------
ChnId FirstFrmStartQP ThrdP(16)
0 -1 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
1 -1 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
-----RUN COMM PARAM 3----------------------------------------------------------
ChnId DirectionThrd ThrdB(16)
0 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
1 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 15 20 25 25]
-----RUN COMM PARAM 4----------------------------------------------------------
ChnId bLost LostThr LostFrmStr EncGap RCPriority SprFrmMod SprIFrm SprPFrm SprBFrm bClrStat
0 N 83886080 NORMAl 0 BITRATE None 500000 500000 500000 1
1 N 83886080 NORMAl 0 BITRATE None 500000 500000 500000 1
-----RUN COMM PARAM 5----------------------------------------------------------
ChnId bDetectSceneChange bAdapInsertIFrame
0 Y N
1 Y N
-----Foreground INFO 1----------------------------------------------------------
ChnId bThrdEn DirectionThrd ThrdP(16)
0 0 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 20 20 25 25]
1 0 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 20 20 25 25]
-----Foreground INFO 2----------------------------------------------------------
ChnId ThreshGain ThreshOffset ThrdB(16)
0 8 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 20 20 25 25]
1 8 8 [ 0 0 0 0 3 3 5 5 8 8 8 15 20 20 25 25]
-----GOP MODE ATTR-------------------------------------------------------------
ChnId GopMode IpQpDelta SPInterval SPQpDelta BFrmNum BQpDelta BgInterval ViQpDelta
0 NormalP 2 N/A N/A N/A N/A N/A N/A
1 NormalP 2 N/A N/A N/A N/A N/A N/A
-----RUN CBR PARAM ------------------------------------------------------------
ChnId MinIprop MaxIprop MaxQp MinQp MaxIQp MinIQp MaxReEncTimes
0 1 20 51 10 51 10 0
1 1 20 51 10 51 10 0
-----RUN VBR COMM PARAM ------------------------------------------------------------
ChnId ChgPs MinIprop MaxIprop MaxQp MinQp MaxIQp MinIQp MaxReEncTimes
-----RUN AVBR PARAM ------------------------------------------------------------
ChnId MaxStillQP MotionSensi MinPercent MinStillPSNR MinQpDelta
-----RUN QVBR PARAM ------------------------------------------------------------
ChnId BitPercentLL BitPercentUL PsnrFluctuateLL PsnrFluctuateUL
-----RUN CVBR PARAM ------------------------------------------------------------
ChnId MinQpDelta MaxQpDelta ExBitPercent LongTermStatTimeUnit
-----RUN INFO1-----------------------------------------------------------------
ChnId InsBr(kbps) InsFr WatL CfgBt(kb) RealBt(kb) IPRatio TarPercent StartQp MinQp MaxQp
0 589 26 1468 10 6 133 N/A 19 10 51
1 2562 8 727 358 448 3 N/A 19 10 51
-----RC DeBreathEffect INFO-----------------------------------------------------------------
ChnId bEnable Strength0 Strength1 DeBrthEfctCnt
0 N N/A N/A 0
1 N N/A N/A 0
-----RC HierarchicalQp INFO-----------------------------------------------------------------
ChnId bEnable FrameNum[0] FrameNum[1] FrameNum[2] FrameNum[3] QpDelta[0] QpDelta[1] QpDelta[2] QpDelta[3]
0 N 1 1 0 0 -2 -4 0 0
1 N 1 1 0 0 -2 -4 0 0
-----RC PERFORMANCE INFO------------------------------------------------------
ChnId StaOfstaTim TotaOfstaTim StaOfEndTim TotaOfEndTim TotalTime
0 324523071543 16357 324523097311 2974 19331
1 324523045621 6919 324522943458 1052 7971
[/code]
VENC运行日志:
[code]~ # cat /proc/umap/venc
[VENC] Version: [Hi3516EV200_MPP_V1.0.1.0 B050 Release], Build Time[May 9 2019, 22:51:50]
-----MODULE PARAM--------------------------------------------------------------
VencBufferCache FrameBufRecycle VencMaxChnNum
0 0 16
-----VENC CHN ATTR 1-----------------------------------------------------------
ID Width Height Type ByFrame Sequence LeftBytes LeftFrm CurPacks GopMode Prio
0 2592 1520 96 Y 528 0 0 1 NormalP 0
1 1280 720 96 Y 211 0 0 4 NormalP 0
-----VENC CHN ATTR 2-----------------------------------------------------------
ID VeStr SrcFr TarFr Timeref PixFmt PicAddr WakeUpFrmCnt
0 Y -1 -1 1316 YVU420 0x457aa780 1
1 Y -1 -1 636 YVU420 0x46f20800 1
-----VENC JPEGE ATTR -----------------------------------------------------------
ID RcvMode MpfCnt Mpf0Width Mpf0Height Mpf1Width Mpf1Height
-----VENC CHN RECEIVE STAT-----------------------------------------------------
ID Start StartEx RecvLeft EncLeft JpegEncodeMode
0 1 0 0 0 NA
1 1 0 0 0 NA
-----VENC VPSS QUERY-----------------------------------------------------------
ID Query QueryOk QueryFR Invld Full VbFail QueryFail InfoErr Stop
0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
-----VENC SEND1----------------------------------------------------------------
ID VpssSnd VInfErr OthrSnd OInfErr Send Stop Full CropErr DrectSnd SizeErr
0 532 0 0 0 532 0 0 0 532 0
1 0 0 318 0 318 0 0 0 318 0
-----VENC SEND2----------------------------------------------------------------
ID SendVgs StartOk StartFail IntOk IntFail SrcAdd SrcSub DestAdd DestSub
0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
-----VENC PIC QUEUE STATE------------------------------------------------------
ID Free Busy Vgs BFrame
0 2 4 0 0
1 5 1 0 0
-----VENC DCF/MPF QUEUE STATE------------------------------------------------------
ID ThumbFree ThumbBusy Mpf0Free Mpf0Busy Mpf1Free Mpf1Busy
0 0 0 6 0 6 0
1 0 0 6 0 6 0
-----VENC CHNL INFO------------------------------------------------------------
ID Inq InqOk Start StartOk Config VencInt ChaResLost OverLoad RingSkip RcSkip
0 3178 2318 528 528 528 528 0 0 0 0
1 3508 318 318 212 212 211 0 0 0 106
-----VENC CROP INFO------------------------------------------------------------
ID CropEn StartX StartY Width Height
0 N 0 0 0 0
1 N 0 0 0 0
-----ROI INFO------------------------------------------------------------------
ID Type Index bRoiEn bAbsQp Qp Width Height StartX StartY
-----VENC STREAM STATE---------------------------------------------------------
ID FreeCnt BusyCnt UserCnt UserGet UserRls GetTimes Interval FrameRate
0 7 0 0 582 582 528 33232 16
1 2 0 0 235 235 211 98529 6
-----VENC PTS STATE---------------------------------------------------------
ID RcvFirstFrmPts RcvFrmPts
0 324502092587 324534626104
1 324502706618 324534637474[/code]
H264E运行日志:
[code]~ # cat /proc/umap/h264e
[H264E] Version: [Hi3516EV200_MPP_V1.0.1.0 B050 Release], Build Time[May 9 2019, 22:51:50]
-----MODULE PARAM--------------------------------------------------------------
OnePack H264eVBSource PowerSaveEn MiniBufMode bQpHstgrmEn
0 2 1 0 0
-----CHN ATTR------------------------------------------------------------------
ID MaxWidth MaxHeight Width Height profile C2GEn BufSize ByFrame GopMode MaxStrCnt
0 2592 1520 2592 1520 base N 2954880 Y NormalP 200
1 1280 720 1280 720 base N 691200 Y NormalP 200
-----PICTURE INFO--------------------------------------------------------------
ID EncdStart EncdSucceed Lost Disc Pskip Recode RlsStr UnrdStr
0 896 896 0 0 0 0 896 0
1 366 366 0 0 0 0 366 0
-----STREAM BUFFER-------------------------------------------------------------
ID Base RdTail RdHead WrTail WrHead DataLen BufFree
0 0xc5c00000 0x236f40 0x236f40 0x236f40 0x236f40 0 2957248
1 0xc5900000 0x48f80 0x48f80 0x48f80 0x48f80 0 692160
-----RefParam INFO--------------------------------------------------------------
ID EnPred Base Enhance RcnRefShareBuf
0 Y 1 0 Y
1 Y 1 0 Y
-----ROIBG INFO------------------------------------------------------------------
ID BgSrcFr BgTarFr
0 -1 -1
1 -1 -1
-----Syntax INFO1--------------------------------------------------------------
ID SlcspltEn Slcsize IntraRefresh RefreshMode RefreshNum QpOfIDR
0 N N/A N N/A N/A N/A
1 N N/A N N/A N/A N/A
-----Syntax INFO2--------------------------------------------------------------
ID profile EntrpyI EntrpyP EntrpyB Itrans Ptrans QMatrix POC DblkIdc alpha beta
0 base cavlc cavlc cavlc 4x4 4x4 N 0 0 0 0
1 base cavlc cavlc cavlc 4x4 4x4 N 0 0 0 0
-----Foreground && Scene INFO-------------------------------------------------------------
ID ForegroundSkipCoef BackgroundSkipCoef SceneMode
0 8 8 Scene_0
1 8 8 Scene_0
-----CuPrediction-------------------------------------------------------------------
ID PredMode Inter8Cost Inter16Cost Intra4Cost Intra8Cost Intra16Cost
0 AUTO 8 8 8 8 8
1 AUTO 8 8 8 8 8
-----SkipBias-------------------------------------------------------------------
ID SkipBiasEn Gain Offset ForegroundCost BackgroundCost
0 N 8 8 0 0
1 N 8 8 0 0
~ # [/code]
我来回答
回答0个
时间排序
认可量排序
暂无数据
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币
Markdown 语法
- 加粗**内容**
- 斜体*内容*
- 删除线~~内容~~
- 引用> 引用内容
- 代码`代码`
- 代码块```编程语言↵代码```
- 链接[链接标题](url)
- 无序列表- 内容
- 有序列表1. 内容
- 缩进内容
- 图片![alt](url)
相关问答
-
2019-03-13 15:57:54
-
2016-10-26 11:55:21
-
2017-08-10 21:02:27
-
2018-07-24 16:43:24
-
2020-03-17 18:14:42
-
2019-08-30 09:57:03
-
2020-07-23 17:45:58
-
2016-09-10 09:35:34
-
2020-04-07 11:51:15
-
2016-09-20 16:15:23
-
2016-10-28 10:34:01
-
2017-09-20 15:05:29
-
2022-11-02 20:17:05
-
2018-11-19 08:53:29
-
2017-08-02 10:13:29
-
2019-07-12 18:29:38
-
2016-06-23 09:48:58
-
2017-09-09 02:53:26
-
2018-04-28 17:00:01
无更多相似问答 去提问
点击登录
-- 积分
-- E币
提问
—
收益
—
被采纳
—
我要提问
切换马甲
上一页
下一页
悬赏问答
-
5cat /dev/logmpp 报错 <3>[ vi] [func]:vi_send_frame_node [line]:99 [info]:vi pic queue is full!
-
50如何获取vpss chn的图像修改后发送至vo
-
5FPGA通过Bt1120传YUV422数据过来,vi接收不到数据——3516dv500
-
50SS928 运行PQtools 拼接 推到设备里有一半画面会异常
-
53536AV100的sample_vdec输出到CVBS显示
-
10海思板子mpp怎么在vi阶段改变视频数据尺寸
-
10HI3559AV100 多摄像头同步模式
-
9海思ss928单路摄像头vio中加入opencv处理并显示
-
10EB-RV1126-BC-191板子运行自己编码的程序
-
10求HI3519DV500_SDK_V2.0.1.1
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
提醒
你的问题还没有最佳答案,是否结题,结题后将扣除20%的悬赏金
取消
确认
提醒
你的问题还没有最佳答案,是否结题,结题后将根据回答情况扣除相应悬赏金(1回答=1E币)
取消
确认