Ignore:
Timestamp:
Feb 24, 2011 7:47:55 AM (13 years ago)
Author:
nanang
Message:

Re #1182:

  • Added video stream interface in vid_stream.h, the video stream will be able to handle different video formats in encoding and decoding direction.
  • Renamed video device stream class identifiers from 'pjmedia_vid_stream*' to 'pjmedia_vid_dev_stream*' as 'pjmedia_vid_stream' is used by video stream interface.
  • Added ffmpeg video capability to be able to parse SDP format param for H263 and also decide video format for encoding direction based on remote preference and local format-capability setting.
  • Added some new APIs in jitter buffer for handling video stream: pjmedia_jbuf_put_frame3(), pjmedia_jbuf_get_frame3(), pjmedia_jbuf_peek_frame(), and pjmedia_jbuf_remove_frame().
  • Moved pjmedia_stream_info_from_sdp() from session to stream
File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/branches/projects/2.0-dev/pjmedia/include/pjmedia-videodev/videodev.h

    r3401 r3420  
    7979 * 
    8080 * Once video stream is running, application can also retrieve or set some 
    81  * specific video capability, by using #pjmedia_vid_stream_get_cap() and 
    82  * #pjmedia_vid_stream_set_cap() and specifying the desired capability. The 
     81 * specific video capability, by using #pjmedia_vid_dev_stream_get_cap() and 
     82 * #pjmedia_vid_dev_stream_set_cap() and specifying the desired capability. The 
    8383 * value of the capability is specified as pointer, and application needs to 
    8484 * supply the pointer with the correct value, according to the documentation 
     
    155155 
    156156 
    157 /** Forward declaration for pjmedia_vid_stream */ 
    158 typedef struct pjmedia_vid_stream pjmedia_vid_stream; 
     157/** Forward declaration for pjmedia_vid_dev_stream */ 
     158typedef struct pjmedia_vid_dev_stream pjmedia_vid_dev_stream; 
    159159 
    160160typedef enum pjmedia_event_type 
     
    188188    *                      stream to stop 
    189189    */ 
    190     pj_status_t (*capture_cb)(pjmedia_vid_stream *stream, 
     190    pj_status_t (*capture_cb)(pjmedia_vid_dev_stream *stream, 
    191191                              void *user_data, 
    192192                              pjmedia_frame *frame); 
     
    211211    *                      stream to stop 
    212212    */ 
    213     pj_status_t (*render_cb)(pjmedia_vid_stream *stream, 
     213    pj_status_t (*render_cb)(pjmedia_vid_dev_stream *stream, 
    214214                             void *user_data, 
    215215                             pjmedia_frame *frame); 
     
    227227    *                      video stream will ignore the particular event. 
    228228    */ 
    229     pj_status_t (*on_event_cb)(pjmedia_vid_stream *stream, 
     229    pj_status_t (*on_event_cb)(pjmedia_vid_dev_stream *stream, 
    230230                               void *user_data, 
    231231                               pjmedia_vid_event *event); 
     
    477477 *                      error code. 
    478478 */ 
    479 PJ_DECL(pj_status_t) pjmedia_vid_stream_create(const pjmedia_vid_param *param, 
    480                                                const pjmedia_vid_cb *cb, 
    481                                                void *user_data, 
    482                                                pjmedia_vid_stream **p_strm); 
     479PJ_DECL(pj_status_t) pjmedia_vid_dev_stream_create( 
     480                                            const pjmedia_vid_param *param, 
     481                                            const pjmedia_vid_cb *cb, 
     482                                            void *user_data, 
     483                                            pjmedia_vid_dev_stream **p_strm); 
    483484 
    484485/** 
     
    492493 *                  error code. 
    493494 */ 
    494 PJ_DECL(pj_status_t) pjmedia_vid_stream_get_param(pjmedia_vid_stream *strm, 
    495                                                   pjmedia_vid_param *param); 
     495PJ_DECL(pj_status_t) pjmedia_vid_dev_stream_get_param( 
     496                                            pjmedia_vid_dev_stream *strm, 
     497                                            pjmedia_vid_param *param); 
    496498 
    497499/** 
     
    508510 *                  error code. 
    509511 */ 
    510 PJ_DECL(pj_status_t) pjmedia_vid_stream_get_cap(pjmedia_vid_stream *strm, 
    511                                                 pjmedia_vid_dev_cap cap, 
    512                                                 void *value); 
     512PJ_DECL(pj_status_t) pjmedia_vid_dev_stream_get_cap( 
     513                                            pjmedia_vid_dev_stream *strm, 
     514                                            pjmedia_vid_dev_cap cap, 
     515                                            void *value); 
    513516 
    514517/** 
     
    523526 *                  error code. 
    524527 */ 
    525 PJ_DECL(pj_status_t) pjmedia_vid_stream_set_cap(pjmedia_vid_stream *strm, 
    526                                                 pjmedia_vid_dev_cap cap, 
    527                                                 const void *value); 
     528PJ_DECL(pj_status_t) pjmedia_vid_dev_stream_set_cap( 
     529                                            pjmedia_vid_dev_stream *strm, 
     530                                            pjmedia_vid_dev_cap cap, 
     531                                            const void *value); 
    528532 
    529533/** 
     
    535539 *                  error code. 
    536540 */ 
    537 PJ_DECL(pj_status_t) pjmedia_vid_stream_start(pjmedia_vid_stream *strm); 
     541PJ_DECL(pj_status_t) pjmedia_vid_dev_stream_start( 
     542                                            pjmedia_vid_dev_stream *strm); 
    538543 
    539544/* Get/put frame API for passive stream */ 
    540 PJ_DECL(pj_status_t) pjmedia_vid_stream_get_frame(pjmedia_vid_stream *strm, 
    541                                                   pjmedia_frame *frame); 
    542  
    543 PJ_DECL(pj_status_t) pjmedia_vid_stream_put_frame(pjmedia_vid_stream *strm, 
    544                                                   const pjmedia_frame *frame); 
     545PJ_DECL(pj_status_t) pjmedia_vid_dev_stream_get_frame( 
     546                                            pjmedia_vid_dev_stream *strm, 
     547                                            pjmedia_frame *frame); 
     548 
     549PJ_DECL(pj_status_t) pjmedia_vid_dev_stream_put_frame( 
     550                                            pjmedia_vid_dev_stream *strm, 
     551                                            const pjmedia_frame *frame); 
    545552 
    546553/** 
     
    552559 *                  error code. 
    553560 */ 
    554 PJ_DECL(pj_status_t) pjmedia_vid_stream_stop(pjmedia_vid_stream *strm); 
     561PJ_DECL(pj_status_t) pjmedia_vid_dev_stream_stop( 
     562                                            pjmedia_vid_dev_stream *strm); 
    555563 
    556564/** 
     
    562570 *                  error code. 
    563571 */ 
    564 PJ_DECL(pj_status_t) pjmedia_vid_stream_destroy(pjmedia_vid_stream *strm); 
     572PJ_DECL(pj_status_t) pjmedia_vid_dev_stream_destroy( 
     573                                            pjmedia_vid_dev_stream *strm); 
    565574 
    566575 
Note: See TracChangeset for help on using the changeset viewer.