diff --git a/media-video/avidemux/additional-files/avidemux.rdef.in b/media-video/avidemux/additional-files/avidemux.rdef.in new file mode 100644 index 000000000..b672c1c06 --- /dev/null +++ b/media-video/avidemux/additional-files/avidemux.rdef.in @@ -0,0 +1,300 @@ + +resource app_flags B_MULTIPLE_LAUNCH; + +resource app_version { + major = @MAJOR@, + middle = @MIDDLE@, + minor = @MINOR@, + + variety = B_APPV_FINAL, + internal = 0, + + short_info = "Avidemux", + long_info = "@LONG_INFO@" +}; + +resource app_signature "@APP_SIGNATURE@"; + +resource file_types message { + "types" = "application/x-asf", + "types" = "video" +}; + +resource vector_icon { + $"6E6369660B04018405000200160339AA083B2C5C3B2C5CB9AA074A1F2C466C47" + $"00407FA9FF400200160238720C3A1E2C3A1E2CB8720B4991BC43053700AAFF75" + $"0200160233945C351991B5199133945C4A10764772F30080FF0002001602399B" + $"553B1FA1BB1FA1399B5548ED734B15960059FF00052005FF020012023BA06D3A" + $"18063A1806BBA06D487C7F48145F00FFBFFFFF00020012023B82130000000000" + $"00BB82134830F9C4418B00FFBFFFFF0004FF66620609AEAE02BC10BD95BBC9BD" + $"FDBBE5BDD4BB80BE27B41DC26BC258CABDCA90C5E3C722C3E7C7C9C448C835C4" + $"5ACADCC573CC25C38FBC6DBD0D060B7ADA2AB608B39CB36AB51EB3C5B716B3BF" + $"B6F5B3C5B734C4C1C03ECBF4C32ACA44BC14C00FBA49C15ABB08C023BA3EC2DA" + $"B8ADC265B61EB64CB3740A04B6B2B5CBB48FB706C03EBDC4C260BC890A04B66D" + $"B44BB44AB586BF93B802C1B5B6C70A04C1B5B6C7BF93B802BFD8B980C1FAB845" + $"0A04C03EBDC4C03ECB0AC260C9CFC260BC890A04B48FB706B48FC44CC03ECB0A" + $"C03EBDC40A04BFD8B980BF93B802B44AB586B48FB7030A0ABAABBE10BA99BE06" + $"BA99BE79BAA4BE80BAA4BE18BACDBE97BADBBE9FBADBBE2CBAD1BE26BAD1BE84" + $"0A04BC6BBFADB85EBD56B85EC0D1BC6BC3280222B9D6BDF8B9D9BDF7B9D2BDFA" + $"B9C5BDF4B9CCBDF8B9C0BDF1B9B5BDE7B9BABDEDB9AFBDE1B9A5BDD2B9AABDDA" + $"B9A5BDD2B9A5BDD2B9A5BDD2B9A5BDD2B9A5BDE5B9A5BDE5B9AABDEBB9B4BDF5" + $"B9AFBDF1B9B9BDFAB9C5BE01B9BEBDFEB9CABE04B9D4BE07B9CFBE06B9D8BE07" + $"B9DEBE05B9DBBE07B9E1BE04B9E5BDFEB9E3BE01B9E7BDFAB9E7BDF2B9E7BDF6" + $"B9E7BDEAB9E2BDDCB9E6BDE2B9DFBDD5B9D4BDC9B9DABDCFB9D1BDC6B9C8BDBF" + $"B9CDBDC3B9C4BDBBB9BEBDB6B9C0BDB8B9B9BDB2B9B4BDAAB9B6BDAEB9B2BDA6" + $"B9B1BD9DB9B1BDA2B9B1BD98B9B7BD93B9B3BD94B9BABD9231BD96B9BFBD93B9" + $"CBBD99B9D6BDA3B9D1BD9EB9DBBDA9B9E3BDB4B9E0BDAFB9E3BDB4B9E4BDB5B9" + $"E4BDB5B9E4BDB5B9E4BDA3B9E4BDA3B9E0BD9EB9D6BD95B9DBBD9AB9D1BD9131" + $"BD89B9CCBD8DB9BCBD84B9AEBD85B9B4BD82B9A8BD88B9A5BD98B9A5BD8EB9A5" + $"BDA0B9ABBDB0B9A7BDA8B9AEBDB7B9BCBDC5B9B4BDBEB9BFBDC831BDCDB9C3BD" + $"CBB9CABDD0B9D0BDD6B9CDBDD3B9D4BDD9B9D9BDE0B9D7BDDDB9DABDE4B9DBBD" + $"EDB9DBBDE8B9DBBDF30A0CBA87BE09BA87BDFBBA4EBDDABA4EBE4EBA87BE6FBA" + $"87BE61BA59BE47BA59BE1CBA87BE36BA873CBA59BE0EBA59BDEE060BFFBF3DBC" + $"18BE12BC14BE13BC1EBE11BC26BE06BC22BE0DBC29BDFFBC2BBDECBC2BBDF7BC" + $"2BBDE1BC26BDCCBC29BDD6BC233BBC18BDB1BC1EBDB9BC15BDACBC0BBDA3BC10" + $"BDA7BC07BD9EBBF7BD95BC00BD9ABBF7BD95BBE2BD88BDFCBBF8BE09BBF8BE09" + $"BC00BE0DBC0BBE11BC06BE10BC10BE13060BDBFF3FBBF8BDFCBBFEBDFFBBF8BD" + $"FCBBEDBDF5BD9CBBF8BDA2BBF8BDA2BBFDBDA5BC06BDACBC02BDA8BC0ABDAFBC" + $"11BDB7BC0DBDB3BC15BDBEBC1BBDCCBC19BDC5BC1EBDD4BC1FBDE5BC1FBDDCBC" + $"1FBDEEBC1CBDFABC1EBDF5BC1ABDFFBC12BE03BC16BE02BC0FBE04BC07BE02BC" + $"0BBE04BC02BE01021EBA0ABDC9BA07BDCCBA0CBDC7BA13BDC6BA10BDC6BA17BD" + $"C6BA1FBDCABA1BBDC7BA24BDCDBA2EBDD6BA29BDD1BA33BDDBBA3CBDEABA38BD" + $"E2BA3CBDEABA3DBDEABA3DBDEABA3DBDEABA3DBDD8BA3DBDD8BA38BDD1BA2EBD" + $"C7BA32BDCCBA29BDC3BA20BDBDBA25BDC0BA19BDB9BA0EBDB7BA14BDB7BA09BD" + $"B7BA01BDBBBA05BDB8B9FDBDBEB9F8BDC9B9FABDC3B9F6BDCFB9F5BDE1B9F5BD" + $"D7B9F5BDEBB9F8BDFDB9F6BDF5B9FBBE06BA01BE15B9FDBE0EBA05BE1DBA0F3C" + $"BA09BE23BA14BE2EBA20BE36BA19BE32BA23BE38BA29BE3ABA26BE3932BE3BBA" + $"31BE3CBA2EBE3CBA34BE3CBA38BE3DBA36BE3DBA39BE3CBA3DBE3CBA3BBE3CBA" + $"3DBE3CBA3DBE2ABA3DBE2ABA3DBE2ABA3DBE2ABA3DBE2ABA38BE2CBA2FBE2DBA" + $"34BE2EBA2ABE2DBA1F3CBA25BE2BBA1BBE26BA14BE1FBA17BE23BA10BE1BBA0A" + $"BE11BA0DBE16BA07BE0BBA04BDFFBA05BE05BA02BDF8BA01BDE8BA01BDF0BA01" + $"BDE0BA03BDD5BA02BDDABA05BDCF0A0CBEEAC091BEEAC083BEB0C062BEB0C0D6" + $"BEEAC0F7BEEAC0E9BEBCC0CEBEBCC0A3BEEAC0BEBEEAC0B0BEBCC096BEBCC076" + $"0A04B73BB898B599B7A6B497B868B63AB95A0A08BE0DC077BE16C05CBE3CC072" + $"BE44C097BE50C09EBE31C018BE21C00FBE02C0710A03BE29C021BE38C062BE19" + $"C0510A0CBE5EC032BE5EC0A6BE69C0ADBE69C085BE72C07EBE94C0C5BEA3C0CE" + $"BE7BC079BEA1C059BE93C051BE69C075BE69C0390210B5BEBA05B5BABA09B5C1" + $"BA02B5C6B9F7B5C4B9FEB5C8B9F1B5C9B9DFB5C9B9E9B5C9B9D6B5C6B9C4B5C8" + $"B9CDB5C4B9BBB5BEB9ACB5C2B9B3B5BBB9A5B5B1B999B5B6B99FB5ACB994B5A1" + $"B98BB5A7B98FB59BB988B590B986B595B986B58BB986B583B98AB587B987B580" + $"B98DB57BB999B57DB992B579B99FB578B9B1B578B9A7B578B9BAB57BB9CCB579" + $"B9C3B57DB9D4B583B9E3B580B9DCB587B9EBB590B9F7B58BB9F1B595B9FCB5A1" + $"BA04B59ABA01B5A7BA08B5B1BA0AB5ACBA0AB5B6BA0A0208B5A1B9F7B5A9B9FC" + $"B598B9F2B58CB9DFB591B9EAB587B9D4B584B9B7B584B9C7B584B9A8B58CB999" + $"B587B99EB591B994B5A1B999B598B994B5A9B99EB5B5B9B1B5B0B9A6B5BBB9BC" + $"B5BDB9D8B5BDB9C9B5BDB9E7B5B5B9F7B5BAB9F2B5B0B9FC0A08BC76BE52BC82" + $"BE59BC63BDD3BC53BDCABC34BE2BBC3FBE32BC48BE17BC6EBE2C0A03BC4BBE0B" + $"BC5BBDDBBC6ABE1D0A04B7E8B650B654B5F7B598B73CB72CB7950A04BB11B702" + $"B97CB6A9B8C1B7EEBA55B8470A08BCA7BE6EBCA7BE08BCC6BE1ABCC6BE0CBC7D" + $"BDE2BC7DBDEFBC9CBE01BC9CBE670A04B59BBABDB5A9BAC6B5A9BAAFB59BBAA7" + $"0A0CB707BC04B707BBF6B6CDBBD5B6CDBC49B707BC69B707BC5CB6D9BC41B6D9" + $"BC16B707BC31B707BC23B6D9BC09B6D9BBE9060D6FF6FF03B6AABBC2B6AEBBC5" + $"B6A7BBBFB69DBBB9B6A2BBBCB69DBBB9B685BBABBC1FB691BC26BBFAB69DBC01" + $"B69DBC01B6A3BC05B6ACBC07B6A8BC07B6B0BC07B6B7BC04B6B4BC06B6B9BC02" + $"B6BCBBFCB6BBBC00B6BDBBF8B6BEBBEFB6BEBBF4B6BEBBE8B6BBBBDDB6BDBBE2" + $"B6BABBD7B6B4BBCDB6B7BBD2B6B1BBC9060BFFF63FB6B1BBF1B6B2BBEFB6B0BB" + $"F3B6ADBBF7B6AFBBF5B6ABBBF8B6A6BBF8B6A9BBF8B6A3BBF7B69BBBF3B69FBB" + $"F6B69BBBF3B691BBEDBBBFB69CBBC6B69CBBC6B6A0BBC8B6A5BBCCB6A3BBCAB6" + $"A8BBCEB6ACBBD3B6AABBD0B6AEBBD6B6B1BBDDB6B0BBDAB6B2BBE1B6B2BBE8B6" + $"B2BBE4B6B2BBEC0A0CBD0BBE42BD0BBE34BCD2BE13BCD2BE87BD0BBEA8BD0BBE" + $"9ABCDEBE80BCDEBE55BD0BBE6FBD0BBE61BCDEBE47BCDEBE270A04BB8FBCF9B6" + $"4FB9F2B64FBB24BB8FBE2C0A03BFE0B980BFA9B84EBF12B9530A04BE3AB7B5BC" + $"A5B75BBBE9B8A0BD7E2F0A0CBB2CBE68BB2CBE5ABAF3BE39BAF3BEADBB2CBECE" + $"BB2CBEC0BAFEBEA6BAFEBE7BBB2CBE95BB2CBE87BAFEBE6DBAFEBE4E0A04BDC6" + $"BC5EBC23BB6DBB22BC2FBCC5BD200A04B638BA43B638BA59B646BA61B646BA4B" + $"0A04B8DEB989B7DDBA4CB97FBB3DBA81BA7B0A08B63EBBD5B663BBEBB66CBC10" + $"B678BC17B659BB91B649BB88B629BBEAB635BBF10A03B650BB9AB660BBDCB641" + $"BBCA0A05BF68BD50BE6CBE0EC00FBF00C041BEDAC041BDCD0A08B610BBDBB610" + $"BB75B62FBB87B62FBB79B5E5BB4FB5E5BB5CB604BB6EB604BBD40A04BD2EBF1A" + $"BFEFC0B2BFEFBF7FBD2EBDE8060BFFFF36B605BA39B600BA38B609BA3BB612BA" + $"3AB60EBA3BB618BA38B620BA2EB61CBA34B623BA27B625BA14B625BA1FB625BA" + $"09B620B9F4B623B9FEB61CB9EAB612B9D9B618B9E1B60FB9D4B605B9CBB60AB9" + $"CFB60031B5F1B9BCB5FAB9C1B5F1B9BCB5DBB9B0BA24B5F1BA30B5F1BA30B5F9" + $"BA35060BFEFF2FB5E7B9C4B5F2B9CAB5F2B9CAB5F7B9CDB600B9D4B5FCB9D0B6" + $"04B9D7B60BB9DFB607B9DBB60FB9E6B615B9F4B613B9ECB618B9FCB619BA0DB6" + $"19BA04B619BA16B615BA22B618BA1DB613BA26B60CBA2BB610BA29B60832B600" + $"BA2AB604BA2BB5FCBA29B5F2BA23B5F7BA27B5F2BA23B5E7BA1D0A04B811BD2A" + $"B4DABB4FB4DABECAB811C0A50A04B639C44AB647C452B647C43CB639C434021E" + $"B638C210B63DC213B632C20DB627C20AB62CC20BB622C20AB61AC20EB61DC20B" + $"B616C211B611C21CB613C216B60FC223B60EC234B60EC22BB60EC23EB611C251" + $"B60FC248B613C25AB61AC269B616C262B61EC270B627C27CB622C276B62CC281" + $"B638C289B632C286B63CC28BB642C28EB63FC28DB644C28EB649C28FB647C28F" + $"B64CC290B650C290B64EC290B652C290B656C290B654C290B656C290B656C27E" + $"B656C27EB656C27EB655C27DB655C27DB651C280B647C281B64CC281B642C281" + $"B638C27CB63DC27FB634C279B62CC27228C276B629C26EB623C264B625C269B6" + $"20C25FB61CC252B61EC259B61BC24BB61AC23BB61AC244B61AC234B61CC228B6" + $"1AC22DB61DC223B622C21DB620C21FB625C21AB62CC219B628C219B62FC219B6" + $"38C21DB633C21BB63DC220B647C22AB642C225B64BC22FB655C23DB650C235B6" + $"55C23DB656C23EB656C23EB656C23EB656C22CB656C22CB650C225B646C21BB6" + $"4BC21FB642C217021EB6B1C419B6B6C41CB6ABC416B6A0C413B6A5C414B69AC4" + $"13B692C41729C414B68EC41AB689C425B68BC41FB687C42CB686C43DB686C433" + $"B686C447B68AC45AB687C451B68CC462B692C472B68FC46A29C479B6A0C484B6" + $"9BC47FB6A5C48AB6B1C492B6ABC48EB6B4C494B6BAC496B6B7C495B6BDC497B6" + $"C2C498B6C0C498B6C5C499B6C9C499B6C7C499B6CAC499B6CFC499B6CCC499B6" + $"CFC499B6CFC487B6CFC487B6CFC487B6CEC486B6CEC486B6C9C489B6C0C48AB6" + $"C5C48AB6BBC489B6B0C484B6B64CB6ACC482B6A5C47BB6A8C47FB6A1C477B69B" + $"C46DB69EC472B699C468B695C45B29C462B693C454B692C444B692C44CB692C4" + $"3CB695C431B693C43629C42CB69BC425B698C428B69EC423B6A44BB6A14BB6A8" + $"4BB6B0C426B6ACC423B6B6C429B6BFC432B6BBC42DB6C4C438B6CEC446B6C9C4" + $"3EB6CEC446B6CFC447B6CFC447B6CFC447B6CFC435B6CFC435B6C9C42EB6BFC4" + $"24B6C4C428B6BAC41F0A08B6A4C251B65BC227B65BC234B67AC246B67AC2ACB6" + $"85C2B3B685C24DB6A4C25F0A0CB600C200B600C1F2B5C7C1D2B5C7C245B600C2" + $"66B600C258B5D3C23EB5D3C213B600C22DB600C220B5D3C205B5D3C1E60210BD" + $"45C637BD40C632BD4AC63DBD56C645BD50C6423AC649BD66C64BBD62C64BBD6B" + $"C64BBD73C646BD70C64ABD77C643BD7BC638BD79C63FBD7DC632BD7E50BD7EC6" + $"2ABD7EC617BD7BC605BD7DC60DBD79C5FCBD73C5EDBD77C5F4BD70C5E6BD66C5" + $"DABD6BC5E0BD61C5D5BD56C5CC3AC5D0BD50C5C9BD45C5C7BD4AC5C7BD40C5C7" + $"BD38C5CBBD3CC5C8BD35C5CEBD30C5DABD32C5D3BD2EC5E0BD2DC5F2BD2DC5E8" + $"BD2DC5FBBD30C60DBD2EC604BD32C615BD38C624BD35C61DBD3CC62C0208BD41" + $"C5DABD3CC5DFBD46C5D5BD56C5DABD4DC5D5BD5EC5DFBD6BC5F2BD65C5E7BD70" + $"C5FDBD72C619BD72C60ABD72C628BD6AC638BD70C632BD65C63DBD56C638BD5E" + $"C63DBD4DC633BD4150BD46C62BBD3CC615BD39C5F8BD39C607BD39C5E9060BBF" + $"FD3FB613C3CAB619C3D2B610C3C5B6064AB60BC3C0B601C3B7B5F2C3AEB5FBC3" + $"B3B5F2C3AEB5DDC3A1C415B5F34BB5F34BB5FAC426B606C42BB601C429B60BC4" + $"2CB613C42BB60FC42CB619C42AB621C41FB61DC426B624C419B626C406B626C4" + $"10B626C3FAB621C3E6B624C3F0B61EC3DB060BFFF63FB617C413B619C40EB615" + $"C418B60DC41CB611C41BB609C41DB602C41BB606C41DB5FDC41AB5F3C415B5F9" + $"C418B5F3C415B5E8C40EC3B5B5F3C3BBB5F3C3BBB5F8C3BEB601C3C5B5FDC3C2" + $"B605C3C8B60CC3D0B608C3CCB610C3D7B616C3E5B614C3DEB619C3EDB61AC3FE" + $"B61AC3F5B61AC4070222BD0EC609BD12C607BD0AC60ABCFDC605BD04C609BCF8" + $"C602BCEDC5F7BCF2C5FDBCE7C5F1BCDDC5E3BCE2C5EBBCDDC5E3BCDDC5E3BCDD" + $"C5E3BCDDC5E3BCDDC5F6BCDDC5F6BCE2C5FCBCECC606BCE7C601BCF1C60ABCFD" + $"C612BCF7C60EBD03C615BD0CC618BD08C617BD10C618BD17C616BD13C618BD19" + $"C615BD1DC60FBD1CC612BD1FC60BBD20C603BD20C607BD20C5FABD1BC5ECBD1E" + $"C5F3BD17C5E6BD0CC5DABD12C5E0BD09C5D7BD00C5D0BD05C5D3BCFCC5CC39C5" + $"C7BCF8C5C9BCF1C5C3BCECC5BBBCEEC5BFBCEAC5B7BCE9C5AEBCE9C5B3BCE9C5" + $"A9BCEFC5A4BCEBC5A5BCF3C5A3BCFEC5A7BCF7C5A4BD03C5AABD0EC5B4BD09C5" + $"AFBD144FBD1BC5C5BD18C5C0BD1BC5C5BD1CC5C6BD1CC5C6BD1CC5C6BD1CC5B3" + $"BD1CC5B3BD18C5AFBD0FC5A6BD14C5AABD09C5A1BCFEC59ABD04C59DBCF4C594" + $"BCE6C596BCEDC593BCE0C599BCDDC5A8BCDDC59FBCDDC5B1BCE3C5C0BCDFC5B9" + $"BCE6C5C8BCF4C5D6BCECC5CFBCF8C5D9BCFFC5DEBCFBC5DCBD02C5E1BD08C5E6" + $"BD05C5E4BD0CC5EABD11C5F1BD0FC5EEBD13C5F4BD14C5FEBD14C5F9BD14C604" + $"060EFF6FA60EB740C2DFB73CC2E3B743C2DBB744C2CDB744C2D5B744C2C7B742" + $"C2BCB743C2C1B740C2B7B73AC2AEB73DC2B2B737C2AAB731C2A4B734C2A7B72D" + $"C2A1B724C29BB729C29EB724C29BB70BC28DC300B717C307C2D9B727C2E2B744" + $"C321B753C32AB733C2E4B733C2E4B738C2E5060BDBFF3FB723C2D3B726C2D5B7" + $"23C2D3B717C2CCC2A0B725C2A8B725C2A8B728C2AAB72DC2AEB72AC2ACB72FC2" + $"B0B733C2B4B731C2B2B735C2B7B737C2BDB736C2BAB738C2C1B738C2C7B738C2" + $"C4B738C2CBB737C2D1B738C2CFB736C2D3B733C2D6B735C2D5B731C2D7B72CC2" + $"D7B72FC2D8B729C2D60A04BB71C7CDBFEFCA65BFEFC7D8BB71C5400A04B759C5" + $"70BB29C7A4BB29C62DB759C3FA0210B5BFC39DB5C3C3A5B5BCC396B5B3C38BB5" + $"B7C390B5AEC385B5A2C37DB5A8C380B59CC379B591C377B596C378B58CC377B5" + $"84C37CB588C378B581C37FB57CC38AB57EC384B57AC391B579C3A2B579C398B5" + $"79C3ABB57CC3BDB57AC3B5B57EC3C6B584C3D5B581C3CEB588C3DCB591C3E8B5" + $"8CC3E2B596C3EDB5A2C3F6B59CC3F2B5A8C3F9B5B3C3FBB5AEC3FBB5B7C3FCB5" + $"BFC3F7B5BCC3FAB5C3C3F4B5C7C3E9B5C5C3EFB5C9C3E227C3D027C3DA27C3C7" + $"B5C7C3B5B5C9C3BEB5C5C3AD0208B5B6C3E8B5BCC3E3B5B1C3EDB5A2C3E8B5AA" + $"C3EDB599C3E3B58DC3D0B592C3DBB588C3C5B585C3A9B585C3B8B585C39AB58D" + $"C38AB588C38FB592C385B5A2C38AB599C385B5ABC38FB5B7C3A2B5B1C397B5BC" + $"C3ADB5BEC3C9B5BEC3BAB5BEC3D90A04B73EC4E1B74CC4E9B74CC4D3B73EC4CB" + $"0210B6EEC2E2B6EAC2E5B6F1C2DFB6F6C2D4B6F4C2DAB6F8C2CDB6F9C2BCB6F9" + $"C2C5B6F9C2B2B6F6C2A1B6F8C2A9B6F4C298B6EEC289B6F1C290B6EAC282B6E1" + $"C276B6E6C27BB6DCC270B6D0C268B6D7C26CB6CAC265B6C0C262B6C5C263B6BB" + $"C262B6B3C267B6B6C264B6AFC26AB6ABC275B6ADC26FB6A9C27CB6A8C28DB6A8" + $"C284B6A8C297B6ABC2A8B6A9C2A0B6ADC2B1B6B3C2C0B6AFC2B9B6B6C2C7B6C0" + $"C2D3B6BBC2CEB6C5C2D9B6D0C2E1B6CAC2DDB6D7C2E4B6E1C2E6B6DCC2E6B6E6" + $"C2E70208B6D0C2D4B6D9C2D9B6C8C2CFB6BCC2BBB6C1C2C7B6B7C2B0B6B4C294" + $"B6B4C2A3B6B4C285B6BCC275B6B7C27BB6C1C270B6D0C275B6C8C270B6D9C27A" + $"B6E5C28DB6E0C282B6EAC299B6EDC2B5B6EDC2A6B6EDC2C4B6E5C2D3B6EAC2CE" + $"B6E0C2D90210B720C469B723C470B71CC462B713C456B718C45BB70EC450B702" + $"C448B708C44C2AC445B6F2C443B6F7C443B6ECC443B6E5C447B6E8C444B6E1C4" + $"4AB6DDC456B6DEC44FB6DBC45CB6DAC46DB6DAC464B6DAC477B6DDC489B6DBC4" + $"80B6DFC491B6E5C4A0B6E1C499B6E8C4A8B6F2C4B3B6EDC4AEB6F7C4B9B702C4" + $"C12AC4BDB708C4C5B713C4C7B70EC4C6B718C4C7B720C4C2B71CC4C5B723C4BF" + $"B728C4B4B726C4BAB72AC4ADB72BC49CB72BC4A6B72BC492B728C481B72AC489" + $"B726C4780208B717C4B4B71CC4AEB712C4B9B702C4B4B70BC4B9B6FAC4AFB6EE" + $"C49CB6F3C4A7B6E8C491B6E6C474B6E6C483B6E6C465B6EDC456B6E8C45BB6F2" + $"C450B702C455B6F9C450B70BC45AB717C46EB712C462B71CC479B71FC495B71F" + $"C486B71FC4A40210B541BA7DB53EBA75B545BA84B54EBA90B549BA8AB553BA95" + $"B55FBA9DB559BA9AB565BAA1B570BAA3B56BBAA3B574BAA3B57CBA9FB579BAA2" + $"B580BA9BB584BA90B582BA97B586BA8AB587BA78B587BA82B587BA6FB584BA5D" + $"B586BA66B583BA54B57CBA45B580BA4DB579BA3EB570BA32B575BA38B56BBA2D" + $"B55FBA25B565BA28B559BA21B54EBA1FB553BA1FB549BA1FB541BA23B545BA20" + $"B53EBA27B539BA32B53B32B537BA38B536BA4AB536BA40B536BA53B539BA65B5" + $"37BA5CB53BBA6E0208B54ABA32B545BA37B54FBA2DB55FBA32B556BA2DB568BA" + $"37B574BA4AB56EBA3FB579BA55B57BBA71B57BBA62B57BBA81B574BA90B579BA" + $"8BB56EBA95B55FBA90B567BA95B556BA8BB54ABA78B54FBA83B545BA6DB542BA" + $"51B542BA60B542BA420A04BCB8C354BFEFC52FBFEFC1B4BCB8BFD9060DFFFF9B" + $"01B4F9B976B4F9B976B4FFB97AB509B97CB505B97BB50DB97CB513B979B510B9" + $"7BB516B977B519B971B517B974B51AB96DB51BB964B51BB969B51BB95DB518B9" + $"51B51AB957B516B94CB510B942B514B947B50EB93EB507B937B50AB93AB503B9" + $"34B4FAB92DB4FFB930B4FAB92DB4E2B920B994B4EEB99AB96F060BFEFF2FB4EE" + $"B934B4F9B93AB4F9B93AB4FDB93DB502B941B500B93FB504B943B508B948B507" + $"B945B50BB94BB50DB952B50CB94EB50EB955B50FB95DB50FB959B50FB961B50E" + $"B966B50EB964B50DB968B50AB96BB50CB96AB508B96DB503B96DB506B96DB500" + $"B96CB4F7B968B4FCB96AB4F7B968B4EEB9620A04B759C3ADBB29C5E0BB29C46A" + $"B759C2370A08BDBDBFE3BDDCBFF5BDDCC05BBDE8C062BDE8BFFCBE07C00EBE07" + $"C000BDBDBFD60A04B4DFC087BFEFC6E9BFEFC58FB4DFBF2C0A0AB4E2BA53B4ED" + $"BA59B4EDB9F2B516BA71B524BA79B524BA05B519B9FFB519BA5DB4F4B9E9B4E2" + $"B9DF060EFF9BA90FB563B98AB563B992B563B984B560B979B562B97EB55FB974" + $"B559B96BB55CB96FB556B967B550B961B553B963B54CB95EB542B958B548B95B" + $"B542B958B52AB94AB9BDB536B9C4B996B546B99FB563B9DEB572B9E7B551B9A1" + $"B551B9A1B557B9A2B55EB99CB55BB9A0B562B998060BFFF63FB556B98EB557B9" + $"8CB555B990B552B993B554B992B550B995B54BB994B54EB995B548B993B541B9" + $"90B545B992B541B990B536B989B95EB543B965B543B965B547B967B54CB96BB5" + $"49B969B54EB96DB551B972B550B96FB554B975B556B97BB555B977B557B97EB5" + $"57B984B557B981B557B9880A0ABE1CC6B5BE2AC6BDBE2AC649BE1FC643BE1FC6" + $"A2BDFAC62EBDE8C623BDE8C697BDF3C69DBDF3C6360A0CB53EC1EAB53EC1F6B5" + $"60C20AB560C1FEB555C1F7B555C19CB560C1A2B560C196B53EC182B53EC18EB5" + $"49C195B549C1F10616FEFF9FFFFF07BD8FC5F0BD8FC635BD8FC635BD8FC63EBD" + $"91C64DBD90C646BD93C654BD98C660BD95C65ABD9BC665BDA2C66EBD9EC66ABD" + $"A6C673BDB1C679BDABC676BDB6C67DBDBEC67FBDBAC67E3BC67FBDC9C67CBDC6" + $"C67EBDCCC67ABDD0C671BDCEC676BDD1C66BBDD2C65CBDD2C664BDD2C65CC617" + $"BDC6C610BDC6C656BDC6C656BDC6C65CBDC5C664BDC6C661BDC5C6673BC66CBD" + $"C4C66ABDC0C66FBDBBC670BDBEC670BDB8C670BDB1C66CBDB5C66FBDACC66ABD" + $"A6C664BDA9C667BDA3C660BD9FC658BDA1C65CBD9EC654BD9CC64DBD9CC651BD" + $"9BC649BD9BC63DBD9BC643BD9BC63DC5F7060EFF9BA90FB5ADC1E2B5ADC1EAB5" + $"ADC1DCB5AAC1D1B5ACC1D6B5A9C1CCB5A3C1C3B5A6C1C7B5A0C1BFB59AC1B9B5" + $"9DC1BBB596C1B6B58CC1B0B592C1B3B58CC1B0B574C1A2C215B580C21CC1EEB5" + $"90C1F7B5ADC236B5BCC23FB59BC1F9B59BC1F9B5A1C1FAB5A8C1F4B5A5C1F8B5" + $"ABC1F0060BFFF63FB5A0C1E6B5A1C1E4B59FC1E8B59CC1EBB59EC1EAB59AC1EC" + $"B595C1ECB598C1EDB592C1EBB58BC1E8B58FC1EAB58BC1E8B580C1E1C1B5B58D" + $"C1BDB58DC1BDB590C1BFB595C1C3B593C1C1B598C1C5B59BC1C9B59AC1C7B59D" + $"C1CCB5A0C1D2B59FC1CFB5A1C1D6B5A1C1DCB5A1C1D9B5A1C1E0060BFFF63FB5" + $"2AC194B52DC19EB527C189B51CC178B522C180B519C173B50FC16AB514C16EB5" + $"0AC165B4FBC15CB504C161B4FBC15CB4E6C14FC1C3B4FBC1D0B4FBC1D0B503C1" + $"D4B50FC1D9B50AC1D7B514C1DAB51CC1D9B518C1DAB522C1D8B52AC1CDB526C1" + $"D4B52DC1C7B52FC1B4B52F45B52FC1A8060BFFF63FB520C1C1B522C1BCB51DC1" + $"C6B516C1CAB51AC1C9B512C1CBB50AC1C9B50FC1CBB506C1C8B4FCC1C3B501C1" + $"C6B4FCC1C3B4F1C1BCC163B4FCC169B4FCC169B501C16CB50AC173B506C170B5" + $"0EC176B515C17EB511C17AB519C185B51FC193B51DC18CB522C19BB523C1ACB5" + $"23C1A3B523C1B5060BFFBF3DBE78C6E1BE74C6E2BE7EC6DFBE86C6D5BE82C6DB" + $"BE89C6CEBE8BC6BBBE8BC6C6BE8BC6B0BE86C69BBE89C6A5BE83C691BE78C680" + $"BE7EC688BE75C67BBE6BC672BE70C676BE66C66DBE57C664BE60C668BE57C664" + $"BE42C657C6CBBE57C6D7BE57C6D7BE5FC6DCBE6BC6E0BE66C6DFBE70C6E2060B" + $"DBFF3FBE58C6CABE5EC6CEBE58C6CABE4DC6C4C66BBE58C671BE58C671BE5DC6" + $"74BE66C67BBE62C677BE6AC67EBE7151BE6DC682BE75C68DBE7BC69BBE79C693" + $"BE7EC6A3BE7FC6B4BE7FC6ABBE7FC6BDBE7CC6C9BE7EC6C4BE79C6CDBE72C6D2" + $"BE76C6D0BE6EC6D3BE66C6D1BE6BC6D2BE62C6D0060EFF6FA60EB560C38DB55C" + $"C391B563C38A26C37B26C38426C375B562C36AB563C370B560C365B55AC35CB5" + $"5DC361B557C358B551C352B554C355B54DC34FB544C349B549C34CB544C349B5" + $"2BC33BC3AFB537C3B5C387B547C39126C3CFB573C3D8B553C393B553C393B558" + $"C393060BDBFF3FB543C381B546C383B543C381B537C37AC34FB544C357B544C3" + $"57B548C358B54DC35CB54AC35AB54FC35EB553C363B551C360B555C366B557C3" + $"6CB556C369B558C36FB558C375B558C372B558C37AB557C37FB558C37DB556C3" + $"82B553C384B555C383B551C386B54CC385B54FC386B549C385060DBFD9FF03B5" + $"12C333B515C338B50FC32FB508C328B50CC32CB504C325B4FBC31FB500C322B4" + $"FBC31FB4E3C311C385B4EFC38CC360B4FAC367B4FAC367B500C36BB50AC36DB5" + $"06C36DB50EC36DB514C36AB511C36CB517C368B51AC362B519C366B51BC35EB5" + $"1CC355B51CC35AB51CC34EB519C343B51BC348B517C33D060BFFF63FB50FC357" + $"B510C355B50EC359B50BC35DB50DC35BB509C35EB504C35EB507C35EB501C35D" + $"B4F8C359B4FDC35CB4F8C359B4EFC353C325B4FAC32CB4FAC32C25C32EB503C3" + $"32B501C330B505C334B509C339B508C336B50CC33CB50EC343B50DC340B50FC3" + $"47B510C34EB510C34AB510C3520604BFB48FC44CB49CC43FB937C6FBBA11C0C4" + $"BA11C3C0BA11BDEBBFA3BD73BB97BB79BD43BC22B4A9B7200202BFA3BD73BFD5" + $"BD8CC005BDA9C03EBDC4C03EBDC7C008BDA60202BF39B7F4BF56B7F8BF6FB7FE" + $"BF93B802BF8FB803BF74B7FD0604BBB48FB703B49CB6F7B944B807B9B8B76CBF" + $"39B7F4BB24B74FBD52B796B464B5930A04B48FB706B48FC44CB4CEB774C03EBD" + $"C40A06B4A9B5CEBFA0B809B4E1B583B67CB444B457B58CB48FB7030B0A000100" + $"023FBC160000000000003FC4614497CB45BC0E0A010101024040C10000000000" + $"004010A743DE33C013140A020102024040C10000000000004010A743DE33C013" + $"140A030103024040C10000000000004010A743DE33C013140A040104024040C1" + $"0000000000004010A743DE33C013140A050105024040C10000000000004010A7" + $"43DE33C013140A06020607024040C10000000000004010A743DE33C013140A07" + $"5408090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223242526" + $"2728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F40414243444546" + $"4748494A4B4C4D4E4F505152535455565758595A5B024040C100000000000040" + $"10A743DE33C013140A08025C5D024040C10000000000004010A743DE33C01314" + $"0A09025E5F024040C10000000000004010A743DE33C013140A0A026061024040" + $"C10000000000004010A743DE33C01314" +}; diff --git a/media-video/avidemux/avidemux-2.7.1.recipe b/media-video/avidemux/avidemux-2.7.1.recipe new file mode 100644 index 000000000..70f30f887 --- /dev/null +++ b/media-video/avidemux/avidemux-2.7.1.recipe @@ -0,0 +1,129 @@ +SUMMARY="Free video editor and encoder" +DESCRIPTION="Avidemux is a free video editor designed for simple cutting, \ +filtering and encoding tasks. It supports many file types, including AVI, \ +DVD compatible MPEG files, MP4 and ASF, using a variety of codecs. Tasks \ +can be automated using projects, job queue and powerful scripting capabilities." +HOMEPAGE="http://fixounet.free.fr/avidemux/" +COPYRIGHT="2001–2018 Mean" +LICENSE="GNU GPL v3" +REVISION="1" +SOURCE_URI="https://sourceforge.net/projects/avidemux/files/avidemux/$portVersion/avidemux_$portVersion.tar.gz" +CHECKSUM_SHA256="3ccd784a329c8957c6741923549fdfb70f3b96d087aeb514f3d52e1cd281e995" +SOURCE_DIR="avidemux_$portVersion" +PATCHES="avidemux-$portVersion.patchset" +ADDITIONAL_FILES="avidemux.rdef.in" +ARCHITECTURES="!x86_gcc2 x86_64" +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + avidemux$secondaryArchSuffix = $portVersion + app:Avidemux$secondaryArchSuffix = $portVersion + " +REQUIRES=" + haiku${secondaryArchSuffix} + lib:libexecinfo$secondaryArchSuffix + lib:libass$secondaryArchSuffix + lib:liba52$secondaryArchSuffix + lib:libcddb$secondaryArchSuffix + lib:libcdio$secondaryArchSuffix + lib:libGL$secondaryArchSuffix + lib:libGLU$secondaryArchSuffix + lib:libiconv$secondaryArchSuffix + lib:libQt5Core$secondaryArchSuffix + lib:libQt5DBus$secondaryArchSuffix + lib:libQt5Gui$secondaryArchSuffix + lib:libQt5Widgets$secondaryArchSuffix + lib:libmad$secondaryArchSuffix + lib:libtag$secondaryArchSuffix + lib:libx265$secondaryArchSuffix + lib:libsqlite3$secondaryArchSuffix + lib:libopus$secondaryArchSuffix + lib:libintl$secondaryArchSuffix + lib:libx264$secondaryArchSuffix + lib:libfaac$secondaryArchSuffix +# lib:libfaad$secondaryArchSuffix + lib:libvorbis$secondaryArchSuffix + lib:libvorbisenc$secondaryArchSuffix + lib:libogg$secondaryArchSuffix + lib:libmp3lame$secondaryArchSuffix + lib:libtwolame$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libexecinfo$secondaryArchSuffix + devel:libass$secondaryArchSuffix + devel:liba52$secondaryArchSuffix + devel:libcddb$secondaryArchSuffix + devel:libcdio$secondaryArchSuffix + devel:libgl$secondaryArchSuffix + devel:libglu$secondaryArchSuffix + devel:libiconv$secondaryArchSuffix + devel:libQt5Core$secondaryArchSuffix + devel:libQt5DBus$secondaryArchSuffix + devel:libQt5Gui$secondaryArchSuffix + devel:libQt5Widgets$secondaryArchSuffix + devel:libmad$secondaryArchSuffix + devel:libtag$secondaryArchSuffix + devel:libx265$secondaryArchSuffix + devel:libsqlite3$secondaryArchSuffix + devel:libopus$secondaryArchSuffix + devel:libx264$secondaryArchSuffix + devel:libfaac$secondaryArchSuffix +# devel:libfaad$secondaryArchSuffix + devel:libvorbis$secondaryArchSuffix + devel:libogg$secondaryArchSuffix + devel:libmp3lame$secondaryArchSuffix + devel:libtwolame$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:awk + cmd:cmp + cmd:cmake + cmd:patch + cmd:yasm + cmd:make + cmd:gcc$secondaryArchSuffix + cmd:pkg_config$secondaryArchSuffix + " + +BUILD() +{ + bash bootStrap.bash \ + --prefix=$appsDir/Avidemux \ + --without-cli \ + --with-qt \ + --with-system-libass \ + --with-system-liba52 \ + --with-system-libmad +} + +INSTALL() +{ + mkdir -p $appsDir/Avidemux + cp -fr $sourceDir/install/$appsDir/Avidemux/* $appsDir/Avidemux + mv $appsDir/Avidemux/bin/avidemux3_qt5 "$appsDir/Avidemux/Avidemux" + mv $appsDir/Avidemux/bin/avidemux3_jobs_qt5 "$appsDir/Avidemux/Avidemux Jobs" + ln -s "$appsDir/Avidemux/Avidemux" $appsDir/Avidemux/bin/avidemux3_qt5 + ln -s "$appsDir/Avidemux/Avidemux Jobs" $appsDir/Avidemux/bin/avidemux3_jobs_qt5 + rm -rf $appsDir/Avidemux/include \ + $appsDir/Avidemux/share/ADM6_addons + + local APP_SIGNATURE="application/x-vnd.avidemux" + local MAJOR="`echo "$portVersion" | cut -d. -f1`" + local MIDDLE="`echo "$portVersion" | cut -d. -f2`" + local MINOR="`echo "$portVersion" | cut -d. -f3`" + local LONG_INFO="$SUMMARY" + sed \ + -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \ + -e "s|@MAJOR@|$MAJOR|" \ + -e "s|@MIDDLE@|$MIDDLE|" \ + -e "s|@MINOR@|$MINOR|" \ + -e "s|@LONG_INFO@|$LONG_INFO|" \ + $portDir/additional-files/avidemux.rdef.in > avidemux.rdef + + addResourcesToBinaries avidemux.rdef $appsDir/Avidemux/Avidemux + addResourcesToBinaries avidemux.rdef "$appsDir/Avidemux/Avidemux Jobs" + + addAppDeskbarSymlink $appsDir/Avidemux/Avidemux +} diff --git a/media-video/avidemux/patches/avidemux-2.7.1.patchset b/media-video/avidemux/patches/avidemux-2.7.1.patchset new file mode 100644 index 000000000..88905b700 --- /dev/null +++ b/media-video/avidemux/patches/avidemux-2.7.1.patchset @@ -0,0 +1,909 @@ +From 4917eb9bb1aff46411495834169fe4bcd9128636 Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Wed, 11 Jul 2018 22:46:06 +1000 +Subject: Fix build for Haiku + + +diff --git a/avidemux_core/ADM_core/include/ADM_crashdump_other.h b/avidemux_core/ADM_core/include/ADM_crashdump_other.h +index 6deba1e..1866602 100644 +--- a/avidemux_core/ADM_core/include/ADM_crashdump_other.h ++++ b/avidemux_core/ADM_core/include/ADM_crashdump_other.h +@@ -1,4 +1,4 @@ +-#if !defined(__APPLE__) && !defined(__unix__) && !defined(__MINGW32__) && !defined ADM_CRASHDUMP_OTHER_H ++#if !defined(__APPLE__) && !defined(__HAIKU__) && !defined(__unix__) && !defined(__MINGW32__) && !defined ADM_CRASHDUMP_OTHER_H + #define ADM_CRASHDUMP_OTHER_H + + #define installSigHandler(...) {} +diff --git a/avidemux_core/ADM_core/src/ADM_crashdump_unix.cpp b/avidemux_core/ADM_core/src/ADM_crashdump_unix.cpp +index a2f1375..b4b6fd2 100644 +--- a/avidemux_core/ADM_core/src/ADM_crashdump_unix.cpp ++++ b/avidemux_core/ADM_core/src/ADM_crashdump_unix.cpp +@@ -40,8 +40,13 @@ + static ADM_saveFunction *mysaveFunction=NULL; + static ADM_fatalFunction *myFatalFunction=NULL; + static ADM_sigIntFunction *mySigIntFunction=NULL; ++#ifdef __HAIKU__ ++static __sighandler_t oldSignalHandlerSigInt; ++static __sighandler_t oldSignalHandlerSigSev; ++#else + static sighandler_t oldSignalHandlerSigInt; + static sighandler_t oldSignalHandlerSigSev; ++#endif + void sig_segfault_handler(int signo); + void sig_sigint_handler(int signo); + +diff --git a/avidemux_core/ADM_core/src/ADM_folder_linux.cpp b/avidemux_core/ADM_core/src/ADM_folder_linux.cpp +index 686e85a..3625d55 100644 +--- a/avidemux_core/ADM_core/src/ADM_folder_linux.cpp ++++ b/avidemux_core/ADM_core/src/ADM_folder_linux.cpp +@@ -39,7 +39,11 @@ static std::string ADM_i18nDir; + static std::string canonize(const std::string &in) + { + std::string out; ++#ifdef __HAIKU__ ++ char *simple2=realpath(in.c_str(), NULL); ++#else + char *simple2=canonicalize_file_name(in.c_str()); ++#endif + if(simple2) + { + out=std::string(simple2)+std::string("/"); +diff --git a/avidemux_core/CMakeLists.txt b/avidemux_core/CMakeLists.txt +index ba31722..b00ea2d 100644 +--- a/avidemux_core/CMakeLists.txt ++++ b/avidemux_core/CMakeLists.txt +@@ -52,7 +52,7 @@ checkFtello() + MESSAGE(STATUS "Checking for sqlite") + MESSAGE(STATUS "*******************") + +-IF (UNIX) ++IF (UNIX AND NOT HAIKU) + SET(SQLITE_REQUIRED_FLAGS "-ldl") + ENDIF (UNIX) + +diff --git a/cmake/cmake_compile_check/execinfo.cpp b/cmake/cmake_compile_check/execinfo.cpp +index 00304cf..07077fa 100644 +--- a/cmake/cmake_compile_check/execinfo.cpp ++++ b/cmake/cmake_compile_check/execinfo.cpp +@@ -2,36 +2,8 @@ + #include + #include + +-/* Obtain a backtrace and print it to stdout. */ +-void +-print_trace (void) +-{ +- void *array[10]; +- size_t size; +- char **strings; +- size_t i; +- +- size = backtrace (array, 10); +- strings = backtrace_symbols (array, size); +- +- printf ("Obtained %zd stack frames.\n", size); +- +- for (i = 0; i < size; i++) +- printf ("%s\n", strings[i]); +- +- free (strings); +-} +- +-/* A dummy function to make the backtrace more interesting. */ +-void +-dummy_function (void) +-{ +- print_trace (); +-} +- + int + main (void) + { +- dummy_function (); + return 0; + } +-- +2.16.4 + + +From 34e3741c54d6b8941849ed96833ea8b058408397 Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Thu, 12 Jul 2018 00:09:37 +1000 +Subject: Fix build 2 + + +diff --git a/avidemux/common/main.cpp b/avidemux/common/main.cpp +old mode 100755 +new mode 100644 +index cb2b34b..80cfaa0 +--- a/avidemux/common/main.cpp ++++ b/avidemux/common/main.cpp +@@ -60,7 +60,9 @@ int main(int _argc, char *_argv[]) + redirectStdoutToFile(); + #endif + ++#ifndef __HAIKU__ + installSigHandler(); ++#endif + + char **argv; + int argc; +@@ -82,9 +84,9 @@ int main(int _argc, char *_argv[]) + #ifdef _WIN32 + freeUtf8CommandLine(argc, argv); + #endif +- ++#ifndef __HAIKU__ + uninstallSigHandler(); +- ++#endif + return exitVal; + } + /** +diff --git a/avidemux/qt4/ADM_jobs/src/ADM_jobs.cpp b/avidemux/qt4/ADM_jobs/src/ADM_jobs.cpp +index f537995..08c7f7c 100644 +--- a/avidemux/qt4/ADM_jobs/src/ADM_jobs.cpp ++++ b/avidemux/qt4/ADM_jobs/src/ADM_jobs.cpp +@@ -44,9 +44,9 @@ int main(int argc, char *argv[]) + #if !defined(NDEBUG) && defined(FIND_LEAKS) + new_progname = argv[0]; + #endif +- ++#ifndef __HAIKU__ + installSigHandler(); +- ++#endif + #define STR(x) #x + #define MKSTRING(x) STR(x) + +@@ -75,6 +75,8 @@ int main(int argc, char *argv[]) + printf("Microsoft Windows"); + #elif defined(__APPLE__) + printf("Apple"); ++#elif defined(__HAIKU__) ++ printf("Haiku"); + #else + printf("Linux"); + #endif +@@ -124,9 +126,9 @@ int main(int argc, char *argv[]) + // Init jobs + ADMJob::jobInit(); + jobRun(argc,argv); +- ++#ifndef __HAIKU__ + uninstallSigHandler(); +- ++#endif + printf("Normal exit\n"); + return 0; + } +diff --git a/avidemux/qt4/ADM_userInterfaces/ADM_gui/T_preview.cpp b/avidemux/qt4/ADM_userInterfaces/ADM_gui/T_preview.cpp +index c880574..62fa6ef 100644 +--- a/avidemux/qt4/ADM_userInterfaces/ADM_gui/T_preview.cpp ++++ b/avidemux/qt4/ADM_userInterfaces/ADM_gui/T_preview.cpp +@@ -83,7 +83,7 @@ bool ADM_QPreviewCleanup(void) + * @param z + */ + #ifdef __HAIKU__ +-ADM_Qvideo::ADM_Qvideo(QWidget *z) : QWidget(z) {} ++ADM_Qvideo::ADM_Qvideo(QFrame *z) : QWidget(z) {} + #else + ADM_Qvideo::ADM_Qvideo(QFrame *z) : QWidget(z) + { +@@ -215,6 +215,9 @@ void UI_getWindowInfo(void *draw, GUI_WindowInfo *xinfo) + #if defined(_WIN32) + xinfo->display=(void *)videoWindow->winId(); + xinfo->systemWindowId=videoWindow->winId(); ++#elif defined(__HAIKU__) ++ xinfo->display = (void*)videoWindow->winId(); ++ xinfo->systemWindowId=videoWindow->winId(); + #elif defined(__APPLE__) + #if defined(ADM_CPU_X86_64) + xinfo->display = (void*)videoWindow->winId(); +diff --git a/avidemux/qt4/CMakeLists.txt b/avidemux/qt4/CMakeLists.txt +old mode 100755 +new mode 100644 +index 8881326..9e6c424 +--- a/avidemux/qt4/CMakeLists.txt ++++ b/avidemux/qt4/CMakeLists.txt +@@ -28,7 +28,11 @@ ELSE(WIN32) + IF(APPLE) + include(adm_osx.cmake) + ELSE(APPLE) +- include(adm_default.cmake) ++ IF(HAIKU) ++ include(adm_haiku.cmake) ++ ELSE(HAIKU) ++ include(adm_default.cmake) ++ ENDIF(HAIKU) + ENDIF(APPLE) + ENDIF(WIN32) + #----------------------------------- +diff --git a/avidemux/qt4/adm_haiku.cmake b/avidemux/qt4/adm_haiku.cmake +new file mode 100644 +index 0000000..8f25071 +--- /dev/null ++++ b/avidemux/qt4/adm_haiku.cmake +@@ -0,0 +1,19 @@ ++# ++# ++# ++MACRO(ADM_PREBUILD) ++ LIST(APPEND PlatformLibs "-lroot -lstdc++") ++ LIST(APPEND PlatformLibs "-lbe") ++ENDMACRO(ADM_PREBUILD) ++# ++# ++# ++MACRO(ADM_MAIN_APP) ++ ADD_EXECUTABLE(avidemux3_${QT_EXTENSION} ${ADM_EXE_SRCS}) ++ ++ENDMACRO(ADM_MAIN_APP) ++# ++ ++MACRO(ADM_POSTBUILD) ++ ADM_INSTALL_BIN(avidemux3_${QT_EXTENSION}) ++ENDMACRO(ADM_POSTBUILD) +diff --git a/avidemux_core/ADM_core/src/CMakeLists.txt b/avidemux_core/ADM_core/src/CMakeLists.txt +index 65eff7f..3786bdc 100644 +--- a/avidemux_core/ADM_core/src/CMakeLists.txt ++++ b/avidemux_core/ADM_core/src/CMakeLists.txt +@@ -47,6 +47,8 @@ IF (WIN32) + target_link_libraries(ADM_core6 imagehlp ws2_32) + ELSEIF (APPLE) + target_link_libraries(ADM_core6 "-framework Carbon") ++elseif (HAIKU) ++ target_link_libraries(ADM_core6) + elseif (UNIX) + target_link_libraries(ADM_core6 dl m) + ENDIF (WIN32) +diff --git a/avidemux_core/ADM_coreSocket/src/CMakeLists.txt b/avidemux_core/ADM_coreSocket/src/CMakeLists.txt +index 82cc397..d3b4a72 100644 +--- a/avidemux_core/ADM_coreSocket/src/CMakeLists.txt ++++ b/avidemux_core/ADM_coreSocket/src/CMakeLists.txt +@@ -13,4 +13,8 @@ if (WIN32) + target_link_libraries(ADM_coreSocket6 wsock32) + endif (WIN32) + ++if (HAIKU) ++ target_link_libraries(ADM_coreSocket6 network) ++endif (HAIKU) ++ + ADM_INSTALL_LIB(ADM_coreSocket6) +diff --git a/avidemux_core/ADM_coreSqlLight3/src/CMakeLists.txt b/avidemux_core/ADM_coreSqlLight3/src/CMakeLists.txt +index 8eb97c0..131bbc8 100644 +--- a/avidemux_core/ADM_coreSqlLight3/src/CMakeLists.txt ++++ b/avidemux_core/ADM_coreSqlLight3/src/CMakeLists.txt +@@ -12,7 +12,11 @@ IF (APPLE) + TARGET_LINK_LIBRARIES(ADM_coreSqlLight3 -Wl,-read_only_relocs,suppress) + ENDIF (APPLE) + +-IF (UNIX) ++IF (HAIKU) ++ TARGET_LINK_LIBRARIES(ADM_coreSqlLight3) ++ENDIF (UNIX) ++ ++IF (UNIX AND NOT HAIKU) + TARGET_LINK_LIBRARIES(ADM_coreSqlLight3 dl) + ENDIF (UNIX) + +diff --git a/avidemux_core/CMakeLists.txt b/avidemux_core/CMakeLists.txt +index b00ea2d..1fea9d6 100644 +--- a/avidemux_core/CMakeLists.txt ++++ b/avidemux_core/CMakeLists.txt +@@ -52,9 +52,9 @@ checkFtello() + MESSAGE(STATUS "Checking for sqlite") + MESSAGE(STATUS "*******************") + +-IF (UNIX AND NOT HAIKU) +- SET(SQLITE_REQUIRED_FLAGS "-ldl") +-ENDIF (UNIX) ++#IF (UNIX AND NOT HAIKU) ++# SET(SQLITE_REQUIRED_FLAGS "-ldl") ++#ENDIF (UNIX) + + FIND_HEADER_AND_LIB(SQLITE sqlite3.h sqlite3 sqlite3_close ${SQLITE_REQUIRED_FLAGS}) + PRINT_LIBRARY_INFO("SQLite" SQLITE_FOUND "${SQLITE_INCLUDE_DIR}" "${SQLITE_LIBRARY_DIR}" FATAL_ERROR) +-- +2.16.4 + + +From 4a36c099d15741b6fe33d68f516ac0fe955500ab Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Thu, 12 Jul 2018 00:31:10 +1000 +Subject: Fix build plugins + + +diff --git a/avidemux_plugins/ADM_demuxers/AvsProxy/CMakeLists.txt b/avidemux_plugins/ADM_demuxers/AvsProxy/CMakeLists.txt +index 91aab7d..8235f0e 100644 +--- a/avidemux_plugins/ADM_demuxers/AvsProxy/CMakeLists.txt ++++ b/avidemux_plugins/ADM_demuxers/AvsProxy/CMakeLists.txt +@@ -9,6 +9,9 @@ ADD_DEMUXER(ADM_dm_avsproxy ${ADM_avsproxy_SRCS}) + if(WIN32) + target_link_libraries(ADM_dm_avsproxy wsock32) + endif(WIN32) ++if(HAIKU) ++ target_link_libraries(ADM_dm_avsproxy network) ++endif(HAIKU) + INIT_DEMUXER(ADM_dm_avsproxy) + INSTALL_DEMUXER(ADM_dm_avsproxy) + +-- +2.16.4 + + +From 080395773ecb45e2ae546042e6b64db75229868d Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Thu, 12 Jul 2018 12:02:26 +1000 +Subject: Disable OpenGL + + +diff --git a/avidemux/qt4/ADM_userInterfaces/ADM_gui/T_preview.cpp b/avidemux/qt4/ADM_userInterfaces/ADM_gui/T_preview.cpp +index 62fa6ef..c5dbd26 100644 +--- a/avidemux/qt4/ADM_userInterfaces/ADM_gui/T_preview.cpp ++++ b/avidemux/qt4/ADM_userInterfaces/ADM_gui/T_preview.cpp +@@ -82,9 +82,6 @@ bool ADM_QPreviewCleanup(void) + * + * @param z + */ +-#ifdef __HAIKU__ +-ADM_Qvideo::ADM_Qvideo(QFrame *z) : QWidget(z) {} +-#else + ADM_Qvideo::ADM_Qvideo(QFrame *z) : QWidget(z) + { + useExternalRedraw(true); +@@ -104,8 +101,6 @@ ADM_Qvideo::ADM_Qvideo(QFrame *z) : QWidget(z) + hostFrame=z; + + } //{setAutoFillBackground(false);} +-#endif // Haiku +- + + ADM_Qvideo::~ADM_Qvideo() + { +@@ -216,8 +211,8 @@ void UI_getWindowInfo(void *draw, GUI_WindowInfo *xinfo) + xinfo->display=(void *)videoWindow->winId(); + xinfo->systemWindowId=videoWindow->winId(); + #elif defined(__HAIKU__) +- xinfo->display = (void*)videoWindow->winId(); +- xinfo->systemWindowId=videoWindow->winId(); ++ xinfo->display = NULL; ++ xinfo->systemWindowId = 0; + #elif defined(__APPLE__) + #if defined(ADM_CPU_X86_64) + xinfo->display = (void*)videoWindow->winId(); +-- +2.16.4 + + +From e696c749b902a056aca808dfdbe41e6a786e8f17 Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Thu, 12 Jul 2018 14:44:47 +1000 +Subject: Fix detect x264 + + +diff --git a/cmake/admCheckX265.cmake b/cmake/admCheckX265.cmake +index 2e3f4d9..f9a91e5 100644 +--- a/cmake/admCheckX265.cmake ++++ b/cmake/admCheckX265.cmake +@@ -19,7 +19,7 @@ MACRO(checkX265) + MESSAGE("WARNING: x265 core version is too old. At least version 9 is required.") + SET(X265_FOUND 0) + ELSE (x265_version LESS 9) +- IF(NOT WIN32) ++ IF(NOT WIN32 AND NOT HAIKU) + SET(DL dl) + ELSE(NOT WIN32) + IF(NOT MSVC) +-- +2.16.4 + + +From 688a4d827a121bb46392c5035a45c5e912baf897 Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Thu, 12 Jul 2018 21:36:53 +1000 +Subject: Add MediaKit audio driver + + +diff --git a/avidemux_plugins/ADM_audioDevices/CMakeLists.txt b/avidemux_plugins/ADM_audioDevices/CMakeLists.txt +index 0d7136b..f655b75 100644 +--- a/avidemux_plugins/ADM_audioDevices/CMakeLists.txt ++++ b/avidemux_plugins/ADM_audioDevices/CMakeLists.txt +@@ -35,3 +35,7 @@ endif(APPLE) + if(WIN32) + ADD_SUBDIRECTORY(Win32) + endif(WIN32) ++ ++if(HAIKU) ++ADD_SUBDIRECTORY(Haiku) ++endif(HAIKU) +diff --git a/avidemux_plugins/ADM_audioDevices/Haiku/ADM_deviceHaiku.cpp b/avidemux_plugins/ADM_audioDevices/Haiku/ADM_deviceHaiku.cpp +new file mode 100644 +index 0000000..aadca18 +--- /dev/null ++++ b/avidemux_plugins/ADM_audioDevices/Haiku/ADM_deviceHaiku.cpp +@@ -0,0 +1,76 @@ ++#include ++ ++#include "ADM_default.h" ++ ++#include "ADM_audiodevice.h" ++#include "ADM_audioDeviceInternal.h" ++ ++#include "ADM_deviceHaiku.h" ++ ++ADM_DECLARE_AUDIODEVICE(Haiku,haikuAudioDevice,1,0,0,"Haiku MediaKit audio device (c) 3dEyes"); ++ ++haikuAudioDevice::haikuAudioDevice() ++{ ++ active=false; ++} ++ ++bool ++haikuAudioDevice::localStop(void) ++{ ++ active=false; ++ player.stop(); ++ return true; ++} ++ ++bool ++haikuAudioDevice::localInit(void) ++{ ++ player.channels = (float)_channels; ++ player.sample_rate = (float)_frequency; ++ player.stop(); ++ active = player.start(); ++ return active; ++} ++ ++void ++haikuAudioDevice::sendData(void) ++{ ++ mutex.lock(); ++ uint32_t avail=wrIndex-rdIndex; ++ if(avail>sizeOf10ms) avail=sizeOf10ms; ++ mutex.unlock(); ++ player.write((unsigned char*)audioBuffer.at(rdIndex), avail); ++ mutex.lock(); ++ rdIndex+=avail; ++ mutex.unlock(); ++ return ; ++} ++ ++uint8_t ++haikuAudioDevice::setVolume(int volume) ++{ ++ player.setVolume(volume); ++ return 1; ++} ++ ++const CHANNEL_TYPE mono[MAX_CHANNELS]={ADM_CH_MONO}; ++const CHANNEL_TYPE stereo[MAX_CHANNELS]={ADM_CH_FRONT_LEFT,ADM_CH_FRONT_RIGHT}; ++const CHANNEL_TYPE fiveDotOne[MAX_CHANNELS]={ADM_CH_FRONT_LEFT,ADM_CH_FRONT_RIGHT,ADM_CH_FRONT_CENTER, ++ ADM_CH_REAR_LEFT,ADM_CH_REAR_RIGHT,ADM_CH_LFE}; ++ ++const CHANNEL_TYPE *haikuAudioDevice::getWantedChannelMapping(uint32_t channels) ++{ ++ switch(channels){ ++ case 1: ++ return mono; ++ break; ++ case 2: ++ return stereo; ++ break; ++ default: ++ return fiveDotOne; ++ break; ++ } ++ return NULL; ++} ++ +diff --git a/avidemux_plugins/ADM_audioDevices/Haiku/ADM_deviceHaiku.h b/avidemux_plugins/ADM_audioDevices/Haiku/ADM_deviceHaiku.h +new file mode 100644 +index 0000000..ce4cb64 +--- /dev/null ++++ b/avidemux_plugins/ADM_audioDevices/Haiku/ADM_deviceHaiku.h +@@ -0,0 +1,23 @@ ++#ifndef ADM_deviceHaiku_H ++#define ADM_deviceHaiku_H ++ ++#include "SndPlayer.h" ++ ++class haikuAudioDevice : public audioDeviceThreaded ++{ ++ protected : ++ bool active; ++ ++ SndPlayer player; ++ ++ virtual bool localInit(void); ++ virtual bool localStop(void); ++ virtual void sendData(void); ++ uint8_t setVolume(int volume); ++ virtual const CHANNEL_TYPE *getWantedChannelMapping(uint32_t channels); ++ public: ++ haikuAudioDevice(); ++}; ++ ++#endif ++ +diff --git a/avidemux_plugins/ADM_audioDevices/Haiku/CMakeLists.txt b/avidemux_plugins/ADM_audioDevices/Haiku/CMakeLists.txt +new file mode 100644 +index 0000000..26411b3 +--- /dev/null ++++ b/avidemux_plugins/ADM_audioDevices/Haiku/CMakeLists.txt +@@ -0,0 +1,11 @@ ++INCLUDE(av_plugin) ++ ++ ++SET(ADM_av_haiku_SRCS ADM_deviceHaiku.cpp RingBuffer.cpp SndPlayer.cpp) ++ ++ADD_AUDIO_DEVICE(ADM_av_haiku ${ADM_av_haiku_SRCS}) ++TARGET_LINK_LIBRARIES(ADM_av_haiku ADM_core6 ADM_coreAudio6 ADM_coreAudioDevice6 media be) ++SDLify(ADM_deviceHaiku.cpp) ++ ++INIT_AUDIO_DEVICE(ADM_av_haiku) ++INSTALL_AUDIO_DEVICE(ADM_av_haiku) +diff --git a/avidemux_plugins/ADM_audioDevices/Haiku/RingBuffer.cpp b/avidemux_plugins/ADM_audioDevices/Haiku/RingBuffer.cpp +new file mode 100644 +index 0000000..5ffb95a +--- /dev/null ++++ b/avidemux_plugins/ADM_audioDevices/Haiku/RingBuffer.cpp +@@ -0,0 +1,129 @@ ++#include ++#include ++#include ++ ++#include "RingBuffer.h" ++ ++RingBuffer::RingBuffer( int size ) ++{ ++ initialized = false; ++ Buffer = new unsigned char[size]; ++ if(Buffer!=NULL) { ++ memset( Buffer, 0, size ); ++ BufferSize = size; ++ } else { ++ BufferSize = 0; ++ } ++ reader = 0; ++ writer = 0; ++ writeBytesAvailable = size; ++ if((locker=create_sem(1,"locker")) >= B_OK) { ++ initialized = true; ++ } else { ++ if(Buffer!=NULL) { ++ delete[] Buffer; ++ } ++ } ++} ++ ++RingBuffer::~RingBuffer( ) ++{ ++ if(initialized) { ++ delete[] Buffer; ++ delete_sem(locker); ++ } ++} ++ ++bool ++RingBuffer::Empty( void ) ++{ ++ memset( Buffer, 0, BufferSize ); ++ reader = 0; ++ writer = 0; ++ writeBytesAvailable = BufferSize; ++ return true; ++} ++ ++int ++RingBuffer::Read( unsigned char *data, int size ) ++{ ++ acquire_sem(locker); ++ ++ if( data == 0 || size <= 0 || writeBytesAvailable == BufferSize ) { ++ release_sem(locker); ++ return 0; ++ } ++ ++ int readBytesAvailable = BufferSize - writeBytesAvailable; ++ ++ if( size > readBytesAvailable ) { ++ size = readBytesAvailable; ++ } ++ ++ if(size > BufferSize - reader) { ++ int len = BufferSize - reader; ++ memcpy(data, Buffer + reader, len); ++ memcpy(data + len, Buffer, size-len); ++ } else { ++ memcpy(data, Buffer + reader, size); ++ } ++ ++ reader = (reader + size) % BufferSize; ++ writeBytesAvailable += size; ++ ++ release_sem(locker); ++ return size; ++} ++ ++int ++RingBuffer::Write( unsigned char *data, int size ) ++{ ++ acquire_sem(locker); ++ ++ if( data == 0 || size <= 0 || writeBytesAvailable == 0 ) { ++ release_sem(locker); ++ return 0; ++ } ++ ++ if( size > writeBytesAvailable ) { ++ size = writeBytesAvailable; ++ } ++ ++ if(size > BufferSize - writer) { ++ int len = BufferSize - writer; ++ memcpy(Buffer + writer, data, len); ++ memcpy(Buffer, data+len, size-len); ++ } else { ++ memcpy(Buffer + writer, data, size); ++ } ++ ++ writer = (writer + size) % BufferSize; ++ writeBytesAvailable -= size; ++ ++ release_sem(locker); ++ return size; ++} ++ ++int ++RingBuffer::GetSize( void ) ++{ ++ return BufferSize; ++} ++ ++int ++RingBuffer::GetWriteAvailable( void ) ++{ ++ return writeBytesAvailable; ++} ++ ++int ++RingBuffer::GetReadAvailable( void ) ++{ ++ return BufferSize - writeBytesAvailable; ++} ++ ++status_t ++RingBuffer::InitCheck( void ) ++{ ++ return initialized?B_OK:B_ERROR; ++} +diff --git a/avidemux_plugins/ADM_audioDevices/Haiku/RingBuffer.h b/avidemux_plugins/ADM_audioDevices/Haiku/RingBuffer.h +new file mode 100644 +index 0000000..4715632 +--- /dev/null ++++ b/avidemux_plugins/ADM_audioDevices/Haiku/RingBuffer.h +@@ -0,0 +1,31 @@ ++#ifndef __RING_BUFFER_H__ ++#define __RING_BUFFER_H__ ++ ++#include ++ ++class RingBuffer { ++ ++public: ++ RingBuffer(int size); ++ ~RingBuffer(); ++ int Read( unsigned char* dataPtr, int numBytes ); ++ int Write( unsigned char *dataPtr, int numBytes ); ++ ++ bool Empty( void ); ++ int GetSize( ); ++ int GetWriteAvailable( ); ++ int GetReadAvailable( ); ++ status_t InitCheck( ); ++private: ++ unsigned char *Buffer; ++ int BufferSize; ++ int reader; ++ int writer; ++ int writeBytesAvailable; ++ ++ sem_id locker; ++ ++ bool initialized; ++}; ++ ++#endif +diff --git a/avidemux_plugins/ADM_audioDevices/Haiku/SndPlayer.cpp b/avidemux_plugins/ADM_audioDevices/Haiku/SndPlayer.cpp +new file mode 100644 +index 0000000..6d9370e +--- /dev/null ++++ b/avidemux_plugins/ADM_audioDevices/Haiku/SndPlayer.cpp +@@ -0,0 +1,111 @@ ++#include ++#include ++#include ++#include ++ ++#include "SndPlayer.h" ++ ++static void proc(void *cookie, void *buffer, size_t len, const media_raw_audio_format &format) ++{ ++ RingBuffer *ring = (RingBuffer*)cookie; ++ unsigned char* ptr = (unsigned char*)buffer; ++ ++ size_t readed = ring->Read(ptr,len); ++ ++ if(readed < len) ++ memset(ptr+readed, 0, len - readed); ++} ++ ++SndPlayer::SndPlayer() ++{ ++ channels = sample_rate = delay = 0; ++ player = NULL; ++ _isOK = true; ++} ++ ++bool SndPlayer::start() ++{ ++ size_t gSoundBufferSize = 8192 * sizeof(short); ++ ++ media_raw_audio_format form = { ++ sample_rate, ++ channels, ++ media_raw_audio_format::B_AUDIO_SHORT, ++ B_MEDIA_LITTLE_ENDIAN, ++ gSoundBufferSize ++ }; ++ ++ ring = new RingBuffer(gSoundBufferSize * 3); ++ if(ring->InitCheck() != B_OK) { ++ delete ring; ring = 0; ++ return false; ++ } ++ ++ player = new BSoundPlayer(&form, "Avidemux", proc, NULL, (void*)ring); ++ ++ if(player->InitCheck() != B_OK) { ++ delete player; ++ player = NULL; ++ return false; ++ } ++ ++ player->Start(); ++ player->SetHasData(true); ++ ++ _isOK = true; ++ ++ return player != NULL; ++} ++void SndPlayer::stop() ++{ ++ if ( player ) ++ { ++ if(player) { ++ player->Stop(); ++ delete player; ++ delete ring; ++ } ++ ++ player = NULL; ++ ring = NULL; ++ } ++} ++ ++void SndPlayer::flush() ++{ ++ ring->Empty(); ++} ++ ++void SndPlayer::setVolume(int volume) ++{ ++ if (player!=NULL) { ++ player->SetVolume(volume / 100.0); ++ } ++} ++ ++double SndPlayer::getLatency() ++{ ++ double lat = player->Latency() / (ring->GetSize()*4.0); ++ ++ return lat; ++} ++ ++bool SndPlayer::write( unsigned char *src_ptr, size_t size) ++{ ++ while ( size > 0 && size % 4 ) ++ size--; ++ if ( size <= 0 ) ++ return false; ++ ++ size_t len = size; ++ ++ for(;;) { ++ size_t len2 = ring->Write(src_ptr, len); ++ if (len2 == len)break; ++ len -= len2; ++ src_ptr += len2; ++ snooze(100); ++ } ++ ++ return true; ++} +diff --git a/avidemux_plugins/ADM_audioDevices/Haiku/SndPlayer.h b/avidemux_plugins/ADM_audioDevices/Haiku/SndPlayer.h +new file mode 100644 +index 0000000..6a6efde +--- /dev/null ++++ b/avidemux_plugins/ADM_audioDevices/Haiku/SndPlayer.h +@@ -0,0 +1,36 @@ ++#ifndef SNDPLAY_H ++#define SNDPLAY_H ++ ++#include ++ ++#include "RingBuffer.h" ++ ++class SndPlayer ++{ ++public: ++ SndPlayer(); ++ inline ~SndPlayer() { stop();} ++ inline bool isOK() const {return _isOK;} ++ inline bool isOpen() const {return player!=NULL;} ++ ++ bool start(); ++ void stop(); ++ ++ double getLatency(); ++ ++ bool write( unsigned char *src_ptr, size_t size); ++ ++ void flush(); ++ void setVolume(int volume); ++ ++ double delay; ++ uchar channels; ++ float sample_rate; ++ ++private: ++ bool _isOK; ++ BSoundPlayer *player; ++ RingBuffer *ring; ++}; ++ ++#endif +-- +2.16.4 + + +From 61a661adc6567d47bf4f0839755718622429164e Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Thu, 12 Jul 2018 21:37:17 +1000 +Subject: Fix path for settings dir + + +diff --git a/avidemux_core/ADM_core/src/ADM_folder_linux.cpp b/avidemux_core/ADM_core/src/ADM_folder_linux.cpp +index 3625d55..ee6838a 100644 +--- a/avidemux_core/ADM_core/src/ADM_folder_linux.cpp ++++ b/avidemux_core/ADM_core/src/ADM_folder_linux.cpp +@@ -146,9 +146,11 @@ void ADM_initBaseDir(int argc, char *argv[]) + } + strcpy(ADM_basedir, homeEnv); + AddSeparator(ADM_basedir); +- ++#ifdef __HAIKU__ ++ const char *ADM_DIR_NAME = "config/settings/avidemux6"; ++#else + const char *ADM_DIR_NAME = ".avidemux6"; +- ++#endif + strcat(ADM_basedir, ADM_DIR_NAME); + strcat(ADM_basedir, ADM_SEPARATOR); + +-- +2.16.4 +