History

use global trace in encoder

ruil2 committed 12 years ago

Commit ba6b2a81 parent d63fc106 files · +48 −127Browse files

Showing the changes to codec/encoder/core/src/encoder_ext.cpp (1 of 6 files). Show all

Unified · Split

codec/encoder/core/src/encoder_ext.cpp+25−113
@@ -131,7 +131,8 @@ int32_t ParamValidation (SWelsSvcCodingParam* pCfg) { · 130 unmodified lines
131 return 0;131 return 0;
132}132}
133 133
134int32_t ParamValidationExt (SWelsSvcCodingParam* pCodingParam) {134
135int32_t ParamValidationExt (sWelsEncCtx*pCtx,SWelsSvcCodingParam* pCodingParam) {
135 int8_t i = 0;136 int8_t i = 0;
136 int32_t iIdx = 0;137 int32_t iIdx = 0;
137 138
@@ -140,44 +141,33 @@ int32_t ParamValidationExt (SWelsSvcCodingParam* pCodingParam) { · 2 unmodified lines
140 return ENC_RETURN_INVALIDINPUT;141 return ENC_RETURN_INVALIDINPUT;
141 142
142 if (pCodingParam->iSpatialLayerNum < 1 || pCodingParam->iSpatialLayerNum > MAX_DEPENDENCY_LAYER) {143 if (pCodingParam->iSpatialLayerNum < 1 || pCodingParam->iSpatialLayerNum > MAX_DEPENDENCY_LAYER) {
143#if defined (_DEBUG)144 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), monitor invalid pCodingParam->iSpatialLayerNum: %d!\n",
144 fprintf (stderr, "ParamValidationExt(), monitor invalid pCodingParam->iSpatialLayerNum: %d!\n",
145 pCodingParam->iSpatialLayerNum);145 pCodingParam->iSpatialLayerNum);
146#endif//#if _DEBUG
147
148 return ENC_RETURN_UNSUPPORTED_PARA;146 return ENC_RETURN_UNSUPPORTED_PARA;
149 }147 }
150 148
151 if (pCodingParam->iTemporalLayerNum < 1 || pCodingParam->iTemporalLayerNum > MAX_TEMPORAL_LEVEL) {149 if (pCodingParam->iTemporalLayerNum < 1 || pCodingParam->iTemporalLayerNum > MAX_TEMPORAL_LEVEL) {
152#if defined (_DEBUG)150 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), monitor invalid pCodingParam->iTemporalLayerNum: %d!\n",
153 fprintf (stderr, "ParamValidationExt(), monitor invalid pCodingParam->iTemporalLayerNum: %d!\n",
154 pCodingParam->iTemporalLayerNum);151 pCodingParam->iTemporalLayerNum);
155#endif//#if _DEBUG
156 return ENC_RETURN_UNSUPPORTED_PARA;152 return ENC_RETURN_UNSUPPORTED_PARA;
157 }153 }
158 154
159 if (pCodingParam->uiGopSize < 1 || pCodingParam->uiGopSize > MAX_GOP_SIZE) {155 if (pCodingParam->uiGopSize < 1 || pCodingParam->uiGopSize > MAX_GOP_SIZE) {
160#if defined (_DEBUG)156 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), monitor invalid pCodingParam->uiGopSize: %d!\n", pCodingParam->uiGopSize);
161 fprintf (stderr, "ParamValidationExt(), monitor invalid pCodingParam->uiGopSize: %d!\n", pCodingParam->uiGopSize);
162#endif//#if _DEBUG
163 return ENC_RETURN_UNSUPPORTED_PARA;157 return ENC_RETURN_UNSUPPORTED_PARA;
164 }158 }
165 159
166 160
167 if (pCodingParam->uiIntraPeriod && pCodingParam->uiIntraPeriod < pCodingParam->uiGopSize) {161 if (pCodingParam->uiIntraPeriod && pCodingParam->uiIntraPeriod < pCodingParam->uiGopSize) {
168#if defined (_DEBUG)162 WelsLog (pCtx, WELS_LOG_ERROR,
169 fprintf (stderr,
170 "ParamValidationExt(), uiIntraPeriod(%d) should be not less than that of uiGopSize(%d) or -1 specified!\n",163 "ParamValidationExt(), uiIntraPeriod(%d) should be not less than that of uiGopSize(%d) or -1 specified!\n",
171 pCodingParam->uiIntraPeriod, pCodingParam->uiGopSize);164 pCodingParam->uiIntraPeriod, pCodingParam->uiGopSize);
172#endif//#if _DEBUG
173 return ENC_RETURN_UNSUPPORTED_PARA;165 return ENC_RETURN_UNSUPPORTED_PARA;
174 }166 }
175 167
176 if (pCodingParam->uiIntraPeriod && (pCodingParam->uiIntraPeriod & (pCodingParam->uiGopSize - 1)) != 0) {168 if (pCodingParam->uiIntraPeriod && (pCodingParam->uiIntraPeriod & (pCodingParam->uiGopSize - 1)) != 0) {
177#if defined (_DEBUG)169 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), uiIntraPeriod(%d) should be multiple of uiGopSize(%d) or -1 specified!\n",
178 fprintf (stderr, "ParamValidationExt(), uiIntraPeriod(%d) should be multiple of uiGopSize(%d) or -1 specified!\n",
179 pCodingParam->uiIntraPeriod, pCodingParam->uiGopSize);170 pCodingParam->uiIntraPeriod, pCodingParam->uiGopSize);
180#endif//#if _DEBUG
181 return ENC_RETURN_UNSUPPORTED_PARA;171 return ENC_RETURN_UNSUPPORTED_PARA;
182 }172 }
183 173
@@ -207,24 +197,18 @@ int32_t ParamValidationExt (SWelsSvcCodingParam* pCodingParam) { · 23 unmodified lines
207 int32_t iMbNumInFrame = 0;197 int32_t iMbNumInFrame = 0;
208 int32_t iMaxSliceNum = MAX_SLICES_NUM;198 int32_t iMaxSliceNum = MAX_SLICES_NUM;
209 if (kiPicWidth <= 0 || kiPicHeight <= 0) {199 if (kiPicWidth <= 0 || kiPicHeight <= 0) {
210#if defined (_DEBUG)200 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid %d x %d in dependency layer settings!\n", kiPicWidth, kiPicHeight);
211 fprintf (stderr, "ParamValidationExt(), invalid %d x %d in dependency layer settings!\n", kiPicWidth, kiPicHeight);
212#endif//#if _DEBUG
213 return ENC_RETURN_UNSUPPORTED_PARA;201 return ENC_RETURN_UNSUPPORTED_PARA;
214 }202 }
215 if ((kiPicWidth & 0x0F) != 0 || (kiPicHeight & 0x0F) != 0) {203 if ((kiPicWidth & 0x0F) != 0 || (kiPicHeight & 0x0F) != 0) {
216#if defined (_DEBUG)204 WelsLog (pCtx, WELS_LOG_ERROR,
217 fprintf (stderr,
218 "ParamValidationExt(), in layer #%d iWidth x iHeight(%d x %d) both should be multiple of 16, can not support with arbitrary size currently!\n",205 "ParamValidationExt(), in layer #%d iWidth x iHeight(%d x %d) both should be multiple of 16, can not support with arbitrary size currently!\n",
219 i, kiPicWidth, kiPicHeight);206 i, kiPicWidth, kiPicHeight);
220#endif//#if _DEBUG
221 return ENC_RETURN_UNSUPPORTED_PARA;207 return ENC_RETURN_UNSUPPORTED_PARA;
222 }208 }
223 209
224 if (fDlp->sSliceCfg.uiSliceMode >= SM_RESERVED) {210 if (fDlp->sSliceCfg.uiSliceMode >= SM_RESERVED) {
225#if defined (_DEBUG)211 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid uiSliceMode (%d) settings!\n", fDlp->sSliceCfg.uiSliceMode);
226 fprintf (stderr, "ParamValidationExt(), invalid uiSliceMode (%d) settings!\n", fDlp->sSliceCfg.uiSliceMode);
227#endif//#if _DEBUG
228 return ENC_RETURN_UNSUPPORTED_PARA;212 return ENC_RETURN_UNSUPPORTED_PARA;
229 }213 }
230 214
@@ -251,17 +235,13 @@ int32_t ParamValidationExt (SWelsSvcCodingParam* pCodingParam) { · 20 unmodified lines
251 iMaxSliceNum = MAX_SLICES_NUM;235 iMaxSliceNum = MAX_SLICES_NUM;
252 if (fDlp->sSliceCfg.sSliceArgument.uiSliceNum <= 0236 if (fDlp->sSliceCfg.sSliceArgument.uiSliceNum <= 0
253 || fDlp->sSliceCfg.sSliceArgument.uiSliceNum > iMaxSliceNum) {237 || fDlp->sSliceCfg.sSliceArgument.uiSliceNum > iMaxSliceNum) {
254#if defined (_DEBUG)238 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid uiSliceNum (%d) settings!\n", fDlp->sSliceCfg.sSliceArgument.uiSliceNum);
255 fprintf (stderr, "ParamValidationExt(), invalid uiSliceNum (%d) settings!\n", fDlp->sSliceCfg.sSliceArgument.uiSliceNum);
256#endif//#if _DEBUG
257 return ENC_RETURN_UNSUPPORTED_PARA;239 return ENC_RETURN_UNSUPPORTED_PARA;
258 }240 }
259 if (fDlp->sSliceCfg.sSliceArgument.uiSliceNum == 1) {241 if (fDlp->sSliceCfg.sSliceArgument.uiSliceNum == 1) {
260#if defined (_DEBUG)242 WelsLog (pCtx, WELS_LOG_DEBUG,
261 fprintf (stderr,
262 "ParamValidationExt(), uiSliceNum(%d) you set for SM_FIXEDSLCNUM_SLICE, now turn to SM_SINGLE_SLICE type!\n",243 "ParamValidationExt(), uiSliceNum(%d) you set for SM_FIXEDSLCNUM_SLICE, now turn to SM_SINGLE_SLICE type!\n",
263 fDlp->sSliceCfg.sSliceArgument.uiSliceNum);244 fDlp->sSliceCfg.sSliceArgument.uiSliceNum);
264#endif//#if _DEBUG
265 fDlp->sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;245 fDlp->sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;
266 break;246 break;
267 }247 }
@@ -274,10 +254,8 @@ int32_t ParamValidationExt (SWelsSvcCodingParam* pCodingParam) { · 6 unmodified lines
274 } else if (!CheckFixedSliceNumMultiSliceSetting (iMbNumInFrame,254 } else if (!CheckFixedSliceNumMultiSliceSetting (iMbNumInFrame,
275 &fDlp->sSliceCfg.sSliceArgument)) { // verify interleave mode settings255 &fDlp->sSliceCfg.sSliceArgument)) { // verify interleave mode settings
276 //check uiSliceMbNum with current uiSliceNum256 //check uiSliceMbNum with current uiSliceNum
277#if defined (_DEBUG)257 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid uiSliceMbNum (%d) settings!\n",
278 fprintf (stderr, "ParamValidationExt(), invalid uiSliceMbNum (%d) settings!\n",
279 fDlp->sSliceCfg.sSliceArgument.uiSliceMbNum[0]);258 fDlp->sSliceCfg.sSliceArgument.uiSliceMbNum[0]);
280#endif//#if _DEBUG
281 return ENC_RETURN_UNSUPPORTED_PARA;259 return ENC_RETURN_UNSUPPORTED_PARA;
282 }260 }
283 // considering the coding efficient and performance, iCountMbNum constraint by MIN_NUM_MB_PER_SLICE condition of multi-pSlice mode settting261 // considering the coding efficient and performance, iCountMbNum constraint by MIN_NUM_MB_PER_SLICE condition of multi-pSlice mode settting
@@ -296,40 +274,30 @@ int32_t ParamValidationExt (SWelsSvcCodingParam* pCodingParam) { · 12 unmodified lines
296 iMbNumInFrame = iMbWidth * iMbHeight;274 iMbNumInFrame = iMbWidth * iMbHeight;
297 iMaxSliceNum = MAX_SLICES_NUM;275 iMaxSliceNum = MAX_SLICES_NUM;
298 if (fDlp->sSliceCfg.sSliceArgument.uiSliceMbNum[0] <= 0) {276 if (fDlp->sSliceCfg.sSliceArgument.uiSliceMbNum[0] <= 0) {
299#if defined (_DEBUG)277 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid uiSliceMbNum (%d) settings!\n",
300 fprintf (stderr, "ParamValidationExt(), invalid uiSliceMbNum (%d) settings!\n",
301 fDlp->sSliceCfg.sSliceArgument.uiSliceMbNum[0]);278 fDlp->sSliceCfg.sSliceArgument.uiSliceMbNum[0]);
302#endif//#if _DEBUG
303 return ENC_RETURN_UNSUPPORTED_PARA;279 return ENC_RETURN_UNSUPPORTED_PARA;
304 }280 }
305 281
306 if (!CheckRasterMultiSliceSetting (iMbNumInFrame, &fDlp->sSliceCfg.sSliceArgument)) { // verify interleave mode settings282 if (!CheckRasterMultiSliceSetting (iMbNumInFrame, &fDlp->sSliceCfg.sSliceArgument)) { // verify interleave mode settings
307#if defined (_DEBUG)283 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid uiSliceMbNum (%d) settings!\n",
308 fprintf (stderr, "ParamValidationExt(), invalid uiSliceMbNum (%d) settings!\n",
309 fDlp->sSliceCfg.sSliceArgument.uiSliceMbNum[0]);284 fDlp->sSliceCfg.sSliceArgument.uiSliceMbNum[0]);
310#endif//#if _DEBUG
311 return ENC_RETURN_UNSUPPORTED_PARA;285 return ENC_RETURN_UNSUPPORTED_PARA;
312 }286 }
313 if (fDlp->sSliceCfg.sSliceArgument.uiSliceNum <= 0287 if (fDlp->sSliceCfg.sSliceArgument.uiSliceNum <= 0
314 || fDlp->sSliceCfg.sSliceArgument.uiSliceNum > iMaxSliceNum) { // verify interleave mode settings288 || fDlp->sSliceCfg.sSliceArgument.uiSliceNum > iMaxSliceNum) { // verify interleave mode settings
315#if defined (_DEBUG)289 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid uiSliceNum (%d) in SM_RASTER_SLICE settings!\n",
316 fprintf (stderr, "ParamValidationExt(), invalid uiSliceNum (%d) in SM_RASTER_SLICE settings!\n",
317 fDlp->sSliceCfg.sSliceArgument.uiSliceNum);290 fDlp->sSliceCfg.sSliceArgument.uiSliceNum);
318#endif//#if _DEBUG
319 return ENC_RETURN_UNSUPPORTED_PARA;291 return ENC_RETURN_UNSUPPORTED_PARA;
320 }292 }
321 if (fDlp->sSliceCfg.sSliceArgument.uiSliceNum == 1) {293 if (fDlp->sSliceCfg.sSliceArgument.uiSliceNum == 1) {
322#if defined (_DEBUG)294 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), pSlice setting for SM_RASTER_SLICE now turn to SM_SINGLE_SLICE!\n");
323 fprintf (stderr, "ParamValidationExt(), pSlice setting for SM_RASTER_SLICE now turn to SM_SINGLE_SLICE!\n");
324#endif//#if _DEBUG
325 fDlp->sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;295 fDlp->sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;
326 break;296 break;
327 }297 }
328#ifdef MT_ENABLED298#ifdef MT_ENABLED
329 if (pCodingParam->bEnableRc && fDlp->sSliceCfg.sSliceArgument.uiSliceNum > 1) {299 if (pCodingParam->bEnableRc && fDlp->sSliceCfg.sSliceArgument.uiSliceNum > 1) {
330#if defined (_DEBUG)300 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), WARNING: GOM based RC do not support SM_RASTER_SLICE!\n");
331 fprintf (stderr, "ParamValidationExt(), WARNING: GOM based RC do not support SM_RASTER_SLICE!\n");
332#endif//#if _DEBUG
333 }301 }
334#endif302#endif
335 // considering the coding efficient and performance, iCountMbNum constraint by MIN_NUM_MB_PER_SLICE condition of multi-pSlice mode settting303 // considering the coding efficient and performance, iCountMbNum constraint by MIN_NUM_MB_PER_SLICE condition of multi-pSlice mode settting
@@ -347,24 +315,18 @@ int32_t ParamValidationExt (SWelsSvcCodingParam* pCodingParam) { · 11 unmodified lines
347 iMbHeight = (kiPicHeight + 15) >> 4;315 iMbHeight = (kiPicHeight + 15) >> 4;
348 iMaxSliceNum = MAX_SLICES_NUM;316 iMaxSliceNum = MAX_SLICES_NUM;
349 if (iMbHeight > iMaxSliceNum) {317 if (iMbHeight > iMaxSliceNum) {
350#if defined (_DEBUG)318 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid uiSliceNum (%d) settings more than MAX!\n", iMbHeight);
351 fprintf (stderr, "ParamValidationExt(), invalid uiSliceNum (%d) settings more than MAX!\n", iMbHeight);
352#endif//#if _DEBUG
353 return ENC_RETURN_UNSUPPORTED_PARA;319 return ENC_RETURN_UNSUPPORTED_PARA;
354 }320 }
355 fDlp->sSliceCfg.sSliceArgument.uiSliceNum = iMbHeight;321 fDlp->sSliceCfg.sSliceArgument.uiSliceNum = iMbHeight;
356 322
357 if (fDlp->sSliceCfg.sSliceArgument.uiSliceNum <= 0) {323 if (fDlp->sSliceCfg.sSliceArgument.uiSliceNum <= 0) {
358#if defined (_DEBUG)324 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid uiSliceNum (%d) settings!\n", fDlp->sSliceCfg.sSliceArgument.uiSliceNum);
359 fprintf (stderr, "ParamValidationExt(), invalid uiSliceNum (%d) settings!\n", fDlp->sSliceCfg.sSliceArgument.uiSliceNum);
360#endif//#if _DEBUG
361 return ENC_RETURN_UNSUPPORTED_PARA;325 return ENC_RETURN_UNSUPPORTED_PARA;
362 }326 }
363 if (!CheckRowMbMultiSliceSetting (iMbWidth, &fDlp->sSliceCfg.sSliceArgument)) { // verify interleave mode settings327 if (!CheckRowMbMultiSliceSetting (iMbWidth, &fDlp->sSliceCfg.sSliceArgument)) { // verify interleave mode settings
364#if defined (_DEBUG)328 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid uiSliceMbNum (%d) settings!\n",
365 fprintf (stderr, "ParamValidationExt(), invalid uiSliceMbNum (%d) settings!\n",
366 fDlp->sSliceCfg.sSliceArgument.uiSliceMbNum[0]);329 fDlp->sSliceCfg.sSliceArgument.uiSliceMbNum[0]);
367#endif//#if _DEBUG
368 return ENC_RETURN_UNSUPPORTED_PARA;330 return ENC_RETURN_UNSUPPORTED_PARA;
369 }331 }
370 }332 }
@@ -373,10 +335,8 @@ int32_t ParamValidationExt (SWelsSvcCodingParam* pCodingParam) { · 2 unmodified lines
373 iMbWidth = (kiPicWidth + 15) >> 4;335 iMbWidth = (kiPicWidth + 15) >> 4;
374 iMbHeight = (kiPicHeight + 15) >> 4;336 iMbHeight = (kiPicHeight + 15) >> 4;
375 if (fDlp->sSliceCfg.sSliceArgument.uiSliceSizeConstraint <= 0) {337 if (fDlp->sSliceCfg.sSliceArgument.uiSliceSizeConstraint <= 0) {
376#if defined (_DEBUG)338 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid iSliceSize (%d) settings!\n",
377 fprintf (stderr, "ParamValidationExt(), invalid iSliceSize (%d) settings!\n",
378 fDlp->sSliceCfg.sSliceArgument.uiSliceSizeConstraint);339 fDlp->sSliceCfg.sSliceArgument.uiSliceSizeConstraint);
379#endif//#if _DEBUG
380 return ENC_RETURN_UNSUPPORTED_PARA;340 return ENC_RETURN_UNSUPPORTED_PARA;
381 }341 }
382 // considering the coding efficient and performance, iCountMbNum constraint by MIN_NUM_MB_PER_SLICE condition of multi-pSlice mode settting342 // considering the coding efficient and performance, iCountMbNum constraint by MIN_NUM_MB_PER_SLICE condition of multi-pSlice mode settting
@@ -388,11 +348,8 @@ int32_t ParamValidationExt (SWelsSvcCodingParam* pCodingParam) { · 5 unmodified lines
388 }348 }
389 break;349 break;
390 default: {350 default: {
391 351 WelsLog (pCtx, WELS_LOG_ERROR, "ParamValidationExt(), invalid uiSliceMode (%d) settings!\n",
392#if defined (_DEBUG)
393 fprintf (stderr, "ParamValidationExt(), invalid uiSliceMode (%d) settings!\n",
394 pCodingParam->sDependencyLayers[0].sSliceCfg.uiSliceMode);352 pCodingParam->sDependencyLayers[0].sSliceCfg.uiSliceMode);
395#endif//#if _DEBUG
396 return ENC_RETURN_UNSUPPORTED_PARA;353 return ENC_RETURN_UNSUPPORTED_PARA;
397 354
398 }355 }
@@ -1849,51 +1806,6 @@ void OutputCpuFeaturesLog (uint32_t uiCpuFeatureFlags, uint32_t uiCpuCores, int3 · 1450 unmodified lines
1849 (uiCpuFeatureFlags & WELS_CPU_AES) ? 'Y' : 'N',1806 (uiCpuFeatureFlags & WELS_CPU_AES) ? 'Y' : 'N',
1850 uiCpuCores,1807 uiCpuCores,
1851 iCacheLineSize);1808 iCacheLineSize);
1852
1853#ifdef _DEBUG // output at console & _debug
1854 fprintf (stderr, "WELS CPU features/capacities (0x%x) detected: \n" \
1855 "HTT: %c, " \
1856 "MMX: %c, " \
1857 "MMXEX: %c, " \
1858 "SSE: %c, " \
1859 "SSE2: %c, " \
1860 "SSE3: %c, " \
1861 "SSSE3: %c, " \
1862 "SSE4.1: %c, " \
1863 "SSE4.2: %c, " \
1864 "AVX: %c, " \
1865 "FMA: %c, " \
1866 "X87-FPU: %c, " \
1867 "3DNOW: %c, " \
1868 "3DNOWEX: %c, " \
1869 "ALTIVEC: %c, " \
1870 "CMOV: %c, " \
1871 "MOVBE: %c, " \
1872 "AES: %c, " \
1873 "NUMBER OF LOGIC PROCESSORS ON CHIP: %d, " \
1874 "CPU CACHE LINE SIZE (BYTES): %d\n",
1875 uiCpuFeatureFlags,
1876 (uiCpuFeatureFlags & WELS_CPU_HTT) ? 'Y' : 'N',
1877 (uiCpuFeatureFlags & WELS_CPU_MMX) ? 'Y' : 'N',
1878 (uiCpuFeatureFlags & WELS_CPU_MMXEXT) ? 'Y' : 'N',
1879 (uiCpuFeatureFlags & WELS_CPU_SSE) ? 'Y' : 'N',
1880 (uiCpuFeatureFlags & WELS_CPU_SSE2) ? 'Y' : 'N',
1881 (uiCpuFeatureFlags & WELS_CPU_SSE3) ? 'Y' : 'N',
1882 (uiCpuFeatureFlags & WELS_CPU_SSSE3) ? 'Y' : 'N',
1883 (uiCpuFeatureFlags & WELS_CPU_SSE41) ? 'Y' : 'N',
1884 (uiCpuFeatureFlags & WELS_CPU_SSE42) ? 'Y' : 'N',
1885 (uiCpuFeatureFlags & WELS_CPU_AVX) ? 'Y' : 'N',
1886 (uiCpuFeatureFlags & WELS_CPU_FMA) ? 'Y' : 'N',
1887 (uiCpuFeatureFlags & WELS_CPU_FPU) ? 'Y' : 'N',
1888 (uiCpuFeatureFlags & WELS_CPU_3DNOW) ? 'Y' : 'N',
1889 (uiCpuFeatureFlags & WELS_CPU_3DNOWEXT) ? 'Y' : 'N',
1890 (uiCpuFeatureFlags & WELS_CPU_ALTIVEC) ? 'Y' : 'N',
1891 (uiCpuFeatureFlags & WELS_CPU_CMOV) ? 'Y' : 'N',
1892 (uiCpuFeatureFlags & WELS_CPU_MOVBE) ? 'Y' : 'N',
1893 (uiCpuFeatureFlags & WELS_CPU_AES) ? 'Y' : 'N',
1894 uiCpuCores,
1895 iCacheLineSize);
1896#endif//_DEBUG
1897}1809}
1898 1810
1899/*!1811/*!
@@ -1917,7 +1829,7 @@ int32_t WelsInitEncoderExt (sWelsEncCtx** ppCtx, SWelsSvcCodingParam* pCodingPar · 17 unmodified lines
1917 return 1;1829 return 1;
1918 }1830 }
1919 1831
1920 iRet = ParamValidationExt (pCodingParam);1832 iRet = ParamValidationExt (*ppCtx,pCodingParam);
1921 if (iRet != 0) {1833 if (iRet != 0) {
1922 WelsLog (NULL, WELS_LOG_ERROR, "WelsInitEncoderExt(), ParamValidationExt failed return %d.\n", iRet);1834 WelsLog (NULL, WELS_LOG_ERROR, "WelsInitEncoderExt(), ParamValidationExt failed return %d.\n", iRet);
1923 return iRet;1835 return iRet;
@@ -3569,7 +3481,7 @@ int32_t WelsEncoderParamAdjust (sWelsEncCtx** ppCtx, SWelsSvcCodingParam* pNewPa · 1645 unmodified lines
3569 if (NULL == ppCtx || NULL == *ppCtx || NULL == pNewParam) return 1;3481 if (NULL == ppCtx || NULL == *ppCtx || NULL == pNewParam) return 1;
3570 3482
3571 /* Check validation in new parameters */3483 /* Check validation in new parameters */
3572 iReturn = ParamValidationExt (pNewParam);3484 iReturn = ParamValidationExt (*ppCtx,pNewParam);
3573 if (iReturn != ENC_RETURN_SUCCESS) return iReturn;3485 if (iReturn != ENC_RETURN_SUCCESS) return iReturn;
3574 3486
3575 pOldParam = (*ppCtx)->pSvcParam;3487 pOldParam = (*ppCtx)->pSvcParam;

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t