summaryrefslogtreecommitdiffstats
path: root/loader
diff options
context:
space:
mode:
authorrtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-05-26 21:57:24 +0000
committerrtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-05-26 21:57:24 +0000
commit6349fe66d9f661ff53f101fe5c172cca78ab0372 (patch)
treee240e691bbce7cd25cb15de8702f82bf5366e574 /loader
parentb9bd2fc3736471c7a91be4da66a8da8ac1610aa3 (diff)
downloadmpv-6349fe66d9f661ff53f101fe5c172cca78ab0372.tar.bz2
mpv-6349fe66d9f661ff53f101fe5c172cca78ab0372.tar.xz
This currently sends control characters to the terminal instead of
meaningful names. Since some names are longer than 4 characters, I propose the following approach. Patch by + a ! guru #at# sympatico ! ca + git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@15575 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'loader')
-rw-r--r--loader/dmo/DMO_VideoDecoder.c32
1 files changed, 18 insertions, 14 deletions
diff --git a/loader/dmo/DMO_VideoDecoder.c b/loader/dmo/DMO_VideoDecoder.c
index 76ffed5e57..04fbc96e05 100644
--- a/loader/dmo/DMO_VideoDecoder.c
+++ b/loader/dmo/DMO_VideoDecoder.c
@@ -73,21 +73,22 @@ struct _ct {
unsigned int bits;
const GUID* subtype;
int cap;
+ char *name;
};
static ct check[] = {
- { fccI420, 12, &MEDIASUBTYPE_I420, CAP_I420 },
- { fccYV12, 12, &MEDIASUBTYPE_YV12, CAP_YV12 },
- { fccYUY2, 16, &MEDIASUBTYPE_YUY2, CAP_YUY2 },
- { fccUYVY, 16, &MEDIASUBTYPE_UYVY, CAP_UYVY },
- { fccYVYU, 16, &MEDIASUBTYPE_YVYU, CAP_YVYU },
- { fccIYUV, 24, &MEDIASUBTYPE_IYUV, CAP_IYUV },
-
- { 8, 8, &MEDIASUBTYPE_RGB8, CAP_NONE },
- { 15, 16, &MEDIASUBTYPE_RGB555, CAP_NONE },
- { 16, 16, &MEDIASUBTYPE_RGB565, CAP_NONE },
- { 24, 24, &MEDIASUBTYPE_RGB24, CAP_NONE },
- { 32, 32, &MEDIASUBTYPE_RGB32, CAP_NONE },
+ { fccI420, 12, &MEDIASUBTYPE_I420, CAP_I420, NULL },
+ { fccYV12, 12, &MEDIASUBTYPE_YV12, CAP_YV12, NULL },
+ { fccYUY2, 16, &MEDIASUBTYPE_YUY2, CAP_YUY2, NULL },
+ { fccUYVY, 16, &MEDIASUBTYPE_UYVY, CAP_UYVY, NULL },
+ { fccYVYU, 16, &MEDIASUBTYPE_YVYU, CAP_YVYU, NULL },
+ { fccIYUV, 24, &MEDIASUBTYPE_IYUV, CAP_IYUV, NULL },
+
+ { 8, 8, &MEDIASUBTYPE_RGB8, CAP_NONE, "RGB8" },
+ { 15, 16, &MEDIASUBTYPE_RGB555, CAP_NONE, "RGB555" },
+ { 16, 16, &MEDIASUBTYPE_RGB565, CAP_NONE, "RGB565" },
+ { 24, 24, &MEDIASUBTYPE_RGB24, CAP_NONE, "RGB24" },
+ { 32, 32, &MEDIASUBTYPE_RGB32, CAP_NONE, "RGB32" },
{0,0,NULL,0},
};
@@ -230,7 +231,7 @@ DMO_VideoDecoder * DMO_VideoDecoder_Open(char* dllname, GUID* guid, BITMAPINFOHE
this->m_Caps = CAP_NONE;
- printf("Decoder supports the following YUV formats: ");
+ printf("Decoder supports the following formats: ");
for (c = check; c->bits; c++)
{
this->m_sVhdr2->bmiHeader.biBitCount = c->bits;
@@ -241,7 +242,10 @@ DMO_VideoDecoder * DMO_VideoDecoder_Open(char* dllname, GUID* guid, BITMAPINFOHE
if (!result)
{
this->m_Caps = (this->m_Caps | c->cap);
- printf("%.4s ", (char*) &c->fcc);
+ if (c->name)
+ printf("%s ", c->name);
+ else
+ printf("%.4s ", (char*) &c->fcc);
}
}
printf("\n");