您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ ADM_error函数代码示例

51自学网 2021-06-01 19:33:47
  C++
这篇教程C++ ADM_error函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中ADM_error函数的典型用法代码示例。如果您正苦于以下问题:C++ ADM_error函数的具体用法?C++ ADM_error怎么用?C++ ADM_error使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了ADM_error函数的28个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: ADM_coreVideoFilterQtGl

/**    /fn openGlBenchmark    /brief constructor*/openGlBenchmark::openGlBenchmark(  ADM_coreVideoFilter *in,CONFcouple *setup) : ADM_coreVideoFilterQtGl(in,setup){UNUSED_ARG(setup);        widget->makeCurrent();        fboY->bind();        printf("Compiling shader /n");        glProgramY = new QGLShaderProgram(context);        ADM_assert(glProgramY);        if ( !glProgramY->addShaderFromSourceCode(QGLShader::Fragment, myShaderY))        {                ADM_error("[GL Render] Fragment log: %s/n", glProgramY->log().toUtf8().constData());                ADM_assert(0);        }        if ( !glProgramY->link())        {            ADM_error("[GL Render] Link log: %s/n", glProgramY->log().toUtf8().constData());            ADM_assert(0);        }        if ( !glProgramY->bind())        {                ADM_error("[GL Render] Binding FAILED/n");                ADM_assert(0);        }        fboY->release();        widget->doneCurrent();}
开发者ID:BackupTheBerlios,项目名称:avidemux-svn,代码行数:33,


示例2: ADM_warning

/**    /fn resetVdpau*/bool vdpauVideoFilterDeint::setupVdpau(void){    scaler=NULL;    secondField=false;    nextFrame=0;    if(!admVdpau::isOperationnal())    {        ADM_warning("Vdpau not operationnal/n");        return false;    }       if(VDP_STATUS_OK!=admVdpau::outputSurfaceCreate(VDP_RGBA_FORMAT_B8G8R8A8,                        info.width,info.height,&outputSurface))     {        ADM_error("Cannot create outputSurface0/n");        return false;    }    for(int i=0;i<ADM_NB_SURFACES;i++) surfacePool[i]=VDP_INVALID_HANDLE;    for(int i=0;i<ADM_NB_SURFACES;i++)    {        if(VDP_STATUS_OK!=admVdpau::surfaceCreate(   previousFilter->getInfo()->width,                                                    previousFilter->getInfo()->height,                                                    &(surfacePool[i])))         {            ADM_error("Cannot create input Surface %d/n",i);            goto badInit;        }        aprintf("Created surface %d/n",(int)surfacePool[i]);    }    // allocate our (dummy) images    for(int i=0;i<3;i++)        xslots[i].image=new ADMImageDefault( previousFilter->getInfo()->width,                                             previousFilter->getInfo()->height);                                                if(VDP_STATUS_OK!=admVdpau::mixerCreate(previousFilter->getInfo()->width,                                            previousFilter->getInfo()->height,&mixer,true))     {        ADM_error("Cannot create mixer/n");        goto badInit;    }     tempBuffer=new uint8_t[info.width*info.height*4];    scaler=new ADMColorScalerSimple( info.width,info.height, ADM_COLOR_BGR32A,ADM_COLOR_YV12);    freeSurface.clear();    for(int i=0;i<ADM_NB_SURFACES;i++)              freeSurface.push_back(surfacePool[i]);        ADM_info("VDPAU setup ok/n");    if(initGl()==false)    {        ADM_error("Cannot setup openGL/n");        goto badInit;    }    ADM_info("VDPAU setup ok/n");    return true;badInit:    cleanupVdpau();    passThrough=true;    return false;}
开发者ID:BackupTheBerlios,项目名称:avidemux-svn,代码行数:63,


示例3: ADM_error

/**    /fn samePicture    /brief returns the last already decoded picture*/bool        ADM_Composer::samePicture(ADMImage *image){      _SEGMENT *seg=_segments.getSegment(_currentSegment);      _VIDEOS  *ref=_segments.getRefVideo(seg->_reference);        // Do Pts->ref PTsuint64_t refPts;uint64_t segTime;uint32_t segNo;    if(false==_segments.convertLinearTimeToSeg(_currentPts,&segNo,&segTime))    {          ADM_error("Cannot convert time in samePicture/n");                   return false;    }      ADM_assert(_currentSegment==segNo);      refPts=segTime+seg->_refStartTimeUs;      ADMImage *last=ref->_videoCache->getByPts(refPts);      if(last)      {            image->duplicate(last);            updateImageTiming(seg,image);            return true;      }      ADM_error("Cannot find same image in cache/n");       ADM_info("Looking for PTS=%"PRIu64" ms/n",refPts/1000);      ref->_videoCache->dump();      return false;}
开发者ID:BackupTheBerlios,项目名称:avidemux-svn,代码行数:32,


示例4: ADM_copyFile

/**    /fn ADM_copyFile*/uint8_t ADM_copyFile(const char *source, const char *target){    FILE *fin=ADM_fopen(source,"rb");    if(!fin)    {        ADM_error("Cannot open %s for reading/n",source);        return false;    }    FILE *fout=ADM_fopen(target,"wb");    if(!fout)    {        fclose(fin);        ADM_error("Cannot open %s for writting/n",target);        return false;    }    uint8_t buffer[1024];    while(!feof(fin))    {        int r=fread(buffer,1,1024,fin);        fwrite(buffer,1,r,fout);        if(r!=1024) break;    }    fclose(fin);    fclose(fout);    return true;}
开发者ID:TotalCaesar659,项目名称:avidemux2,代码行数:30,


示例5: ADM_info

/**    /fn init*/bool vdpauRender::init( GUI_WindowInfo *window, uint32_t w, uint32_t h, float zoom){    if(!w || !h)    {        ADM_info("[VDPAU] Not trying to initialize with zero size dimensions/n");        return false;    }    ADM_info("[Vdpau]Init/n");    info=*window;    if(admVdpau::isOperationnal()==false)    {        ADM_warning("[Vdpau] Not operationnal/n");    }    baseInit(w,h,zoom);    // Create couple of outputSurface    surface[0]=surface[1]=VDP_INVALID_HANDLE;    currentSurface=0;        //    int widthToUse=admVdpau::dimensionRoundUp(w);    int heightToUse=admVdpau::dimensionRoundUp(h);        ADM_info("[VDpau] Allocating surfaces %d x%d , %d x %d, %d x x%d/n",w,h,widthToUse,heightToUse,displayWidth,displayHeight);        if(!reallocOutputSurface(displayWidth,displayHeight))    {        goto badInit;    }    if(VDP_STATUS_OK!=admVdpau::surfaceCreate(widthToUse,heightToUse,&input))     {        ADM_error("Cannot create input Surface/n");        goto badInit;    }    if(VDP_STATUS_OK!=admVdpau::presentationQueueCreate(&queue))     {        ADM_error("Cannot create queue/n");        goto badInit;    }     if(VDP_STATUS_OK!=admVdpau::mixerCreate(widthToUse,heightToUse,&mixer))     {        ADM_error("Cannot create mixer/n");        goto badInit;    }     return true;badInit:        return false;}
开发者ID:mean00,项目名称:avidemux2,代码行数:52,


示例6: ADM_initBaseDir

void ADM_initBaseDir(int argc, char *argv[]){    char *home = NULL;    // Get the base directory    const char* homeEnv = getenv("HOME");    if (!homeEnv)    {        printf("Oops: can't determine $HOME.");        return;    }    // Try to open the .avidemux directory    strcpy(ADM_basedir, homeEnv);    AddSeparator(ADM_basedir);    const char *ADM_DIR_NAME = ".avidemux6";    strcat(ADM_basedir, ADM_DIR_NAME);    strcat(ADM_basedir, ADM_SEPARATOR);    if (ADM_mkdir(ADM_basedir))    {        printf("Using %s as base directory for prefs, jobs, etc./n", ADM_basedir);    }    else    {        ADM_error("Oops: cannot create the .avidemux directoryi (%s)/n", ADM_basedir);    }}
开发者ID:TotalCaesar659,项目名称:avidemux2,代码行数:32,


示例7: ADM_MuxerIndexFromName

bool ADM_Composer::setContainer(const char *cont, CONFcouple *c){	int idx = ADM_MuxerIndexFromName(cont);	if (idx == -1)	{		ADM_error("Cannot find muxer for format=%s/n",cont);		return false;	}	ADM_info("setting container as index %d/n",idx);	UI_SetCurrentFormat(idx);	idx = ADM_MuxerIndexFromName(cont);	bool r = false;	if(idx != -1)	{		r = ADM_mx_setExtraConf(idx, c);	}	if (c)		delete c;	return r;}
开发者ID:BackupTheBerlios,项目名称:avidemux-svn,代码行数:26,


示例8: TimeToFrame

/**    /fn TimeToFrame    /brief return the frameno whose PTS==time*/static bool TimeToFrame(_VIDEOS *v,uint64_t time,uint32_t *frame,uint32_t *oflags){    vidHeader *demuxer=v->_aviheader;    bool warn=false;    int nb=demuxer->getMainHeader()->dwTotalFrames;    for(int i=0;i<nb;i++)    {        uint64_t pts,dts;        uint32_t flags;            demuxer->getPtsDts(i,&pts,&dts);            demuxer->getFlags(i,&flags);            if(pts==time)            {                *frame=i;                *oflags=flags;                return true;            }            if(dts!=ADM_NO_PTS && warn==false)            {                if(dts>time)                {                    ADM_error("We reached frame %d with a PTS of %"PRIu64" when looking for PTS %"PRIu64"/n",                                            i,dts,time);                    warn=true;                }            }    }    return false;}
开发者ID:AlexanderStohr,项目名称:avidemux2,代码行数:33,


示例9: GUI_Error_HIG

uint8_t asfHeader::open(const char *name){  _fd=ADM_fopen(name,"rb");  if(!_fd)  {    GUI_Error_HIG("File Error.","Cannot open file/n");    return 0;   }  myName=ADM_strdup(name);  if(!getHeaders())  {    return 0;   }  ADM_info("Stream Video: index=%d, sid=%d/n",(int)_videoIndex,(int)_videoStreamId);  for(int i=0;i<_nbAudioTrack;i++)    ADM_info("Stream Audio: index=%d, sid=%d/n",                (int)_allAudioTracks[i].streamIndex,(int)_allAudioTracks[i].streamIndex);  buildIndex();  fseeko(_fd,_dataStartOffset,SEEK_SET);  _packet=new asfPacket(_fd,_nbPackets,_packetSize,&readQueue,&storageQueue,_dataStartOffset);  curSeq=1;  for(int i=0;i<_nbAudioTrack;i++)  {        _audioAccess[i]=new asfAudioAccess(this,i);        _audioStreams[i]=ADM_audioCreateStream(&(_allAudioTracks[i].wavHeader), _audioAccess[i]);  }  if(!nbImage)    {        ADM_error("No image found /n");        return 0;    }  return 1;}
开发者ID:BackupTheBerlios,项目名称:avidemux-svn,代码行数:33,


示例10: av_strerror

/** * /fn printError * @param s : banner * @param er : error code */void AUDMEncoder_Lavcodec::printError(const char *s,int er){    char strer[256]={0};                av_strerror(er, strer, sizeof(strer));                ADM_error("[Lavcodec] %s,err : %d %s!/n",s,er,strer);                }
开发者ID:TotalCaesar659,项目名称:avidemux2,代码行数:12,


示例11: ADM_info

/**    /fn shiftAudioVideoBy    /brief shift audio and video so that they start close to zero*/bool asfHeader::shiftAudioVideoBy(uint64_t s){    int n=_index.size();    ADM_info("Shifting by %s/n",ADM_us2plain(s));    for(int i=0;i<n;i++)    {        if(_index[i].pts!=ADM_NO_PTS)        {            if(_index[i].pts<s)            {                ADM_error("Shifting too big for frame %d PTS: %s/n",i,ADM_us2plain(_index[i].pts));            }else                _index[i].pts-=s;        }        _index[i].dts=ADM_NO_PTS;/*        if(_index[i].dts!=ADM_NO_PTS)        {            if(_index[i].dts<s)            {                ADM_error("Shifting too big for frame %d DTS: %s/n",i,ADM_us2plain(_index[i].dts));                _index[i].dts=ADM_NO_PTS;            }else                _index[i].dts-=s;        }*/    }    _shiftUs=s;    return true;}
开发者ID:AlexanderStohr,项目名称:avidemux2,代码行数:34,


示例12: ADM_Audiocodec

ADM_AudiocodecAC3::ADM_AudiocodecAC3( uint32_t fourcc, WAVHeader *info,uint32_t extraLength,uint8_t *extraData)		:   ADM_Audiocodec(fourcc,*info){    int flags=0;        ADM_assert(fourcc==WAV_AC3);    ac3_handle=NULL;    ac3_sample=NULL;#ifdef ADM_CPU_X86#define CHK(x,y) if(CpuCaps::has##x()) flags|=MM_ACCEL_X86_##y;    CHK(MMX,MMX);    CHK(3DNOW,3DNOW);    CHK(MMXEXT,MMXEXT);#endif    ac3_handle=(void *)a52_init(flags);    if(!ac3_handle)    {        ADM_error("Cannot init a52/n");        ADM_assert(0);    }    ac3_sample=(sample_t *)a52_samples(AC3_HANDLE);    if(!ac3_sample)    {        ADM_warning("Cannot init a52 sample/n");        ADM_assert(0);    }      }
开发者ID:BackupTheBerlios,项目名称:avidemux-svn,代码行数:30,


示例13: ADM_info

/**    /fn stop    /brief stop*/uint8_t audioDeviceThreaded::stop(){ uint32_t maxWait=3*1000; // Should be enough to drain    ADM_info("[audioDevice]Stopping device...");    if(stopRequest==AUDIO_DEVICE_STARTED)    {        CHANGE_STATE(AUDIO_DEVICE_STOP_REQ);        while(stopRequest==AUDIO_DEVICE_STOP_REQ && maxWait)        {            ADM_usleep(1000);            maxWait--;        }    }    if(!maxWait)    {        ADM_error("Audio device did not stop cleanly/n");    }    localStop();    if(audioBuffer)    {        delete [] audioBuffer;        audioBuffer=NULL;    }    if(silence) delete [] silence;    silence=NULL;    CHANGE_STATE(AUDIO_DEVICE_STOPPED);    return 1;}
开发者ID:BackupTheBerlios,项目名称:avidemux-svn,代码行数:32,


示例14: ADM_info

muxerMp4v2::~muxerMp4v2(){    ADM_info("[Mp4v2Muxer] Destroying/n");    close();    if(handle)        ADM_error("MP4V2: File still opened/n");    currentMuxer=NULL;}
开发者ID:BackupTheBerlios,项目名称:avidemux-svn,代码行数:8,


示例15: denoise3dhq_jdeserialize

bool  denoise3dhq_jdeserialize(const char *file, const ADM_paramList *tmpl,denoise3dhq *key){admJsonToCouple json;CONFcouple *c=json.readFromFile(file);if(!c) {ADM_error("Cannot read json file");return false;}bool r= ADM_paramLoadPartial(c,tmpl,key);delete c;return r;};
开发者ID:JanGruuthuse,项目名称:avidemux2,代码行数:8,


示例16: ADM_error

/**    /fn reallocOutputSurface*/bool vdpauRender::reallocOutputSurface(uint32_t tgtWidth, uint32_t tgtHeight){    if(surface[0]!=VDP_INVALID_HANDLE)  admVdpau::outputSurfaceDestroy(surface[0]);    if(surface[1]!=VDP_INVALID_HANDLE)  admVdpau::outputSurfaceDestroy(surface[1]);    surface[0]=surface[1]=VDP_INVALID_HANDLE;    if(VDP_STATUS_OK!=admVdpau::outputSurfaceCreate(VDP_RGBA_FORMAT_B8G8R8A8,tgtWidth,tgtHeight,&surface[0]))     {        ADM_error("Cannot create outputSurface0/n");        return false;    }    if(VDP_STATUS_OK!=admVdpau::outputSurfaceCreate(VDP_RGBA_FORMAT_B8G8R8A8,tgtWidth,tgtHeight,&surface[1]))     {        ADM_error("Cannot create outputSurface1/n");        return false;    }    return true;}
开发者ID:mean00,项目名称:avidemux2,代码行数:20,


示例17: tryLoadingVideoFilterPlugin

/** * 	/fn tryLoadingVideoFilterPlugin *  /brief try to load the plugin given as argument.. */static uint8_t tryLoadingVideoFilterPlugin(const char *file){	ADM_vf_plugin *plugin = new ADM_vf_plugin(file);    admVideoFilterInfo          *info=NULL;	if (!plugin->isAvailable())	{		printf("[ADM_vf_plugin] Unable to load %s/n", ADM_GetFileName(file));		goto Err_ad;	}	// Check API version	if (plugin->getApiVersion() != VF_API_VERSION)	{		printf("[ADM_vf_plugin] File %s has API version too old (%d vs %d)/n",			ADM_GetFileName(file), plugin->getApiVersion(), VF_API_VERSION);		goto Err_ad;	}    if(!(plugin->supportedUI() & UI_GetCurrentUI()))    {  // FIXME        ADM_info("==> wrong UI/n");        goto Err_ad;    }	// Get infos	uint32_t major, minor, patch;	plugin->getFilterVersion(&major, &minor, &patch);	plugin->nameOfLibrary = ADM_strdup(ADM_GetFileName(file));    info=&(plugin->info);    info->internalName=plugin->getInternalName();    info->desc=plugin->getDesc();    info->displayName=plugin->getDisplayName();    info->category=plugin->getCategory();	printf("[ADM_vf_plugin] Plugin loaded version %d.%d.%d, name %s/%s/n",		major, minor, patch, info->internalName, info->displayName);    if(info->category>=VF_MAX)    {        ADM_error("This filter has an unknown caregory!/n");        goto Err_ad;    }else    {        plugin->tag=ADM_videoFilterPluginsList[info->category].size()+info->category*100;        ADM_videoFilterPluginsList[info->category].append(plugin);    }	return 1;Err_ad:	delete plugin;	return 0;}
开发者ID:BackupTheBerlios,项目名称:avidemux-svn,代码行数:61,


示例18: ADM_coreVideoFilterQtGl

/**    /fn openGlResize    /brief constructor*/openGlResize::openGlResize(  ADM_coreVideoFilter *in,CONFcouple *setup) : ADM_coreVideoFilterQtGl(in,setup){	if (widget == NULL)	{		original = NULL;		return;	}UNUSED_ARG(setup);        if(!setup || !ADM_paramLoad(setup,gl_resize_param,&configuration))        {            // Default value            configuration.width=info.width;            configuration.height=info.height;        }        original=new ADMImageDefault(in->getInfo()->width,in->getInfo()->height);        info.width=configuration.width;        info.height=configuration.height;        resizeFBO(info.width,info.height);        widget->makeCurrent();        fboY->bind();        printf("Compiling shader /n");        glProgramY = new QGLShaderProgram(context);        ADM_assert(glProgramY);        if ( !glProgramY->addShaderFromSourceCode(QGLShader::Fragment, myShaderY))        {                ADM_error("[GL Render] Fragment log: %s/n", glProgramY->log().toUtf8().constData());                ADM_assert(0);        }        if ( !glProgramY->link())        {            ADM_error("[GL Render] Link log: %s/n", glProgramY->log().toUtf8().constData());            ADM_assert(0);        }        if ( !glProgramY->bind())        {                ADM_error("[GL Render] Binding FAILED/n");                ADM_assert(0);        }        fboY->release();        widget->doneCurrent();}
开发者ID:BackupTheBerlios,项目名称:avidemux-svn,代码行数:48,


示例19: ADM_error

boolFileSystem::rename( string from, string to ){    if(!ADM_renameFile(from.c_str(),to.c_str()))    {        ADM_error("Cannot rename %s to %s/n",from.c_str(),to.c_str());        return true;    }    return false;}
开发者ID:AlexanderStohr,项目名称:avidemux2,代码行数:10,


示例20: processError

/**    /fn processError*/static bool processError(const char *e){    int x=glGetError();    if(x!=GL_NO_ERROR)    {        ADM_error("%s: Error : %d %s/n",e,x,gluErrorString(x));        return false;    }    return true;}
开发者ID:TotalCaesar659,项目名称:avidemux2,代码行数:13,


示例21: ADM_coreVideoFilterQtGl

/**    /fn rotateGl    /brief constructor*/rotateGl::rotateGl(  ADM_coreVideoFilter *in,CONFcouple *setup) : ADM_coreVideoFilterQtGl(in,setup){	if (widget == NULL)	{		original = NULL;		return;	}UNUSED_ARG(setup);        original=new ADMImageDefault(in->getInfo()->width,in->getInfo()->height);        if(!setup || !ADM_paramLoad(setup,gl_rotate_param,&params))        {            // Default value            params.angle=0;        }        widget->makeCurrent();        fboY->bind();        printf("Compiling shader /n");        glProgramY = new QGLShaderProgram(context);        ADM_assert(glProgramY);        if ( !glProgramY->addShaderFromSourceCode(QGLShader::Fragment, myShaderY))        {                ADM_error("[GL Render] Fragment log: %s/n", glProgramY->log().toUtf8().constData());                ADM_assert(0);        }        if ( !glProgramY->link())        {            ADM_error("[GL Render] Link log: %s/n", glProgramY->log().toUtf8().constData());            ADM_assert(0);        }        if ( !glProgramY->bind())        {                ADM_error("[GL Render] Binding FAILED/n");                ADM_assert(0);        }        glList=glGenLists(1);        genQuad();        fboY->release();        widget->doneCurrent();}
开发者ID:BackupTheBerlios,项目名称:avidemux-svn,代码行数:46,


示例22: ADM_coreVideoFilterQtGl

/**    /fn ctor*/glRGB::glRGB(ADM_coreVideoFilter *previous,CONFcouple *conf)             :  ADM_coreVideoFilterQtGl(previous,conf){        widget->makeCurrent();        fboY->bind();        ADM_info("Compiling shader /n");        glProgramY = new QGLShaderProgram(context);        ADM_assert(glShaderRgb);        if ( !glProgramY->addShaderFromSourceCode(QGLShader::Fragment, glShaderRgb))        {                ADM_error("[GL Render] Fragment log: %s/n", glProgramY->log().toUtf8().constData());                ADM_assert(0);        }        if ( !glProgramY->link())        {            ADM_error("[GL Render] Link log: %s/n", glProgramY->log().toUtf8().constData());            ADM_assert(0);        }        if ( !glProgramY->bind())        {                ADM_error("[GL Render] Binding FAILED/n");                ADM_assert(0);        }        fboY->release();        widget->doneCurrent();        //        memset(realMatrix,0,sizeof(realMatrix));        realMatrix[0]=0.299;        realMatrix[1]=0.587;        realMatrix[2]=0.114;        realMatrix[4]=-0.14713;        realMatrix[5]=-0.28886;        realMatrix[6]=+0.436;        realMatrix[8]=+0.615;        realMatrix[9]=-0.51499;        realMatrix[10]=-0.10001;}
开发者ID:TotalCaesar659,项目名称:avidemux2,代码行数:45,


示例23: ADM_getIndexForIso639

/** * /fn ADM_getIndexForIso639 * @param iso * @return  */int                 ADM_getIndexForIso639(const char *iso){    int n=ADM_getLanguageListSize();    for(int i=0;i<n;i++)    {        if(!strcmp(languages[i].iso639_2,iso)) return i;    }    ADM_error("Language %s not found in list/n",iso);    return -1;    }
开发者ID:TotalCaesar659,项目名称:avidemux2,代码行数:16,


示例24: call_slave

/** *  * @param p */void call_slave(char *p){    uint32_t i;    sscanf(p,"%" PRIu32,&i);    ADM_info("Slave on port  %" PRIu32"/n",i);    if(!ADM_slaveConnect(i))    {            ADM_error("Cannot connect to master/n");            exit(-1);    }}
开发者ID:mean00,项目名称:avidemux2,代码行数:15,


示例25: ADM_error

bool admJsonToCouple::scan( void *xnode,string name){    JSONNODE *node=(JSONNODE *)xnode;   if (!node){        ADM_error("Invalid JSON Node/n");        return false;    }     JSONNODE_ITERATOR i = json_begin(node);    while (i != json_end(node)){        if (*i == NULL){            ADM_error("Invalid JSON Node/n");            return false;        }        json_char *node_name = json_name(*i);        //printf("Node :%s/n",node_name);        // recursively call ourselves to dig deeper into the tree        if (json_type(*i) == JSON_ARRAY || json_type(*i) == JSON_NODE)        {            if(name=="")                 scan(*i,string(node_name));            else                scan(*i,name+string(".")+string(node_name));        }        else        {            keyVal k;            json_char *node_value = json_as_string(*i);            if(name=="")                 k.key=string(node_name);            else                 k.key=string(name)+string(".")+string(node_name);            k.value=string(node_value);            readItems.push_back(k);            json_free(node_value);        }        json_free(node_name);        ++i;    }    return true;}
开发者ID:AlexanderStohr,项目名称:avidemux2,代码行数:41,


示例26: ADM_coreVideoFilterQtGl

/**    /fn openGlVertex    /brief constructor*/openGlVertex::openGlVertex(  ADM_coreVideoFilter *in,CONFcouple *setup) : ADM_coreVideoFilterQtGl(in,setup){UNUSED_ARG(setup);        widget->makeCurrent();        fboY->bind();        printf("Compiling shader /n");        // vertex shader                // frag shader        glProgramY = new QGLShaderProgram(context);        ADM_assert(glProgramY);#if 1        if ( !glProgramY->addShaderFromSourceCode(QGLShader::Vertex, myVertex))        {                ADM_error("[GL Render] Vertex log: %s/n", glProgramY->log().toUtf8().constData());                ADM_assert(0);        }#endif        if ( !glProgramY->addShaderFromSourceCode(QGLShader::Fragment, myShaderY))        {                ADM_error("[GL Render] Fragment log: %s/n", glProgramY->log().toUtf8().constData());                ADM_assert(0);        }        if ( !glProgramY->link())        {            ADM_error("[GL Render] Link log: %s/n", glProgramY->log().toUtf8().constData());            ADM_assert(0);        }        if ( !glProgramY->bind())        {                ADM_error("[GL Render] Binding FAILED/n");                ADM_assert(0);        }        glList=glGenLists(1);        buildVertex();        fboY->release();        widget->doneCurrent();}
开发者ID:TotalCaesar659,项目名称:avidemux2,代码行数:45,


示例27: ADM_coreVideoFilterQtGl

/**    /fn glYadif    /brief constructor*/glYadif::glYadif(  ADM_coreVideoFilter *in,CONFcouple *setup) : ADM_coreVideoFilterQtGl(in,setup){UNUSED_ARG(setup);        widget->makeCurrent();        fboY->bind();        printf("Compiling shader /n");        glProgramY = new QGLShaderProgram(context);        ADM_assert(glProgramY);        if ( !glProgramY->addShaderFromSourceCode(QGLShader::Fragment, myShaderY))        {                ADM_error("[GL Render] Fragment log: %s/n", glProgramY->log().toUtf8().constData());                ADM_assert(0);        }        if ( !glProgramY->link())        {            ADM_error("[GL Render] Link log: %s/n", glProgramY->log().toUtf8().constData());            ADM_assert(0);        }        if ( !glProgramY->bind())        {                ADM_error("[GL Render] Binding FAILED/n");                ADM_assert(0);        }        fboY->release();        widget->doneCurrent();        original=new ADMImageDefault(in->getInfo()->width,in->getInfo()->height);        if(!setup || !ADM_paramLoad(setup,yadif_param,&configuration))        {            // Default value            configuration.mode=0;            configuration.order=1;        }        vidCache = new VideoCache (10, in);        updateInfo();        myName="yadif";}
开发者ID:sl1pkn07,项目名称:avidemux2,代码行数:45,


示例28: ADM_info

/**    /fn setIdentityCSC    /brief set the RGB/YUV matrix to identity so that data are still YUV at the end            Should not work, but it does.*/bool vdpauVideoFilterDeint::setIdentityCSC(void){    ADM_info("Setting custom CSC/n");    const VdpCSCMatrix   matrix={{1.,0,0,0},{0,1.,0,0},{0,0,1.,0}};        VdpVideoMixerAttribute attributes_key[]={VDP_VIDEO_MIXER_ATTRIBUTE_CSC_MATRIX};    const void * attribute_values[] = {&matrix};        VdpStatus st = admVdpau::mixerSetAttributesValue(mixer, 1,attributes_key, (void * const *)attribute_values);    if(st!=VDP_STATUS_OK)        ADM_error("Cannot set custom matrix (CSC)/n");    return true;}
开发者ID:knowledgejunkie,项目名称:avidemux2,代码行数:17,



注:本文中的ADM_error函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ ADM_info函数代码示例
C++ ADM_assert函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。