Changeset 63:9e27c981b702 in mediastreamer2


Ignore:
Timestamp:
Oct 4, 2008 10:59:24 PM (5 years ago)
Author:
smorlat <smorlat@…>
Branch:
default
Message:
  • bug fixes
  • new winsnd3.c (clear audio)

git-svn-id: svn+ssh://svn.savannah.nongnu.org/linphone/trunk@66 3f6dc0c8-ddfe-455d-9043-3cd528dc4637

Location:
linphone
Files:
1 added
9 edited

Legend:

Unmodified
Added
Removed
  • linphone/coreapi/misc.c

    r62 r63  
    465465        laddr.sin_port=htons(local_port); 
    466466        if (bind(sock,(struct sockaddr*)&laddr,sizeof(laddr))<0){ 
    467                 ms_error("Bind to 0.0.0.0:%i failed: %s",local_port,strerror(errno)); 
     467                ms_error("Bind socket to 0.0.0.0:%i failed: %s",local_port,getSocketError()); 
    468468                close_socket(sock); 
    469469                return -1; 
     
    637637        int port=extract_sip_port(config_file); 
    638638        const char *wakeup="WAKEUP sip:127.0.0.1 SIP/2.0\r\n" 
    639                 "Via: SIP/2.0/UDP 127.0.0.1:57655;rport;branch=z9hG4bK%u\r\n" 
     639                "Via: SIP/2.0/UDP 127.0.0.1:%i;rport;branch=z9hG4bK%u\r\n" 
    640640                "From: <sip:another_linphone@127.0.0.1>;tag=%u\r\n" 
    641641                "To:   <sip:you@127.0.0.1>\r\n" 
     
    651651                snprintf(tmp,sizeof(tmp),"127.0.0.1:%i",port); 
    652652                if (parse_stun_server_addr(tmp,&ss,&sslen)==0){ 
    653                         int sock=create_socket(57655); 
     653                        int locport=57123; 
     654                        ortp_socket_t sock=create_socket(locport); 
     655                        if (sock<0) sock=create_socket(++locport); 
    654656                        if (sock>=0){ 
    655657                                char req[512]; 
    656                                 snprintf(req,sizeof(req),wakeup,random(),random(),random()); 
    657                                 if (sendto(sock,req,strlen(req),0,(struct sockaddr*)&ss,sslen)>0){ 
     658                                snprintf(req,sizeof(req),wakeup,locport,random(),random(),random()); 
     659                                if (connect(sock,(struct sockaddr*)&ss,sslen)<0){ 
     660                                        fprintf(stderr,"connect failed: %s\n",getSocketError()); 
     661                                }else if (send(sock,req,strlen(req),0)>0){ 
    658662                                        /*wait a bit for a response*/ 
    659663                                        int i; 
    660664                                        for(i=0;i<10;++i){ 
    661                                                 if (recv(sock,tmp,sizeof(tmp),0)>0){ 
    662                                                         ms_message("Another linphone has been woken-up !"); 
    663                                                         close(sock); 
     665                                                if (recv(sock,req,sizeof(req),0)>0){ 
     666                                                        close_socket(sock); 
    664667                                                        return 0; 
     668                                                }else if (getSocketErrorCode()!=EWOULDBLOCK){ 
     669                                                        break; 
    665670                                                } 
    666671#ifdef WIN32 
     
    670675#endif 
    671676                                        } 
    672                                 } 
    673                         }else ms_error("Fail to create socket on port 57655"); 
    674                         close(sock); 
     677                                }else ms_message("sendto() of WAKEUP request failed, nobody to wakeup."); 
     678                        } 
     679                        close_socket(sock); 
    675680                } 
    676681        } 
  • linphone/gtk-glade/linphone.iss

    r59 r63  
    3535Source: "..\..\linphone-deps\bin\exosip2.dll"; DestDir: "{app}"; Flags: ignoreversion 
    3636Source: "..\..\linphone-deps\bin\libogg.dll"; DestDir: "{app}"; Flags: ignoreversion 
    37 Source: "..\..\linphone-deps\bin\speex.dll"; DestDir: "{app}"; Flags: ignoreversion 
     37;;Source: "..\..\linphone-deps\bin\speex.dll"; DestDir: "{app}"; Flags: ignoreversion 
    3838Source: "..\..\linphone-deps\bin\avcodec.dll"; DestDir: "{app}"; Flags: ignoreversion 
    3939Source: "..\..\linphone-deps\bin\avutil.dll"; DestDir: "{app}"; Flags: ignoreversion 
    40 Source: "..\..\linphone-deps\bin\libspeex-1.dll"; DestDir: "{app}"; Flags: ignoreversion 
    41 Source: "..\..\linphone-deps\bin\libspeexdsp-1.dll"; DestDir: "{app}"; Flags: ignoreversion 
     40;;Source: "..\..\linphone-deps\bin\libspeex-1.dll"; DestDir: "{app}"; Flags: ignoreversion 
     41;;Source: "..\..\linphone-deps\bin\libspeexdsp-1.dll"; DestDir: "{app}"; Flags: ignoreversion 
    4242Source: "..\mediastreamer2\build\win32native\mediastreamer2.dll"; DestDir: "{app}"; Flags: ignoreversion 
    4343Source: "..\oRTP\build\win32native\ortp.dll"; DestDir: "{app}"; Flags: ignoreversion 
  • linphone/gtk-glade/main.c

    r62 r63  
    717717        add_pixmap_directory("pixmaps"); 
    718718        add_pixmap_directory(PACKAGE_DATA_DIR "/pixmaps/linphone"); 
     719#ifdef WIN32 
     720        add_pixmap_directory("linphone"); 
     721#endif 
    719722 
    720723        the_ui=linphone_gtk_create_window("main"); 
  • linphone/mediastreamer2/build/win32native/mediastreamer2.dev

    r59 r63  
    445445 
    446446[Unit42] 
    447 FileName=..\..\src\winsnd2.c 
     447FileName=..\..\src\winsnd3.c 
    448448CompileCpp=0 
    449449Folder=mediastreamer2 
     
    513513ResourceIncludes= 
    514514MakeIncludes= 
    515 Compiler=-ggdb_@@_-DINET6 _@@_-DORTP_INET6 _@@_-D_WORKAROUND_MINGW32_BUGS_@@_-D_WIN32_WINNT=0x0501 _@@_-DNOSDL_@@_-DVIDEO_ENABLED_@@_-DNORESAMPLE_@@_-Wall _@@_-DHAVE_LIBAVCODEC_AVCODEC_H_@@_ 
     515Compiler=-ggdb_@@_-DINET6 _@@_-DORTP_INET6 _@@_-D_WORKAROUND_MINGW32_BUGS_@@_-D_WIN32_WINNT=0x0501 _@@_-DNOSDL_@@_-DVIDEO_ENABLED_@@_-DNORESAMPLE_@@_-Wall _@@_-DHAVE_LIBAVCODEC_AVCODEC_H_@@_-D_TRUE_TIME_@@_ 
    516516CppCompiler= 
    517517Linker=-lortp_@@_-lavcodec_@@_-lavutil_@@_-ltheora_@@_-lspeex_@@_-lspeexdsp_@@_-lgsm_@@_-lws2_32_@@_-lwinmm_@@_-lvfw32_@@_-logg_@@__@@_ 
  • linphone/mediastreamer2/src/msvideo.c

    r62 r63  
    157157        uint8_t *p,*pe; 
    158158        int i,j; 
    159         uint8_t *end=buf+(h*linesize*3); 
     159        uint8_t *end=buf+(h*linesize); 
    160160        uint8_t exch; 
    161161        p=buf; 
    162162        pe=end-1; 
    163163        for(i=0;i<h/2;++i){ 
    164                 for(j=0;i<w;++j){ 
     164                for(j=0;i<w*3;++j){ 
    165165                        exch=p[i]; 
    166166                        p[i]=pe[-i]; 
  • linphone/mediastreamer2/src/winsnd2.c

    r0 r63  
    239239} 
    240240 
     241 
     242#ifndef _TRUE_TIME 
    241243static uint64_t winsnd_get_cur_time( void *data){ 
    242244        WinSnd *d=(WinSnd*)data; 
     
    245247        return curtime; 
    246248} 
     249#endif 
    247250 
    248251 
     
    409412                return ; 
    410413        } 
     414#ifndef _TRUE_TIME 
    411415        ms_ticker_set_time_func(f->ticker,winsnd_get_cur_time,d); 
     416#endif 
    412417} 
    413418 
     
    416421        MMRESULT mr; 
    417422        int i; 
     423#ifndef _TRUE_TIME 
    418424        ms_ticker_set_time_func(f->ticker,NULL,NULL); 
     425#endif 
    419426        d->running=FALSE; 
    420427        mr=waveInStop(d->indev); 
  • linphone/mediastreamer2/src/winvideo.c

    r55 r63  
    5959        bool_t started; 
    6060        bool_t autostarted; 
     61        bool_t invert_rgb; 
    6162}V4wState; 
    6263 
     
    8788 
    8889static bool_t try_format(V4wState *s, BITMAPINFO *videoformat, MSPixFmt pixfmt){ 
     90        bool_t ret; 
    8991        capGetVideoFormat(s->capvideo, videoformat, sizeof(BITMAPINFO)); 
    9092        videoformat->bmiHeader.biSizeImage = 0; 
     
    107109                        return FALSE; 
    108110        } 
    109         return capSetVideoFormat(s->capvideo, videoformat, sizeof(BITMAPINFO)); 
     111        ret=capSetVideoFormat(s->capvideo, videoformat, sizeof(BITMAPINFO)); 
     112        if (ret) { 
     113                /*recheck video format */ 
     114                capGetVideoFormat(s->capvideo, videoformat, sizeof(BITMAPINFO)); 
     115        } 
     116        return ret; 
    110117} 
    111118 
     
    186193 
    187194        driver_last=ms_fourcc_to_pix_fmt(videoformat.bmiHeader.biCompression); 
    188  
    189195        if (s->startwith_yuv_bug==TRUE && try_format(s,&videoformat,MS_RGB24)){ 
    190196                s->pix_fmt=MS_RGB24; 
     
    210216                return -1; 
    211217        } 
     218        if (s->pix_fmt==MS_RGB24){ 
     219                s->invert_rgb=(videoformat.bmiHeader.biHeight>0); 
     220        }else s->invert_rgb=FALSE; 
    212221        if (!capSetCallbackOnVideoStream(s->capvideo, VideoStreamCallback)) 
    213222        { 
     
    247256        s->started=FALSE; 
    248257        s->autostarted=FALSE; 
    249  
     258        s->invert_rgb=FALSE; 
    250259#ifdef AMD_HACK2 
    251260        /* avoid bug with USB vimicro cards: 
     
    502511                                if (om!=NULL) freemsg(om); 
    503512                                om=m; 
     513                        } 
     514                        if (om!=NULL){ 
     515                                if (s->invert_rgb) rgb24_revert(om->b_rptr,s->vsize.width,s->vsize.height,s->vsize.width*3); 
    504516                        } 
    505517                }else { 
  • linphone/oRTP/build/win32native/ortp-dll.dev

    r0 r63  
    382382AutoIncBuildNrOnRebuild=0 
    383383AutoIncBuildNrOnCompile=0 
    384 UnitCount=40 
     384UnitCount=41 
    385385 
    386386[Unit37] 
     
    470470Priority=1000 
    471471OverrideBuildCmd=0 
    472 BuildCmd=       $(CC) -c b64.c -o "Default Profile/b64.o" $(CFLAGS) 
    473  
     472BuildCmd=$(CC) -c b64.c -o "Default Profile/b64.o" $(CFLAGS) 
     473 
  • linphone/win32/liblinphone.dev

    r0 r63  
    212212AutoIncBuildNrOnRebuild=0 
    213213AutoIncBuildNrOnCompile=0 
     214UnitCount=18 
    214215 
    215216[Profile1] 
     
    226227Linker= 
    227228PreprocDefines= 
    228 CompilerSettings=0000000000100000000000 
     229CompilerSettings=0000000000010000000000 
    229230Icon= 
    230231ExeOutput=..\win32 
Note: See TracChangeset for help on using the changeset viewer.