Ticket #24: wmv3.diff

File wmv3.diff, 8.2 kB (added by astrange, 6 months ago)

patch that doesn't work

  • ff_private.c

    old new  
    338338                        return 'FSV1'; 
    339339                case CODEC_ID_VP6A: 
    340340                        return 'VP6A'; 
     341                case CODEC_ID_WMV3: 
     342                        return 'WMV3'; 
    341343        } 
    342344        return 0; 
    343345} 
  • PerianAviImporter.r

    old new  
    376376        "NuppelVideo" 
    377377}; 
    378378 
     379/* Component Manager Things -  
     380 WMV */ 
     381resource 'thng' (kWMVthngResID) { 
     382        'eat ',                                 // Type 
     383        'WMV ',                                 // SubType 
     384        'Peri',                                 // Manufacturer 
     385        0, 
     386        0, 
     387        0, 
     388        0, 
     389        'STR ',                                         // Name Type 
     390        kWMVthngResID,                                          // Name ID 
     391        0,                                                      // Info Type 
     392        0,                                                      // Info ID 
     393        0,                                                      // Icon Type 
     394        0,                                                      // Icon ID 
     395        kFFAviComponentVersion,         // Version 
     396        componentHasMultiplePlatforms + 
     397        componentDoAutoVersion,         // Registratin Flags 
     398        0,                                                      // Resource ID of Icon Family 
     399        { 
     400                kFFAvi_MovieImportFlags | movieImportSubTypeIsFileExtension, 
     401                'dlle',                                 // Code Resource type 
     402                512, 
     403                platformIA32NativeEntryPoint,           // IA32 
     404                kFFAvi_MovieImportFlags | movieImportSubTypeIsFileExtension, 
     405                'dlle', 
     406                512, 
     407                platformPowerPCNativeEntryPoint,        // PowerPC 
     408        }, 
     409        'thnr', kWMVthngResID 
     410}; 
    379411 
     412resource 'thnr' (kWMVthngResID) { 
     413        { 
     414                'mime', 1, 0, 
     415                'mime', kWMVthngResID, 0, 
     416        } 
     417}; 
    380418 
     419resource 'mime' (kWMVthngResID) { 
     420        { 
     421                kMimeInfoMimeTypeTag,           1, "video/x-ms-wmv"; 
     422                kMimeInfoFileExtensionTag,      1, "wmv"; 
     423                kMimeInfoDescriptionTag,        1, "Windows Media Video"; 
     424        }; 
     425}; 
    381426 
     427resource 'STR ' (kWMVthngResID) { 
     428        "WMV Importer" 
     429}; 
     430 
     431 
    382432resource 'dlle' (512) { 
    383433        "FFAvi_MovieImportComponentDispatch" 
    384434}; 
  • ff_MovieImport.c

    old new  
    8888                REGISTER_DEMUXER(flv); 
    8989                REGISTER_DEMUXER(tta); 
    9090                REGISTER_DEMUXER(nuv); 
     91                REGISTER_DEMUXER(asf); 
    9192                register_parsers(); 
    9293                 
    9394                avcodec_init(); 
     
    123124                REGISTER_DECODER(vp6a); 
    124125                REGISTER_DECODER(zmbv); 
    125126                 
     127                REGISTER_DECODER(wmv3); 
     128                 
    126129                av_log_set_callback(FFMpegCodecprintf); 
    127130        } 
    128131} 
     
    212215                case 'NUV ': 
    213216                        err = GetComponentResource((Component)storage->ci, 'mime', kNuvthngResID, (Handle*)mimeInfo); 
    214217                        break; 
     218                case 'WMV ': 
     219                        err = GetComponentResource((Component)storage->ci, 'mime', kWMVthngResID, (Handle*)mimeInfo); 
     220                        break; 
    215221                default: 
    216222                        err = GetComponentResource((Component)storage->ci, 'mime', kAVIthngResID, (Handle*)mimeInfo); 
    217223                        break; 
  • ff_MovieImportVersion.h

    old new  
    3131#define kFLVthngResID 515 
    3232#define kTTAthngResID 517 
    3333#define kNuvthngResID 518 
     34#define kWMVthngResID 519 
    3435 
    3536#endif 
  • FFusionCodec.c

    old new  
    687687                        case 'VP6A': 
    688688                                codecID = CODEC_ID_VP6A; 
    689689                                break; 
    690                                  
     690                         
     691                        case 'WMV3': 
     692                                codecID = CODEC_ID_WMV3; 
     693                                break; 
     694 
    691695            default: 
    692696                                Codecprintf(glob->fileLog, "Warning! Unknown codec type! Using MPEG4 by default.\n"); 
    693697        } 
     
    16171621                                err = GetComponentResource((Component)glob->self, codecInfoResourceType, kVP6ACodecInfoResID, (Handle *)&tempCodecInfo); 
    16181622                                break; 
    16191623                                 
     1624                        case 'WMV3': 
     1625                                err = GetComponentResource((Component)glob->self, codecInfoResourceType, kWMV3CodecInfoResID, (Handle *)&tempCodecInfo); 
     1626                                break; 
     1627                                 
    16201628            default:    // should never happen but we have to handle the case 
    16211629                err = GetComponentResource((Component)glob->self, codecInfoResourceType, kDivX4CodecInfoResID, (Handle *)&tempCodecInfo); 
    16221630                                 
    16231631        } 
    16241632         
     1633                FFusionDebugPrint("Resource requested for '%s', found %p (error %d)\n", FourCCString(glob->componentType), tempCodecInfo, err); 
     1634 
    16251635        if (err == noErr)  
    16261636        { 
    16271637            *info = **tempCodecInfo; 
    1628              
     1638                                    
    16291639            DisposeHandle((Handle)tempCodecInfo); 
    16301640        } 
    16311641    } 
  • FFusionCodec.h

    old new  
    5353#define kTSCCCodecInfoResID                     305 
    5454#define kZMBVCodecInfoResID                     307 
    5555#define kVP6ACodecInfoResID                     309 
     56#define kWMV3CodecInfoResID                     311 
    5657 
    5758#define kFFusionCodecManufacturer       'Peri' 
    5859 
  • FFusionCodec.r

    old new  
    6666#define kNuvName                "NuppelVideo" 
    6767#define kTSCCName               "Techsmith Screen Capture" 
    6868#define kZMBVName               "DosBox Capture" 
     69#define kWMV3Name               "Windows Media Video 9" 
    6970 
    7071// Codec names Resource ID 
    7172 
     
    9293#define kTSCCNameResID          305 
    9394#define kZMBVNameResID          307 
    9495#define kVP6ANameResID          309 
     96#define kWMV3NameResID          311 
    9597 
    9698// Codec infos Resource ID 
    9799 
     
    118120#define kTSCCInfoResID          306 
    119121#define kZMBVInfoResID          308 
    120122#define kVP6AInfoResID          310 
     123#define kWMV3InfoResID          312 
    121124 
    122125// These flags specify information about the capabilities of the component 
    123126// Works with 1-bit, 8-bit, 16-bit and 32-bit Pixel Maps 
     
    706709        0                                       // Private Data 
    707710}; 
    708711 
     712resource 'cdci' (kWMV3CodecInfoResID) { 
     713        kWMV3Name,                              // Type 
     714        1,                                      // Version 
     715        1,                                      // Revision level 
     716        kFFusionCodecManufacturer,                      // Manufacturer 
     717        kFFusionDecompressionFlags,             // Decompression Flags 
     718        0,                                      // Compression Flags 
     719        kFFusionFormatFlags,                    // Format Flags 
     720        128,                                    // Compression Accuracy 
     721        128,                                    // Decomression Accuracy 
     722        200,                                    // Compression Speed 
     723        200,                                    // Decompression Speed 
     724        128,                                    // Compression Level 
     725        0,                                      // Reserved 
     726        1,                                      // Minimum Height 
     727        1,                                      // Minimum Width 
     728        0,                                      // Decompression Pipeline Latency 
     729        0,                                      // Compression Pipeline Latency 
     730        0                                       // Private Data 
     731}; 
     732 
    709733//--------------------------------------------------------------------------- 
    710734// MS-MPEG4 v1 Component 
    711735//--------------------------------------------------------------------------- 
     
    32803304        }; 
    32813305}; 
    32823306 
     3307resource 'thng' (339) { 
     3308        decompressorComponentType,              // Type 
     3309        'WMV3',                                 // SubType 
     3310        kFFusionCodecManufacturer,                      // Manufacturer 
     3311        0,                                      // - use componentHasMultiplePlatforms 
     3312        0, 
     3313        0, 
     3314        0, 
     3315        'STR ',                                 // Name Type 
     3316        kWMV3NameResID,                        // Name ID 
     3317        'STR ',                                 // Info Type 
     3318        kWMV3InfoResID,                        // Info ID 
     3319        0,                                      // Icon Type 
     3320        0,                                      // Icon ID 
     3321        kFFusionCodecVersion,                   // Version 
     3322        componentHasMultiplePlatforms +         // Registration Flags  
     3323        componentDoAutoVersion,                 // Registration Flags 
     3324        0,                                      // Resource ID of Icon Family 
     3325        { 
     3326                kFFusionDecompressionFlags,  
     3327                'dlle',                         // Entry point found by symbol name 'dlle' resource 
     3328                256,                            // ID of 'dlle' resource 
     3329                platformPowerPCNativeEntryPoint, 
     3330                kFFusionDecompressionFlags, 
     3331                'dlle', 
     3332                256, 
     3333                platformIA32NativeEntryPoint, 
     3334        }; 
     3335}; 
     3336 
    32833337//--------------------------------------------------------------------------- 
    32843338// Component Name Resources 
    32853339//--------------------------------------------------------------------------- 
     
    33763430        "On2 VP6A (Perian)" 
    33773431}; 
    33783432 
     3433resource 'STR ' (kWMV3NameResID) { 
     3434        "Windows Media Video 9 (Perian)" 
     3435}; 
     3436 
    33793437//--------------------------------------------------------------------------- 
    33803438// Component Name Resources 
    33813439//--------------------------------------------------------------------------- 
     
    34723530        "Decompresses video stored in On2 VP6A format." 
    34733531}; 
    34743532 
     3533resource 'STR ' (kWMV3InfoResID) { 
     3534        "Decompresses video stored in Windows Media Video 9 format." 
     3535}; 
     3536 
    34753537//--------------------------------------------------------------------------- 
    34763538// Code Entry Point for Mach-O 
    34773539//---------------------------------------------------------------------------