Unified · Split
| @@ -72,6 +72,7 @@ static enum PixelFormat dshow_pixfmt(DWORD biCompression, WORD biBitCount) · 71 unmodified lines | |||
| 72 | return PIX_FMT_YUYV422; | 72 | return PIX_FMT_YUYV422; |
| 73 | case MKTAG('I', '4', '2', '0'): | 73 | case MKTAG('I', '4', '2', '0'): |
| 74 | return PIX_FMT_YUV420P; | 74 | return PIX_FMT_YUV420P; |
| 75 | case BI_BITFIELDS: | ||
| 75 | case BI_RGB: | 76 | case BI_RGB: |
| 76 | switch(biBitCount) { /* 1-8 are untested */ | 77 | switch(biBitCount) { /* 1-8 are untested */ |
| 77 | case 1: | 78 | case 1: |
| @@ -711,7 +712,7 @@ dshow_add_device(AVFormatContext *avctx, AVFormatParameters *ap, · 633 unmodified lines | |||
| 711 | codec->bits_per_coded_sample = bih->biBitCount; | 712 | codec->bits_per_coded_sample = bih->biBitCount; |
| 712 | } else { | 713 | } else { |
| 713 | codec->codec_id = CODEC_ID_RAWVIDEO; | 714 | codec->codec_id = CODEC_ID_RAWVIDEO; |
| 714 | if (bih->biCompression == BI_RGB) { | 715 | if (bih->biCompression == BI_RGB || bih->biCompression == BI_BITFIELDS) { |
| 715 | codec->bits_per_coded_sample = bih->biBitCount; | 716 | codec->bits_per_coded_sample = bih->biBitCount; |
| 716 | codec->extradata = av_malloc(9 + FF_INPUT_BUFFER_PADDING_SIZE); | 717 | codec->extradata = av_malloc(9 + FF_INPUT_BUFFER_PADDING_SIZE); |
| 717 | if (codec->extradata) { | 718 | if (codec->extradata) { |