diff --git a/linphone/mediastreamer2/include/mediastreamer2/msvideo.h b/linphone/mediastreamer2/include/mediastreamer2/msvideo.h index e0aa383c5..f96129d83 100644 --- a/linphone/mediastreamer2/include/mediastreamer2/msvideo.h +++ b/linphone/mediastreamer2/include/mediastreamer2/msvideo.h @@ -23,40 +23,58 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "msfilter.h" /* some global constants for video MSFilter(s) */ -#define MS_VIDEO_SIZE_CIF_W 352 -#define MS_VIDEO_SIZE_CIF_H 288 +#define MS_VIDEO_SIZE_SQCIF_W 128 +#define MS_VIDEO_SIZE_SQCIF_H 96 #define MS_VIDEO_SIZE_QCIF_W 176 #define MS_VIDEO_SIZE_QCIF_H 144 +#define MS_VIDEO_SIZE_CIF_W 352 +#define MS_VIDEO_SIZE_CIF_H 288 +#define MS_VIDEO_SIZE_ICIF_W 352 +#define MS_VIDEO_SIZE_ICIF_H 576 #define MS_VIDEO_SIZE_4CIF_W 704 #define MS_VIDEO_SIZE_4CIF_H 576 +#define MS_VIDEO_SIZE_QQVGA_W 160 +#define MS_VIDEO_SIZE_QQVGA_H 120 +#define MS_VIDEO_SIZE_QVGA_W 320 +#define MS_VIDEO_SIZE_QVGA_H 240 +#define MS_VIDEO_SIZE_VGA_W 640 +#define MS_VIDEO_SIZE_VGA_H 480 +#define MS_VIDEO_SIZE_SVGA_W 800 +#define MS_VIDEO_SIZE_SVGA_H 600 + +#define MS_VIDEO_SIZE_NS1_W 324 +#define MS_VIDEO_SIZE_NS1_H 248 + #define MS_VIDEO_SIZE_QSIF_W 176 #define MS_VIDEO_SIZE_QSIF_H 120 #define MS_VIDEO_SIZE_SIF_W 352 #define MS_VIDEO_SIZE_SIF_H 240 +#define MS_VIDEO_SIZE_ISIF_W 352 +#define MS_VIDEO_SIZE_ISIF_H 480 #define MS_VIDEO_SIZE_4SIF_W 704 #define MS_VIDEO_SIZE_4SIF_H 480 -#define MS_VIDEO_SIZE_QQVGA_W 160 -#define MS_VIDEO_SIZE_QQVGA_H 120 - -#define MS_VIDEO_SIZE_QVGA_W 320 -#define MS_VIDEO_SIZE_QVGA_H 240 - -#define MS_VIDEO_SIZE_VGA_W 640 -#define MS_VIDEO_SIZE_VGA_H 480 - +#define MS_VIDEO_SIZE_288P_W 512 +#define MS_VIDEO_SIZE_288P_H 288 +#define MS_VIDEO_SIZE_448P_W 768 +#define MS_VIDEO_SIZE_448P_H 448 +#define MS_VIDEO_SIZE_576P_W 1024 +#define MS_VIDEO_SIZE_576P_H 576 #define MS_VIDEO_SIZE_720P_W 1280 #define MS_VIDEO_SIZE_720P_H 720 +#define MS_VIDEO_SIZE_1080P_W 1920 +#define MS_VIDEO_SIZE_1080P_H 1080 -#define MS_VIDEO_SIZE_NS1_W 324 -#define MS_VIDEO_SIZE_NS1_H 248 - -#define MS_VIDEO_SIZE_SVGA_W 800 -#define MS_VIDEO_SIZE_SVGA_H 600 +#define MS_VIDEO_SIZE_SDTV_W 768 +#define MS_VIDEO_SIZE_SDTV_H 576 +#define MS_VIDEO_SIZE_HDTVP_W 1920 +#define MS_VIDEO_SIZE_HDTVP_H 1200 #define MS_VIDEO_SIZE_XGA_W 1024 #define MS_VIDEO_SIZE_XGA_H 768 +#define MS_VIDEO_SIZE_WXGA_W 1080 +#define MS_VIDEO_SIZE_WXGA_H 768 #define MS_VIDEO_SIZE_MAX_W MS_VIDEO_SIZE_1024_W #define MS_VIDEO_SIZE_MAX_H MS_VIDEO_SIZE_1024_H diff --git a/linphone/mediastreamer2/src/msvideo.c b/linphone/mediastreamer2/src/msvideo.c index 32ffb0c86..7c1abeb25 100644 --- a/linphone/mediastreamer2/src/msvideo.c +++ b/linphone/mediastreamer2/src/msvideo.c @@ -44,9 +44,6 @@ int yuv_buf_init_from_mblk(YuvBuf *buf, mblk_t *m){ }else if (size==(MS_VIDEO_SIZE_CIF_W*MS_VIDEO_SIZE_CIF_H*3)/2){ w=MS_VIDEO_SIZE_CIF_W; h=MS_VIDEO_SIZE_CIF_H; - }else if (size==(MS_VIDEO_SIZE_QQVGA_W*MS_VIDEO_SIZE_QQVGA_H*3)/2){ - w=MS_VIDEO_SIZE_QQVGA_W; - h=MS_VIDEO_SIZE_QQVGA_H; }else if (size==(MS_VIDEO_SIZE_QVGA_W*MS_VIDEO_SIZE_QVGA_H*3)/2){ w=MS_VIDEO_SIZE_QVGA_W; h=MS_VIDEO_SIZE_QVGA_H; @@ -56,18 +53,18 @@ int yuv_buf_init_from_mblk(YuvBuf *buf, mblk_t *m){ }else if (size==(MS_VIDEO_SIZE_4CIF_W*MS_VIDEO_SIZE_4CIF_H*3)/2){ w=MS_VIDEO_SIZE_4CIF_W; h=MS_VIDEO_SIZE_4CIF_H; - }else if (size==(MS_VIDEO_SIZE_720P_W*MS_VIDEO_SIZE_720P_H*3)/2){ - w=MS_VIDEO_SIZE_720P_W; - h=MS_VIDEO_SIZE_720P_H; + }else if (size==(MS_VIDEO_SIZE_SVGA_W*MS_VIDEO_SIZE_SVGA_H*3)/2){ + w=MS_VIDEO_SIZE_SVGA_W; + h=MS_VIDEO_SIZE_SVGA_H; + }else if (size==(MS_VIDEO_SIZE_SQCIF_W*MS_VIDEO_SIZE_SQCIF_H*3)/2){ + w=MS_VIDEO_SIZE_SQCIF_W; + h=MS_VIDEO_SIZE_SQCIF_H; + }else if (size==(MS_VIDEO_SIZE_QQVGA_W*MS_VIDEO_SIZE_QQVGA_H*3)/2){ + w=MS_VIDEO_SIZE_QQVGA_W; + h=MS_VIDEO_SIZE_QQVGA_H; }else if (size==(MS_VIDEO_SIZE_NS1_W*MS_VIDEO_SIZE_NS1_H*3)/2){ w=MS_VIDEO_SIZE_NS1_W; h=MS_VIDEO_SIZE_NS1_H; - }else if (size==(MS_VIDEO_SIZE_1024_W*MS_VIDEO_SIZE_1024_H*3)/2){ - w=MS_VIDEO_SIZE_1024_W; - h=MS_VIDEO_SIZE_1024_H; - }else if (size==(MS_VIDEO_SIZE_800X600_W*MS_VIDEO_SIZE_800X600_H*3)/2){ - w=MS_VIDEO_SIZE_800X600_W; - h=MS_VIDEO_SIZE_800X600_H; }else if (size==(MS_VIDEO_SIZE_QSIF_W*MS_VIDEO_SIZE_QSIF_H*3)/2){ w=MS_VIDEO_SIZE_QSIF_W; h=MS_VIDEO_SIZE_QSIF_H; @@ -77,6 +74,33 @@ int yuv_buf_init_from_mblk(YuvBuf *buf, mblk_t *m){ }else if (size==(MS_VIDEO_SIZE_4SIF_W*MS_VIDEO_SIZE_4SIF_H*3)/2){ w=MS_VIDEO_SIZE_4SIF_W; h=MS_VIDEO_SIZE_4SIF_H; + }else if (size==(MS_VIDEO_SIZE_288P_W*MS_VIDEO_SIZE_288P_H*3)/2){ + w=MS_VIDEO_SIZE_288P_W; + h=MS_VIDEO_SIZE_288P_H; + }else if (size==(MS_VIDEO_SIZE_448P_W*MS_VIDEO_SIZE_448P_H*3)/2){ + w=MS_VIDEO_SIZE_448P_W; + h=MS_VIDEO_SIZE_448P_H; + }else if (size==(MS_VIDEO_SIZE_576P_W*MS_VIDEO_SIZE_576P_H*3)/2){ + w=MS_VIDEO_SIZE_576P_W; + h=MS_VIDEO_SIZE_576P_H; + }else if (size==(MS_VIDEO_SIZE_720P_W*MS_VIDEO_SIZE_720P_H*3)/2){ + w=MS_VIDEO_SIZE_720P_W; + h=MS_VIDEO_SIZE_720P_H; + }else if (size==(MS_VIDEO_SIZE_1080P_W*MS_VIDEO_SIZE_1080P_H*3)/2){ + w=MS_VIDEO_SIZE_1080P_W; + h=MS_VIDEO_SIZE_1080P_H; + }else if (size==(MS_VIDEO_SIZE_SDTV_W*MS_VIDEO_SIZE_SDTV_H*3)/2){ + w=MS_VIDEO_SIZE_SDTV_W; + h=MS_VIDEO_SIZE_SDTV_H; + }else if (size==(MS_VIDEO_SIZE_HDTVP_W*MS_VIDEO_SIZE_HDTVP_H*3)/2){ + w=MS_VIDEO_SIZE_HDTVP_W; + h=MS_VIDEO_SIZE_HDTVP_H; + }else if (size==(MS_VIDEO_SIZE_XGA_W*MS_VIDEO_SIZE_XGA_H*3)/2){ + w=MS_VIDEO_SIZE_XGA_W; + h=MS_VIDEO_SIZE_XGA_H; + }else if (size==(MS_VIDEO_SIZE_WXGA_W*MS_VIDEO_SIZE_WXGA_H*3)/2){ + w=MS_VIDEO_SIZE_WXGA_W; + h=MS_VIDEO_SIZE_WXGA_H; }else if (size==(160*112*3)/2){/*format used by econf*/ w=160; h=112; diff --git a/linphone/mediastreamer2/src/winvideods.c b/linphone/mediastreamer2/src/winvideods.c index 54071e77a..bd442e3d1 100644 --- a/linphone/mediastreamer2/src/winvideods.c +++ b/linphone/mediastreamer2/src/winvideods.c @@ -543,20 +543,40 @@ static int v4w_configure_videodevice(V4wState *s) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_CIF_W, MS_VIDEO_SIZE_CIF_H); else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_4CIF_W, MS_VIDEO_SIZE_4CIF_H, &pPinCategory)==0) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_4CIF_W, MS_VIDEO_SIZE_4CIF_H); - else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_VGA_W, MS_VIDEO_SIZE_VGA_H, &pPinCategory)==0) - ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_VGA_W, MS_VIDEO_SIZE_VGA_H); else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_QVGA_W, MS_VIDEO_SIZE_QVGA_H, &pPinCategory)==0) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_QVGA_W, MS_VIDEO_SIZE_QVGA_H); else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_QQVGA_W, MS_VIDEO_SIZE_QQVGA_H, &pPinCategory)==0) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_QQVGA_W, MS_VIDEO_SIZE_QQVGA_H); else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_NS1_W, MS_VIDEO_SIZE_NS1_H, &pPinCategory)==0) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_NS1_W, MS_VIDEO_SIZE_NS1_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_QSIF_W, MS_VIDEO_SIZE_QSIF_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_QSIF_W, MS_VIDEO_SIZE_QSIF_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_SIF_W, MS_VIDEO_SIZE_SIF_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_SIF_W, MS_VIDEO_SIZE_SIF_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_VGA_W, MS_VIDEO_SIZE_VGA_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_VGA_W, MS_VIDEO_SIZE_VGA_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_SDTV_W, MS_VIDEO_SIZE_SDTV_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_SDTV_W, MS_VIDEO_SIZE_SDTV_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_288P_W, MS_VIDEO_SIZE_288P_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_288P_W, MS_VIDEO_SIZE_288P_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_448P_W, MS_VIDEO_SIZE_448P_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_448P_W, MS_VIDEO_SIZE_448P_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_576P_W, MS_VIDEO_SIZE_576P_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_576P_W, MS_VIDEO_SIZE_576P_H); else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_720P_W, MS_VIDEO_SIZE_720P_H, &pPinCategory)==0) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_720P_W, MS_VIDEO_SIZE_720P_H); - else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_800X600_W, MS_VIDEO_SIZE_800X600_H, &pPinCategory)==0) - ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_800X600_W, MS_VIDEO_SIZE_800X600_H); - else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_1024_W, MS_VIDEO_SIZE_1024_H, &pPinCategory)==0) - ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_1024_W, MS_VIDEO_SIZE_1024_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_1080P_W, MS_VIDEO_SIZE_1080P_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_1080P_W, MS_VIDEO_SIZE_1080P_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_4SIF_W, MS_VIDEO_SIZE_4SIF_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_4SIF_W, MS_VIDEO_SIZE_4SIF_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_SVGA_W, MS_VIDEO_SIZE_SVGA_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_SVGA_W, MS_VIDEO_SIZE_SVGA_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_XGA_W, MS_VIDEO_SIZE_XGA_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_XGA_W, MS_VIDEO_SIZE_XGA_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_WXGA_W, MS_VIDEO_SIZE_WXGA_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_WXGA_W, MS_VIDEO_SIZE_WXGA_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_HDTVP_W, MS_VIDEO_SIZE_HDTVP_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_HDTVP_W, MS_VIDEO_SIZE_HDTVP_H); else { ms_error("No supported size found for format."); @@ -718,20 +738,40 @@ static int v4w_open_videodevice(V4wState *s) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_CIF_W, MS_VIDEO_SIZE_CIF_H); else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_4CIF_W, MS_VIDEO_SIZE_4CIF_H, &pPinCategory)==0) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_4CIF_W, MS_VIDEO_SIZE_4CIF_H); - else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_VGA_W, MS_VIDEO_SIZE_VGA_H, &pPinCategory)==0) - ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_VGA_W, MS_VIDEO_SIZE_VGA_H); else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_QVGA_W, MS_VIDEO_SIZE_QVGA_H, &pPinCategory)==0) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_QVGA_W, MS_VIDEO_SIZE_QVGA_H); else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_QQVGA_W, MS_VIDEO_SIZE_QQVGA_H, &pPinCategory)==0) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_QQVGA_W, MS_VIDEO_SIZE_QQVGA_H); else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_NS1_W, MS_VIDEO_SIZE_NS1_H, &pPinCategory)==0) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_NS1_W, MS_VIDEO_SIZE_NS1_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_QSIF_W, MS_VIDEO_SIZE_QSIF_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_QSIF_W, MS_VIDEO_SIZE_QSIF_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_SIF_W, MS_VIDEO_SIZE_SIF_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_SIF_W, MS_VIDEO_SIZE_SIF_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_VGA_W, MS_VIDEO_SIZE_VGA_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_VGA_W, MS_VIDEO_SIZE_VGA_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_SDTV_W, MS_VIDEO_SIZE_SDTV_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_SDTV_W, MS_VIDEO_SIZE_SDTV_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_288P_W, MS_VIDEO_SIZE_288P_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_288P_W, MS_VIDEO_SIZE_288P_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_448P_W, MS_VIDEO_SIZE_448P_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_448P_W, MS_VIDEO_SIZE_448P_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_576P_W, MS_VIDEO_SIZE_576P_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_576P_W, MS_VIDEO_SIZE_576P_H); else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_720P_W, MS_VIDEO_SIZE_720P_H, &pPinCategory)==0) ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_720P_W, MS_VIDEO_SIZE_720P_H); - else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_800X600_W, MS_VIDEO_SIZE_800X600_H, &pPinCategory)==0) - ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_800X600_W, MS_VIDEO_SIZE_800X600_H); - else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_1024_W, MS_VIDEO_SIZE_1024_H, &pPinCategory)==0) - ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_1024_W, MS_VIDEO_SIZE_1024_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_1080P_W, MS_VIDEO_SIZE_1080P_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_1080P_W, MS_VIDEO_SIZE_1080P_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_4SIF_W, MS_VIDEO_SIZE_4SIF_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_4SIF_W, MS_VIDEO_SIZE_4SIF_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_SVGA_W, MS_VIDEO_SIZE_SVGA_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_SVGA_W, MS_VIDEO_SIZE_SVGA_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_XGA_W, MS_VIDEO_SIZE_XGA_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_XGA_W, MS_VIDEO_SIZE_XGA_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_WXGA_W, MS_VIDEO_SIZE_WXGA_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_WXGA_W, MS_VIDEO_SIZE_WXGA_H); + else if (try_format_size(s, s->pix_fmt, MS_VIDEO_SIZE_HDTVP_W, MS_VIDEO_SIZE_HDTVP_H, &pPinCategory)==0) + ms_message("Selected Size: %ix%i.", MS_VIDEO_SIZE_HDTVP_W, MS_VIDEO_SIZE_HDTVP_H); else { ms_error("No supported size found for format.");