M-JPEG Video Encoder
|  (→Features) | |||
| Line 37: | Line 37: | ||
| * Lossless encoding | * Lossless encoding | ||
| + | |||
| + | ==DirectShow Interfaces== | ||
| + | |||
| + | [12:13:08] Dmitry Nikitin: // Filter compresses an uncompressed video stream, using motion JPEG compression. | ||
| + | // Next compression modes supported: | ||
| + | // - YUY2 / Interlaced | ||
| + | // - YUY2 / Progressive | ||
| + | // - ARGB32 (4 planes) / Interlaced | ||
| + | // - ARGB32 (4 planes) / Progressive | ||
| + | // Output media type has for YUY2 BITMAPINFOHEADER::biBitCount = 24 and for ARGB32 = 32 | ||
| + | // | ||
| + | |||
| + | |||
| + | {| | ||
| + | |- | ||
| + | |Filter Interfaces: | ||
| + | |IBaseFilter, IPersistStream, ISpecifyPropertyPages, IMLMjpegEncoder | ||
| + | |||
| + | |- | ||
| + | |Input Pin Media Types | ||
| + | |Default mode and if IMLMjpegEncoder::SetARGB32Encoding(FALSE) called | ||
| + | MEDIATYPE_Video, MEDIASUBTYPE_YUY2, MEDIASUBTYPE_UYVY, MEDIASUBTYPE_YVYU, MEDIASUBTYPE_ARGB32, MEDIASUBTYPE_RGB32, MEDIASUBTYPE_RGB24, MEDIASUBTYPE_RGB565, MEDIASUBTYPE_RGB555, MEDIASUBTYPE_YV12, MEDIASUBTYPE_I420 | ||
| + | IMLMjpegEncoder::SetARGB32Encoding(TRUE) called: | ||
| + | MEDIATYPE_Video, MEDIASUBTYPE_ARGB32 | ||
| + | |||
| + | |} | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | // | ||
| + | // Input Pin Interfaces | ||
| + | //  IMemInputPin, IPin, IQualityControl | ||
| + | // | ||
| + | // Output Pin Media Types | ||
| + | //  MEDIATYPE_Video, MEDIASUBTYPE_MJPG | ||
| + | //   FORMAT_VideoInfo | ||
| + | //   FORMAT_VideoInfo2 | ||
| + | // | ||
| + | // Output Pin Interfaces | ||
| + | //  IAMStreamConfig, IAMVideoCompression, IMediaSeeking, IPin, IQualityControl | ||
| + | // | ||
| + | // IAMStreamConfig | ||
| + | // IAMStreamConfig returns 2 possible media types (with FORMAT_VideoInfo2 and FORMAT_VideoInfo) | ||
| + | // With IAMStreamConfig::SetFormat() next parts of output media type can be changed: | ||
| + | //  - for FORMAT_VideoInfo: | ||
| + | //   VIDEOINFOHEADER::dwBitRate and AvgTimePerFrame | ||
| + | //  - for FORMAT_VideoInfo2: | ||
| + | //   VIDEOINFOHEADER2::dwBitRate, AvgTimePerFrame, dwInterlaceFlags, | ||
| + | //   dwPictAspectRatioX, dwPictAspectRatioY | ||
| + | // Media type from IAMStreamConfig::SetFormat() cleared after: | ||
| + | //  - input pin disconnection | ||
| + | //  - IAMStreamConfig::SetFormat(NULL) call | ||
| + | //  - IMLMjpegEncoder::SetARGB32Encoding() call (input pin reconnection executed) | ||
| + | // | ||
| + | // IAMVideoCompression | ||
| + | // only next methods implemented: | ||
| + | //  - put_Quality() | ||
| + | //  - get_Quality() | ||
| + | //  - GetInfo() | ||
| + | // | ||
| + | // Merit | ||
| + | //  MERIT_DO_NOT_USE  | ||
| + | // | ||
| + | // Filter Categories | ||
| + | //  CLSID_VideoCompressorCategory, CLSID_MediaLooksCategory | ||
| + | // | ||
| ==See Also== | ==See Also== | ||
Revision as of 12:06, 28 August 2009
This page is a copy of the original page on the AVObjects' web site and can also be viewed here.
High-quality M-JPEG video encoder DirectShow filter with ARGB32 (alpha channel) support.
Overview
- Download a full-featured 30-day evaluation version!
- Contact us to receive a quote or if you have any technical questions!
MediaLooks M-JPEG Video Encoder is a high-performance DirectShow encoder for Motion JPEG video with alpha channel support.
M-JPEG Compression Technology Features
- Real-time encoding/decoding of HD video.
- Ease of reverse playback.
Features
- Multiple CPU support.
- ARGB32 support (alpha channel).
- Bitrate or quality management.
- Interlaced/progressive input streams.
- Opportunity of correction of interlace parameters.
- Multiple color spaces on input (YUV macropixels, RGB, YUV planar).
- Compatibility with third-party decoders.
- Highly optimized for the Intel processor family.
Future Features:
- Lossless encoding
DirectShow Interfaces
[12:13:08] Dmitry Nikitin: // Filter compresses an uncompressed video stream, using motion JPEG compression. // Next compression modes supported: // - YUY2 / Interlaced // - YUY2 / Progressive // - ARGB32 (4 planes) / Interlaced // - ARGB32 (4 planes) / Progressive // Output media type has for YUY2 BITMAPINFOHEADER::biBitCount = 24 and for ARGB32 = 32 //
| Filter Interfaces: | IBaseFilter, IPersistStream, ISpecifyPropertyPages, IMLMjpegEncoder | 
| Input Pin Media Types | Default mode and if IMLMjpegEncoder::SetARGB32Encoding(FALSE) called MEDIATYPE_Video, MEDIASUBTYPE_YUY2, MEDIASUBTYPE_UYVY, MEDIASUBTYPE_YVYU, MEDIASUBTYPE_ARGB32, MEDIASUBTYPE_RGB32, MEDIASUBTYPE_RGB24, MEDIASUBTYPE_RGB565, MEDIASUBTYPE_RGB555, MEDIASUBTYPE_YV12, MEDIASUBTYPE_I420 IMLMjpegEncoder::SetARGB32Encoding(TRUE) called: MEDIATYPE_Video, MEDIASUBTYPE_ARGB32 | 
// // Input Pin Interfaces // IMemInputPin, IPin, IQualityControl // // Output Pin Media Types // MEDIATYPE_Video, MEDIASUBTYPE_MJPG // FORMAT_VideoInfo // FORMAT_VideoInfo2 // // Output Pin Interfaces // IAMStreamConfig, IAMVideoCompression, IMediaSeeking, IPin, IQualityControl // // IAMStreamConfig // IAMStreamConfig returns 2 possible media types (with FORMAT_VideoInfo2 and FORMAT_VideoInfo) // With IAMStreamConfig::SetFormat() next parts of output media type can be changed: // - for FORMAT_VideoInfo: // VIDEOINFOHEADER::dwBitRate and AvgTimePerFrame // - for FORMAT_VideoInfo2: // VIDEOINFOHEADER2::dwBitRate, AvgTimePerFrame, dwInterlaceFlags, // dwPictAspectRatioX, dwPictAspectRatioY // Media type from IAMStreamConfig::SetFormat() cleared after: // - input pin disconnection // - IAMStreamConfig::SetFormat(NULL) call // - IMLMjpegEncoder::SetARGB32Encoding() call (input pin reconnection executed) // // IAMVideoCompression // only next methods implemented: // - put_Quality() // - get_Quality() // - GetInfo() // // Merit // MERIT_DO_NOT_USE // // Filter Categories // CLSID_VideoCompressorCategory, CLSID_MediaLooksCategory //
See Also
Downloads
Licensing
If you are interested in licensing this product please contact us through the link below.
