--- trunk/FFusionCodec.c 2008-12-23 11:27:10.000000000 -0600 +++ ../mikeperian/trunk/FFusionCodec.c 2008-12-23 11:43:55.000000000 -0600 @@ -701,6 +701,16 @@ case 'MPG2': case 'mpg2': case 'mp2v': + case 'hdv1': + case 'hdv2': + case 'hdv3': + case 'hdv4': + case 'hdv5': + case 'hdv6': + case 'hdv7': + case 'hdv8': + case 'hdv9': + case 'hdva': codecID = CODEC_ID_MPEG2VIDEO; break; @@ -1680,6 +1690,21 @@ err = GetComponentResource((Component)glob->self, codecInfoResourceType, kMPEG2CodecInfoResID, (Handle *)&tempCodecInfo); break; + + + case 'hdv1': + case 'hdv2': + case 'hdv3': + case 'hdv4': + case 'hdv5': + case 'hdv6': + case 'hdv7': + case 'hdv8': + case 'hdv9': + case 'hdva': + err = GetComponentResource((Component)glob->self, codecInfoResourceType, kHDVCodecInfoResID, (Handle *)&tempCodecInfo); + break; + case 'FPS1': err = GetComponentResource((Component)glob->self, codecInfoResourceType, kFRAPSCodecInfoResID, (Handle *)&tempCodecInfo); break; --- trunk/FFusionCodec.h 2008-12-23 11:27:10.000000000 -0600 +++ ../mikeperian/trunk/FFusionCodec.h 2008-12-23 11:49:24.000000000 -0600 @@ -47,6 +47,7 @@ #define kHuffYUVCodecInfoResID 270 #define kMPEG1CodecInfoResID 271 #define kMPEG2CodecInfoResID 272 +#define kHDVCodecInfoResID 313 #define kFRAPSCodecInfoResID 273 #define kSnowCodecInfoResID 274 #define kNuvCodecInfoResID 275 --- trunk/FFusionCodec.r 2008-12-23 11:27:10.000000000 -0600 +++ ../mikeperian/trunk/FFusionCodec.r 2008-12-23 11:49:30.000000000 -0600 @@ -61,6 +61,7 @@ #define kHuffYUVName "HuffYUV" #define kMPEG1Name "MPEG-1 Video" #define kMPEG2Name "MPEG-2 Video" +#define kHDVName "HDV Video" #define kFRAPSName "Fraps" #define kSnowName "Snow" #define kIndeo2Name "Intel Indeo 2" @@ -96,6 +97,7 @@ #define kTSCCNameResID 305 #define kZMBVNameResID 307 #define kVP6ANameResID 309 +#define kHDVNameResId 313 // Codec infos Resource ID @@ -124,6 +126,7 @@ #define kVP6AInfoResID 310 #define kIndeo2InfoResID 311 #define kIndeo3InfoResID 312 +#define kHDVInfoResID 313 // These flags specify information about the capabilities of the component // Works with 1-bit, 8-bit, 16-bit and 32-bit Pixel Maps @@ -612,6 +615,28 @@ 0 // Private Data }; + +resource 'cdci' (kHDVCodecInfoResID) { + kHDVName, // Type + 1, // Version + 1, // Revision level + kFFusionCodecManufacturer, // Manufacturer + kFFusionDecompressionFlags, // Decompression Flags + 0, // Compression Flags + kFFusionFormatFlags, // Format Flags + 128, // Compression Accuracy + 128, // Decomression Accuracy + 200, // Compression Speed + 200, // Decompression Speed + 128, // Compression Level + 0, // Reserved + 1, // Minimum Height + 1, // Minimum Width + 0, // Decompression Pipeline Latency + 0, // Compression Pipeline Latency + 0 // Private Data +}; + //--------------------------------------------------------------------------- // Fraps Description Resources //--------------------------------------------------------------------------- @@ -3075,6 +3100,300 @@ }; }; +resource 'thng' (341) { + decompressorComponentType, // Type + 'hdv1', // SubType + kFFusionCodecManufacturer, // Manufacturer + 0, // - use componentHasMultiplePlatforms + 0, + 0, + 0, + 'STR ', // Name Type + kHDVNameResID, // Name ID + 'STR ', // Info Type + kHDVInfoResID, // Info ID + 0, // Icon Type + 0, // Icon ID + kFFusionCodecVersion, // Version + componentHasMultiplePlatforms + // Registration Flags + componentDoAutoVersion, // Registration Flags + 0, // Resource ID of Icon Family + { + kFFusionDecompressionFlags, + 'dlle', // Entry point found by symbol name 'dlle' resource + 256, // ID of 'dlle' resource + platformPowerPCNativeEntryPoint, + kFFusionDecompressionFlags, + 'dlle', + 256, + platformIA32NativeEntryPoint, + }; +}; + +resource 'thng' (342) { + decompressorComponentType, // Type + 'hdv2', // SubType + kFFusionCodecManufacturer, // Manufacturer + 0, // - use componentHasMultiplePlatforms + 0, + 0, + 0, + 'STR ', // Name Type + kHDVNameResID, // Name ID + 'STR ', // Info Type + kHDVInfoResID, // Info ID + 0, // Icon Type + 0, // Icon ID + kFFusionCodecVersion, // Version + componentHasMultiplePlatforms + // Registration Flags + componentDoAutoVersion, // Registration Flags + 0, // Resource ID of Icon Family + { + kFFusionDecompressionFlags, + 'dlle', // Entry point found by symbol name 'dlle' resource + 256, // ID of 'dlle' resource + platformPowerPCNativeEntryPoint, + kFFusionDecompressionFlags, + 'dlle', + 256, + platformIA32NativeEntryPoint, + }; +}; +resource 'thng' (343) { + decompressorComponentType, // Type + 'hdv3', // SubType + kFFusionCodecManufacturer, // Manufacturer + 0, // - use componentHasMultiplePlatforms + 0, + 0, + 0, + 'STR ', // Name Type + kHDVNameResID, // Name ID + 'STR ', // Info Type + kHDVInfoResID, // Info ID + 0, // Icon Type + 0, // Icon ID + kFFusionCodecVersion, // Version + componentHasMultiplePlatforms + // Registration Flags + componentDoAutoVersion, // Registration Flags + 0, // Resource ID of Icon Family + { + kFFusionDecompressionFlags, + 'dlle', // Entry point found by symbol name 'dlle' resource + 256, // ID of 'dlle' resource + platformPowerPCNativeEntryPoint, + kFFusionDecompressionFlags, + 'dlle', + 256, + platformIA32NativeEntryPoint, + }; +}; +resource 'thng' (344) { + decompressorComponentType, // Type + 'hdv4', // SubType + kFFusionCodecManufacturer, // Manufacturer + 0, // - use componentHasMultiplePlatforms + 0, + 0, + 0, + 'STR ', // Name Type + kHDVNameResID, // Name ID + 'STR ', // Info Type + kHDVInfoResID, // Info ID + 0, // Icon Type + 0, // Icon ID + kFFusionCodecVersion, // Version + componentHasMultiplePlatforms + // Registration Flags + componentDoAutoVersion, // Registration Flags + 0, // Resource ID of Icon Family + { + kFFusionDecompressionFlags, + 'dlle', // Entry point found by symbol name 'dlle' resource + 256, // ID of 'dlle' resource + platformPowerPCNativeEntryPoint, + kFFusionDecompressionFlags, + 'dlle', + 256, + platformIA32NativeEntryPoint, + }; +}; +resource 'thng' (345) { + decompressorComponentType, // Type + 'hdv5', // SubType + kFFusionCodecManufacturer, // Manufacturer + 0, // - use componentHasMultiplePlatforms + 0, + 0, + 0, + 'STR ', // Name Type + kHDVNameResID, // Name ID + 'STR ', // Info Type + kHDVInfoResID, // Info ID + 0, // Icon Type + 0, // Icon ID + kFFusionCodecVersion, // Version + componentHasMultiplePlatforms + // Registration Flags + componentDoAutoVersion, // Registration Flags + 0, // Resource ID of Icon Family + { + kFFusionDecompressionFlags, + 'dlle', // Entry point found by symbol name 'dlle' resource + 256, // ID of 'dlle' resource + platformPowerPCNativeEntryPoint, + kFFusionDecompressionFlags, + 'dlle', + 256, + platformIA32NativeEntryPoint, + }; +}; +resource 'thng' (346) { + decompressorComponentType, // Type + 'hdv6', // SubType + kFFusionCodecManufacturer, // Manufacturer + 0, // - use componentHasMultiplePlatforms + 0, + 0, + 0, + 'STR ', // Name Type + kHDVNameResID, // Name ID + 'STR ', // Info Type + kHDVInfoResID, // Info ID + 0, // Icon Type + 0, // Icon ID + kFFusionCodecVersion, // Version + componentHasMultiplePlatforms + // Registration Flags + componentDoAutoVersion, // Registration Flags + 0, // Resource ID of Icon Family + { + kFFusionDecompressionFlags, + 'dlle', // Entry point found by symbol name 'dlle' resource + 256, // ID of 'dlle' resource + platformPowerPCNativeEntryPoint, + kFFusionDecompressionFlags, + 'dlle', + 256, + platformIA32NativeEntryPoint, + }; +}; +resource 'thng' (347) { + decompressorComponentType, // Type + 'hdv7', // SubType + kFFusionCodecManufacturer, // Manufacturer + 0, // - use componentHasMultiplePlatforms + 0, + 0, + 0, + 'STR ', // Name Type + kHDVNameResID, // Name ID + 'STR ', // Info Type + kHDVInfoResID, // Info ID + 0, // Icon Type + 0, // Icon ID + kFFusionCodecVersion, // Version + componentHasMultiplePlatforms + // Registration Flags + componentDoAutoVersion, // Registration Flags + 0, // Resource ID of Icon Family + { + kFFusionDecompressionFlags, + 'dlle', // Entry point found by symbol name 'dlle' resource + 256, // ID of 'dlle' resource + platformPowerPCNativeEntryPoint, + kFFusionDecompressionFlags, + 'dlle', + 256, + platformIA32NativeEntryPoint, + }; +}; +resource 'thng' (348) { + decompressorComponentType, // Type + 'hdv8', // SubType + kFFusionCodecManufacturer, // Manufacturer + 0, // - use componentHasMultiplePlatforms + 0, + 0, + 0, + 'STR ', // Name Type + kHDVNameResID, // Name ID + 'STR ', // Info Type + kHDVInfoResID, // Info ID + 0, // Icon Type + 0, // Icon ID + kFFusionCodecVersion, // Version + componentHasMultiplePlatforms + // Registration Flags + componentDoAutoVersion, // Registration Flags + 0, // Resource ID of Icon Family + { + kFFusionDecompressionFlags, + 'dlle', // Entry point found by symbol name 'dlle' resource + 256, // ID of 'dlle' resource + platformPowerPCNativeEntryPoint, + kFFusionDecompressionFlags, + 'dlle', + 256, + platformIA32NativeEntryPoint, + }; +}; +resource 'thng' (349) { + decompressorComponentType, // Type + 'hdv9', // SubType + kFFusionCodecManufacturer, // Manufacturer + 0, // - use componentHasMultiplePlatforms + 0, + 0, + 0, + 'STR ', // Name Type + kHDVNameResID, // Name ID + 'STR ', // Info Type + kHDVInfoResID, // Info ID + 0, // Icon Type + 0, // Icon ID + kFFusionCodecVersion, // Version + componentHasMultiplePlatforms + // Registration Flags + componentDoAutoVersion, // Registration Flags + 0, // Resource ID of Icon Family + { + kFFusionDecompressionFlags, + 'dlle', // Entry point found by symbol name 'dlle' resource + 256, // ID of 'dlle' resource + platformPowerPCNativeEntryPoint, + kFFusionDecompressionFlags, + 'dlle', + 256, + platformIA32NativeEntryPoint, + }; +}; +resource 'thng' (350) { + decompressorComponentType, // Type + 'hdva', // SubType + kFFusionCodecManufacturer, // Manufacturer + 0, // - use componentHasMultiplePlatforms + 0, + 0, + 0, + 'STR ', // Name Type + kHDVNameResID, // Name ID + 'STR ', // Info Type + kHDVInfoResID, // Info ID + 0, // Icon Type + 0, // Icon ID + kFFusionCodecVersion, // Version + componentHasMultiplePlatforms + // Registration Flags + componentDoAutoVersion, // Registration Flags + 0, // Resource ID of Icon Family + { + kFFusionDecompressionFlags, + 'dlle', // Entry point found by symbol name 'dlle' resource + 256, // ID of 'dlle' resource + platformPowerPCNativeEntryPoint, + kFFusionDecompressionFlags, + 'dlle', + 256, + platformIA32NativeEntryPoint, + }; +}; + + + //--------------------------------------------------------------------------- // Fraps Components //--------------------------------------------------------------------------- @@ -3613,6 +3932,11 @@ "Decompresses video stored in Intel's Indeo 3 format." }; +resource 'STR ' (kHDVInfoResID) { + "Decompresses video stored in the HDV video format." +}; + + //--------------------------------------------------------------------------- // Code Entry Point for Mach-O //---------------------------------------------------------------------------