Changeset 1243


Ignore:
Timestamp:
May 2, 2007 1:19:33 PM (12 years ago)
Author:
bennylp
Message:

Fixed nullsound in Symbian

Location:
pjproject/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/build.symbian/pjproject.cww

    r1242 r1243  
    316316        <EDOCTYPE>1</EDOCTYPE> 
    317317        <PATH USERELATIVEPATHS = "true">..\pjsip-apps\src\symbian_ua\ua.cpp</PATH> 
    318         <MAXIMIZED>true</MAXIMIZED> 
    319318        <FRAMELOC> 
    320319            <X>4</X> 
    321             <Y>4</Y> 
     320            <Y>23</Y> 
    322321        </FRAMELOC> 
    323322        <FRAMESIZE> 
     
    337336            </GROUPID> 
    338337        </DOCKINFO> 
     338    </WINDOW> 
     339    <WINDOW> 
     340        <SESSION>-1</SESSION> 
     341        <EDOCTYPE>1</EDOCTYPE> 
     342        <PATH USERELATIVEPATHS = "true">..\pjsip\src\pjsua-lib\pjsua_media.c</PATH> 
     343        <FRAMELOC> 
     344            <X>10</X> 
     345            <Y>40</Y> 
     346        </FRAMELOC> 
     347        <FRAMESIZE> 
     348            <W>630</W> 
     349            <H>410</H> 
     350        </FRAMESIZE> 
     351        <DOCKINFO> 
     352            <STATUS>0</STATUS> 
     353            <ROW></ROW> 
     354            <COLUMN></COLUMN> 
     355            <DOCKBARID></DOCKBARID> 
     356            <PCTWIDTH></PCTWIDTH> 
     357            <HGT></HGT> 
     358            <GROUPID> 
     359                <GIDHIGHPART></GIDHIGHPART> 
     360                <GIDLOWPART></GIDLOWPART> 
     361            </GROUPID> 
     362        </DOCKINFO> 
     363    </WINDOW> 
     364    <WINDOW> 
     365        <SESSION>-1</SESSION> 
     366        <EDOCTYPE>1</EDOCTYPE> 
     367        <PATH USERELATIVEPATHS = "true">..\pjmedia\src\pjmedia\nullsound.c</PATH> 
     368        <FRAMELOC> 
     369            <X>10</X> 
     370            <Y>40</Y> 
     371        </FRAMELOC> 
     372        <FRAMESIZE> 
     373            <W>630</W> 
     374            <H>410</H> 
     375        </FRAMESIZE> 
     376        <DOCKINFO> 
     377            <STATUS>0</STATUS> 
     378            <ROW></ROW> 
     379            <COLUMN></COLUMN> 
     380            <DOCKBARID></DOCKBARID> 
     381            <PCTWIDTH></PCTWIDTH> 
     382            <HGT></HGT> 
     383            <GROUPID> 
     384                <GIDHIGHPART></GIDHIGHPART> 
     385                <GIDLOWPART></GIDLOWPART> 
     386            </GROUPID> 
     387        </DOCKINFO> 
     388    </WINDOW> 
     389    <WINDOW> 
     390        <SESSION>-1</SESSION> 
     391        <EDOCTYPE>1</EDOCTYPE> 
     392        <PATH USERELATIVEPATHS = "true">..\pjmedia\include\pjmedia\sound.h</PATH> 
     393        <FRAMELOC> 
     394            <X>10</X> 
     395            <Y>40</Y> 
     396        </FRAMELOC> 
     397        <FRAMESIZE> 
     398            <W>630</W> 
     399            <H>410</H> 
     400        </FRAMESIZE> 
     401        <DOCKINFO> 
     402            <STATUS>0</STATUS> 
     403            <ROW></ROW> 
     404            <COLUMN></COLUMN> 
     405            <DOCKBARID></DOCKBARID> 
     406            <PCTWIDTH></PCTWIDTH> 
     407            <HGT></HGT> 
     408            <GROUPID> 
     409                <GIDHIGHPART></GIDHIGHPART> 
     410                <GIDLOWPART></GIDLOWPART> 
     411            </GROUPID> 
     412        </DOCKINFO> 
     413    </WINDOW> 
     414    <WINDOW> 
     415        <SESSION>-1</SESSION> 
     416        <EDOCTYPE>20</EDOCTYPE> 
     417        <MAXIMIZED>true</MAXIMIZED> 
     418        <FRAMELOC> 
     419            <X>0</X> 
     420            <Y>0</Y> 
     421        </FRAMELOC> 
     422        <FRAMESIZE> 
     423            <W>824</W> 
     424            <H>1521</H> 
     425        </FRAMESIZE> 
     426        <DOCKINFO> 
     427            <STATUS>0</STATUS> 
     428            <ROW></ROW> 
     429            <COLUMN></COLUMN> 
     430            <DOCKBARID></DOCKBARID> 
     431            <PCTWIDTH></PCTWIDTH> 
     432            <HGT></HGT> 
     433            <GROUPID> 
     434                <GIDHIGHPART></GIDHIGHPART> 
     435                <GIDLOWPART></GIDLOWPART> 
     436            </GROUPID> 
     437        </DOCKINFO> 
     438            <SYMBOLICSWINSETTINGS EXECUTABLEPATH = "C:\Symbian\9.1\S60_3rd\EPOC32\RELEASE\WINSCW\UDEB\euser.dll" MACHINENAME = "Local Windows PC"/> 
     439            <SYMBOLICSWINSETTINGS EXECUTABLEPATH = "C:\Symbian\9.1\S60_3rd\EPOC32\RELEASE\WINSCW\UDEB\ekern.exe" MACHINENAME = "Local Windows PC"/> 
     440            <SYMBOLICSWINSETTINGS EXECUTABLEPATH = "C:\WINDOWS\system32\ntdll.dll" MACHINENAME = "Local Windows PC"/> 
    339441    </WINDOW> 
    340442    <WINDOW> 
     
    372474        </FRAMELOC> 
    373475        <FRAMESIZE> 
    374             <W>792</W> 
    375             <H>1413</H> 
    376         </FRAMESIZE> 
    377         <DOCKINFO> 
    378             <STATUS>0</STATUS> 
    379             <ROW></ROW> 
    380             <COLUMN></COLUMN> 
    381             <DOCKBARID></DOCKBARID> 
    382             <PCTWIDTH></PCTWIDTH> 
    383             <HGT></HGT> 
    384             <GROUPID> 
    385                 <GIDHIGHPART></GIDHIGHPART> 
    386                 <GIDLOWPART></GIDLOWPART> 
    387             </GROUPID> 
    388         </DOCKINFO> 
     476            <W>816</W> 
     477            <H>1494</H> 
     478        </FRAMESIZE> 
     479        <DOCKINFO> 
     480            <STATUS>0</STATUS> 
     481            <ROW></ROW> 
     482            <COLUMN></COLUMN> 
     483            <DOCKBARID></DOCKBARID> 
     484            <PCTWIDTH></PCTWIDTH> 
     485            <HGT></HGT> 
     486            <GROUPID> 
     487                <GIDHIGHPART></GIDHIGHPART> 
     488                <GIDLOWPART></GIDLOWPART> 
     489            </GROUPID> 
     490        </DOCKINFO> 
     491            <SYMBOLICSWINSETTINGS EXECUTABLEPATH = "C:\Symbian\9.1\S60_3rd\EPOC32\RELEASE\WINSCW\UDEB\euser.dll" MACHINENAME = "Local Windows PC"/> 
     492            <SYMBOLICSWINSETTINGS EXECUTABLEPATH = "C:\Symbian\9.1\S60_3rd\EPOC32\RELEASE\WINSCW\UDEB\ekern.exe" MACHINENAME = "Local Windows PC"/> 
     493            <SYMBOLICSWINSETTINGS EXECUTABLEPATH = "C:\WINDOWS\system32\ntdll.dll" MACHINENAME = "Local Windows PC"/> 
    389494    </WINDOW> 
    390495    <WINDOW> 
    391496        <SESSION>-2147483648</SESSION> 
    392497        <EDOCTYPE>23</EDOCTYPE> 
    393         <DEFAULT>true</DEFAULT> 
    394         <MAXIMIZED>true</MAXIMIZED> 
    395498        <FRAMELOC> 
    396499            <X>6</X> 
  • pjproject/trunk/pjmedia/src/pjmedia/nullsound.c

    r974 r1243  
    2020#include <pjmedia/errno.h> 
    2121#include <pj/assert.h> 
     22#include <pj/pool.h> 
    2223 
    2324#if PJMEDIA_SOUND_IMPLEMENTATION==PJMEDIA_SOUND_NULL_SOUND 
     
    3132}; 
    3233 
     34static pj_pool_factory *pool_factory; 
     35 
     36struct pjmedia_snd_stream  
     37{ 
     38        pj_pool_t               *pool; 
     39        pjmedia_dir             dir; 
     40        int                     rec_id; 
     41        int                     play_id; 
     42        unsigned                clock_rate; 
     43        unsigned                channel_count; 
     44        unsigned                samples_per_frame; 
     45        unsigned                bits_per_sample; 
     46        pjmedia_snd_rec_cb      rec_cb; 
     47        pjmedia_snd_play_cb     play_cb; 
     48        void                    *user_data; 
     49}; 
     50 
    3351 
    3452PJ_DEF(pj_status_t) pjmedia_snd_init(pj_pool_factory *factory) 
    3553{ 
    36     PJ_UNUSED_ARG(factory); 
     54    pool_factory = factory; 
     55    return PJ_SUCCESS; 
     56} 
     57 
     58PJ_DEF(pj_status_t) pjmedia_snd_deinit(void) 
     59{ 
    3760    return PJ_SUCCESS; 
    3861} 
     
    5881                                          pjmedia_snd_stream **p_snd_strm) 
    5982{ 
    60     PJ_UNUSED_ARG(index); 
    61     PJ_UNUSED_ARG(clock_rate); 
    62     PJ_UNUSED_ARG(channel_count); 
    63     PJ_UNUSED_ARG(samples_per_frame); 
    64     PJ_UNUSED_ARG(bits_per_sample); 
    65     PJ_UNUSED_ARG(rec_cb); 
    66     PJ_UNUSED_ARG(user_data); 
    67  
    68     *p_snd_strm = (void*)1; 
    69  
    70     return PJ_SUCCESS; 
     83    return pjmedia_snd_open(index, -2, clock_rate, channel_count, 
     84                            samples_per_frame, bits_per_sample, 
     85                            rec_cb, NULL, user_data, p_snd_strm); 
    7186} 
    7287 
     
    8095                                        pjmedia_snd_stream **p_snd_strm ) 
    8196{ 
    82     PJ_UNUSED_ARG(index); 
    83     PJ_UNUSED_ARG(clock_rate); 
    84     PJ_UNUSED_ARG(channel_count); 
    85     PJ_UNUSED_ARG(samples_per_frame); 
    86     PJ_UNUSED_ARG(bits_per_sample); 
    87     PJ_UNUSED_ARG(play_cb); 
    88     PJ_UNUSED_ARG(user_data); 
    89  
    90     *p_snd_strm = (void*)1; 
    91  
    92     return PJ_SUCCESS; 
     97    return pjmedia_snd_open(-2, index, clock_rate, channel_count, 
     98                            samples_per_frame, bits_per_sample, 
     99                            NULL, play_cb, user_data, p_snd_strm); 
    93100} 
    94101 
     
    104111                                      pjmedia_snd_stream **p_snd_strm) 
    105112{ 
    106     PJ_UNUSED_ARG(rec_id); 
    107     PJ_UNUSED_ARG(play_id); 
    108     PJ_UNUSED_ARG(clock_rate); 
    109     PJ_UNUSED_ARG(channel_count); 
    110     PJ_UNUSED_ARG(samples_per_frame); 
    111     PJ_UNUSED_ARG(bits_per_sample); 
    112     PJ_UNUSED_ARG(rec_cb); 
    113     PJ_UNUSED_ARG(play_cb); 
    114     PJ_UNUSED_ARG(user_data); 
     113    pj_pool_t *pool; 
     114    pjmedia_snd_stream *snd_strm; 
    115115 
    116     *p_snd_strm = (void*)1; 
     116    pool = pj_pool_create(pool_factory, NULL, 128, 128, NULL); 
     117    snd_strm = PJ_POOL_ZALLOC_T(pool, pjmedia_snd_stream); 
     118     
     119    snd_strm->pool = pool; 
     120     
     121    if (rec_id == -1) rec_id = 0; 
     122    if (play_id == -1) play_id = 0; 
     123     
     124    if (rec_id != -2 && play_id != -2) 
     125        snd_strm->dir = PJMEDIA_DIR_CAPTURE_PLAYBACK; 
     126    else if (rec_id != -2) 
     127        snd_strm->dir = PJMEDIA_DIR_CAPTURE; 
     128    else if (play_id != -2) 
     129        snd_strm->dir = PJMEDIA_DIR_PLAYBACK; 
     130     
     131    snd_strm->rec_id = rec_id; 
     132    snd_strm->play_id = play_id; 
     133    snd_strm->clock_rate = clock_rate; 
     134    snd_strm->channel_count = channel_count; 
     135    snd_strm->samples_per_frame = samples_per_frame; 
     136    snd_strm->bits_per_sample = bits_per_sample; 
     137    snd_strm->rec_cb = rec_cb; 
     138    snd_strm->play_cb = play_cb; 
     139    snd_strm->user_data = user_data; 
     140     
     141    *p_snd_strm = snd_strm; 
    117142 
    118143    return PJ_SUCCESS; 
     
    136161{ 
    137162 
    138     PJ_ASSERT_RETURN(strm && pi, PJ_EINVAL); 
    139     return PJ_EINVALIDOP; 
     163    pj_bzero(pi, sizeof(pjmedia_snd_stream_info)); 
     164    pi->dir = strm->dir; 
     165    pi->play_id = strm->play_id; 
     166    pi->rec_id = strm->rec_id; 
     167    pi->clock_rate = strm->clock_rate; 
     168    pi->channel_count = strm->channel_count; 
     169    pi->samples_per_frame = strm->samples_per_frame; 
     170    pi->bits_per_sample = strm->bits_per_sample; 
     171    pi->rec_latency = 0; 
     172    pi->play_latency = 0; 
     173     
     174    return PJ_SUCCESS; 
    140175} 
    141176 
     
    143178PJ_DEF(pj_status_t) pjmedia_snd_stream_close(pjmedia_snd_stream *stream) 
    144179{ 
    145     PJ_UNUSED_ARG(stream); 
     180    pj_pool_release(stream->pool); 
    146181    return PJ_SUCCESS; 
    147182} 
    148183 
    149 PJ_DEF(pj_status_t) pjmedia_snd_deinit(void) 
    150 { 
    151     return PJ_SUCCESS; 
    152 } 
    153  
    154  
    155184#endif  /* PJMEDIA_SOUND_IMPLEMENTATION */ 
  • pjproject/trunk/pjsip-apps/src/symbian_ua/ua.cpp

    r1242 r1243  
    144144 
    145145        pjsua_config_default(&cfg); 
     146        cfg.max_calls = 2; 
    146147        cfg.thread_cnt = 0; // Disable threading on Symbian 
    147148        cfg.cb.on_incoming_call = &on_incoming_call; 
Note: See TracChangeset for help on using the changeset viewer.