Mercurial > mplayer.hg
comparison stream/tvi_dshow.c @ 25126:8152446e42b1
Move requested format at top and shift all oters down
This method is better with recent negotiation code:
requested formats will be checked first.
author | voroshil |
---|---|
date | Sat, 24 Nov 2007 07:28:05 +0000 |
parents | a1e6345207a1 |
children | 6e039dd0b5d8 |
comparison
equal
deleted
inserted
replaced
25125:a1e6345207a1 | 25126:8152446e42b1 |
---|---|
3139 { | 3139 { |
3140 switch (cmd) { | 3140 switch (cmd) { |
3141 /* need rewrite */ | 3141 /* need rewrite */ |
3142 case TVI_CONTROL_VID_SET_FORMAT: | 3142 case TVI_CONTROL_VID_SET_FORMAT: |
3143 { | 3143 { |
3144 int fcc, i; | 3144 int fcc, i,j; |
3145 void* tmp; | 3145 void* tmp,*tmp2; |
3146 int result = TVI_CONTROL_TRUE; | 3146 int result = TVI_CONTROL_TRUE; |
3147 | 3147 |
3148 if (priv->state) | 3148 if (priv->state) |
3149 return TVI_CONTROL_FALSE; | 3149 return TVI_CONTROL_FALSE; |
3150 fcc = *(int *) arg; | 3150 fcc = *(int *) arg; |
3183 priv->chains[0]->arpmt[i+1] = NULL; | 3183 priv->chains[0]->arpmt[i+1] = NULL; |
3184 | 3184 |
3185 result = TVI_CONTROL_FALSE; | 3185 result = TVI_CONTROL_FALSE; |
3186 } | 3186 } |
3187 | 3187 |
3188 tmp = priv->chains[0]->arpmt[0]; | 3188 |
3189 priv->chains[0]->arpmt[0] = priv->chains[0]->arpmt[i]; | 3189 tmp=priv->chains[0]->arpmt[i]; |
3190 priv->chains[0]->arpmt[i] = tmp; | 3190 tmp2=priv->chains[0]->arStreamCaps[i]; |
3191 | 3191 for(j=i; j>0; j--) |
3192 tmp = priv->chains[0]->arStreamCaps[0]; | 3192 { |
3193 priv->chains[0]->arStreamCaps[0] = priv->chains[0]->arStreamCaps[i]; | 3193 priv->chains[0]->arpmt[j] = priv->chains[0]->arpmt[j-1]; |
3194 priv->chains[0]->arStreamCaps[i] = tmp; | 3194 priv->chains[0]->arStreamCaps[j] = priv->chains[0]->arStreamCaps[j-1]; |
3195 } | |
3196 priv->chains[0]->arpmt[0] = tmp; | |
3197 priv->chains[0]->arStreamCaps[0] = tmp2; | |
3195 | 3198 |
3196 priv->chains[0]->nFormatUsed = 0; | 3199 priv->chains[0]->nFormatUsed = 0; |
3197 | 3200 |
3198 if (priv->chains[0]->pmt) | 3201 if (priv->chains[0]->pmt) |
3199 DeleteMediaType(priv->chains[0]->pmt); | 3202 DeleteMediaType(priv->chains[0]->pmt); |