Вверх ↑
Этот топик читают: Гость
Ответов: 1304
Рейтинг: 405
#16: 2010-01-05 01:35:17 ЛС | профиль | цитата
Artem_user, по всей видимости bass.dll действительно виновата. Решение нашлось пока одно, запустить перебор списка в паралельном потоке.

карма: 3

1
файлы: 1consecutive_viewing_of_files.sha [2.7KB] [133]
Голосовали:Artem_user
Ответов: 133
Рейтинг: 3
#17: 2010-01-05 01:40:28 ЛС | профиль | цитата
Пробую........
------------ Дoбавленo в 01.48:
Работает!
Спасибо большое !!!
карма: 0

0
Разработчик
Ответов: 4698
Рейтинг: 426
#18: 2010-01-05 17:10:47 ЛС | профиль | цитата
Хе, советнички, wiki читать надо! BASS_StreamCreateFile - смотрим примечания
карма: 10
1
Голосовали:Artem_user
Ответов: 133
Рейтинг: 3
#19: 2010-01-05 19:07:28 ЛС | профиль | цитата
Assasin, прочитал Ваш совет, сделал как в справке- все работает.
Сделал так:

Make(delphi)
ver(4.03 build 181)
Add(MainForm,2953706,30,1347)
{
Width=751
Height=594
Color=-16777203
Caption="1000V media player"
Icon=[ZIPBE25000078DAED59096C1465145EE49F9916CA2194B31C05A914C452B90594A3504E01299672B68AC016C4002A8941518209180E1BE281800A8A1115D11803211C42141503882296265E200851146F85D9D9E7FBFE7FA73BDBDD7667DB2531B23F79CCCC9BFD1FDFFFFFEF7DEFBDC1E3A9C57FB2B33DFC77BA676B86C7D3D4E3F164B2B0CA53E451FAC4488CC4488CC4488CFFD3B85C6C902DA6E33E5C92E47B535E9302CF91AE465CC5FEF722C9656F109B8DCF2DFE305BFF71FC55D9095D47144CDEF8E2371D7E6356E143A64B718DDFEB4EE7167F51478DE676D14230EC1CAD539BBAA25C6675D2E4F5C81D6ACEFBB71BD4969FBF9A6AD0B6613AA5F3BD3D774785B9ABFAEAF4619E21EF4F4D37E8C20C833A3510F4F4AD7A1CFCC7A0316D359A789D46BFCF34E85240FFE6089D6A7B6AD3E705067DCD182FDC6550B7C6829A1882D25304A5F2B57F7321D7F2528E4E9A27887FFB7035F7C4A4E0DC03E30CA9C37A1FEEAE51F324413FCF30E2863FA5B690365BD511B463945E8EFFE2DDC1F87DA29F4E69FCFE5C9141A9BAA0F50374690B7804E3FF625228FE02DE9329191A7D3A31881FF3F1DBA76E09DF7B6BFF3AF26D29AE16FEC91D34A91BD042D0C8D65A44FCC05DE71A41F775D5A8BE10D20F3EC937A82EEBBA5C2BA85F33417FCF0EE2DF3050A7CD8375FAAE3088FF335ECB125E2FCE306CBF1FCA24FFC5B3642EEF1B13FF007FE78682EEE11868A00969DF89DF392FAF9D267D65DAF51AFD39CBA01EA982F2799F4FB35FC3A756F4D1CBF163EF0BF977BB6ED3CBF1CFE438821F62BD917CC6B77634F97F3A45E6A2D6AEF0E31EF69F1BA4D3F32C7BC7E8F21DFC16BABF6687E23F5EA0F4A5930DFA669ABAFFBE48FD0631FDF2105DFA38F4B660CED9C2A06EEB509DCEDF5939A7FAB63F4856D90132E7D471C53F66BCF8D3C985DE08FC18EDBDFDEFCD4926EBD8DB64ED5AE5CAFFA38B33FF1A8E7CE7CCBF11F079AB813FF0CE5CD084FCE7CBC8B7716A94FD4F92FEBA674C900FC0A1AB99B3E11FF013DCDB7270BC41DF4E53BA352C9B383EF10C3BE049E8C1F125CC55886D1BD333CCF51F8C8F31FF2EEBA6E27969D7A8FC73EF8D9AF4F9177394CF23D6B0A6D787A9589CC7B13D9F7F83BCB66FAC7A3F2353A3216982EA3117EDE6182A9BACF45823386C2073D91A5EC7B25EBAE4CC8FF262AF1F7C1BA690FF5C2999F353A3E29F7383467A2D2139AE227EC4E6C7130C99736CFCD877D8C9E135409CF85F19AA30DFCF5CDB93392AAB91A876FD63ED2921EBC81B322E2AC33F95B9AE29E72F6F678D66B338F103C74DCC79E0BD4379A1F8616B3A7364F7D450FCC8E5C8D52FB07F75A82768E5CD7AF5EB4FE621AB742FF9DE5A5229FFD7E3FC0B7F40AE018F57C48FB347ED03DE037EE8E04B9BD9DF90331EE9A185E087EDB97C9EED394F25737E3B5358C3FAF98134CE0BA7C95732226CFF91B7BAF2F91E0BC41BCE1CCFA8B9901B706F0BFC026780FB6C3E8FC12DB93EE3BD45DE45BC432FE3D6ABFC0DCFA8FDDCF28FB9B019F9D6E406A56438F9D64F9262ED5A4DFEDF7E247371460DF833297EFC19611DA81DFC968FAC839BC87A6FA312C66DED7CBC5CCC47B3C2F0C7A57FAC2EFE0A621DDF49BE670B62E8BF22E3874F806F4C077EE406F0BCCA1F415BD05DF246C7E646E0E3FE5347D976B2ABFCBB8463AF8150752D3803FEBB6FAC4E2D9305B5604E1ADD46A33FB8562BE5FA38A3BEA034D6836F50F7FCC0B8FB34553AC42A6A65D8FE85EBBE465C63D7655E90B58E4BFFB1F7C52ADB4FBE75F9AEEB872D4314CFD8CF7D19D3C22C8D7E651C0D995F5097A14F1BC56BC13E83CFB1EEE5BD75EAC86BFA87CF6A427BD507C1367809F35AF0BAD6F6D763AF1F56E590FFCCF14A6BB868F8710E4F067A8C4CEEF596F6D464BF853C0C9F1B1BE819C0B9B9AD34697351B6CA03B08DBC8CF5CECF52F9CB157E87C83338B1BBCAFAC7F9FDA1227EF4A78FF552FB863DC45AC6A56BB2EEC77CD406F338670373EF2642EA6671DE1BC66BF9728A217B04D414E050D83D9A5F8DEF0F2BFA73ED7032621C38EBB7C5DD34995F9DF8517FA197844FA0E743FDFECE489D1AB14F20DFC2370E733E43AD011DF27763F677F4F238AB7629CAA72E077C6D419656F5FE1747FEFE609D7C57727F55FE63F7D7C8A74E1BC85FAFE5EAB26FB4F5E8E7B7E6AA1EC5D6216FBDCA3A3B760FF19E97EFB757AD51E6E4187948625D3988FC674F84C5C115E1FF2BF4FDCD3ABC8D6BE9EE571E7FC56F5035E85F9CF925BEFD5765F543923BBF288ED17F62C5EF75833FF4BB634CF8BDF1C39FF81F84C4488CC4488CAB73901C17AC9A5E95B5ABEF5AD37DFB17C23CC43D]
Point(Handle)
link(onCreate,4252681:doInit,[(78,1367)(78,1333)])
}
Add(BASS_Init,4252681,93,1327)
{
link(onInit,3098335:doEvent1,[(154,1333)(154,1348)])
link(onError,11232751:doMessage,[(140,1340)(140,1422)])
link(Handle,2953706:Handle,[(113,1315)(75,1315)(75,1391)(36,1391)])
}
Add(Message,11232751,155,1416)
{
Message="Error BASS initialization"
Caption="Error"
Icon=1
}
Add(PaintBox,8758719,120,420)
{
Left=195
Top=245
Width=500
Height=150
link(onBeforeDraw,12050567:doEvent,[(191,426)(191,496)])
}
Add(BASS_ChannelVisibleSpectrum,5631139,314,448)
{
SoundStream="MainSound"
Pen=16711680
Mode=1
DrawPeak=1
link(WindowsHandle,1470837:Var3,[(320,436)])
}
Add(Timer,5820169,113,517)
{
Interval=50
link(onTimer,8758719:doRefresh,[(157,523)(157,475)(108,475)(108,426)])
}
Add(BitBtn,11967952,161,1232)
{
Left=670
Top=90
Width=30
Height=26
Color=16777215
Caption=""
Bitmap=[ZIP660C000078DAE556DB6F945510FFED95DDEEA52D5B5AA4080462E293414D7C52A380B42CDB764B5BEE123551FF0195282112856D69E976B7DDDE29A5C182603081F8424C78305409DA07898440504B040A4DB7F7BD76B7EB6FCEC7AE7D3126F0E8974CCE39DFCC39BF993973666643C50776A8EF15D2F3A455A415241DD6A8FFEB1FF3177FED15FF2F6ADCA0475F3970BAD68C86B23C1CD960C0608D0E5F55032D5B0CF097EBD15DE380EF0DCA5759D1F416D0B5CDAEC680DB88E05693A2639B3579E1895CC306A0C39B87FA8D94AF02CEEE35A3C32DFF0C3846BCAE5A17BAB8A7AB0C682A33A3B5D286BE4ACE297FC8ED423FF1BBB7023D1ECA70DF09AF36EFABD2E6C26FDD04F4D28653757AB49769BCC11D4684E4DC5DCBD0407E887B83E4757ACD08780CA827969C73AA86BC2A339AB7080FB81AAC4526338AF18928A2F10CE6D3194462194C4CC531175D50EBEC184F6A7CA1F0640C93D3899CFCF5EE7711AA2B44A852870EDAD35E6DC651FACA5FE9401F75161B05D34F3A421F9D3B544DDC146901E9441CF1B95935CF52321AD1E6E97F64847232A97935FE71FE001AAB8BE077EBE87F3D425E93B2B7C96D4207ED6DA30F021C4FBFE3C0C93D369CABDF8B38759E9C9E413A2336CDA3BDB30BEB5F7A193A831176673E2C793638F20BD48B7961FD8B38ECABC7D4CCAC92178AC4E2B87E6A3F0E6EB2A3B15C8736DE5790FE6EF72E410BF5E8AF633C78F5A8E77D0488DF4C3F9C39548B782AA3748E45E672768CFCF13B562C2F81C39607A7DD069BD58202A703DF5DBC9093892EF2CDCDB39FE1B0A7109DDBACE8600C041853AD9506B4D1AF215233E3B6B1C286819D169CDDA3C3F7FE3DF4610649D2F45C4A8D31DE6398F70B9861731663C5B3CF2932590AF0C3D0B092C9523491C138EFFAE6E94FF065791EEDA26D1E2DB6BBB759D0BF8D6BDADFE436C3E776A293F77C827A7DDFE0256E32774F99F9A466FBEC0C2C46035CF94E949614A3C4B51405B4FBDA8F438A97BDEF8564428D7F9EFF14BE728BB25570BA89DB26767B74E8AAD4DEB2BAEB2A4DA78BBE1DC82C889F19B773736A4CA5520887C370B95C70381C282E2EC6D2A54B515454842B57AE20128928B9743AADC6F9F9790C9D3D84AE4D7A0CF0CCA64A23DF9911DDDEFFC6CD62261209358E8F8FC36432294CC15BB56A158C46232E5DBA94C39271616141E9F9A4B872462C16CBD9313636A67057AF5E8D828202D8ED76AC5CB912C3C3C30A5364A2D1A89297F16970C5D6C9C949DCB87103BB77EF56B8F2E5E5E5A1B0B050CD878686947DC96432E767A127C59573B2D877EFDEC5AD5BB7303232823B77EEE0EAD5ABB876ED1A464747F1E0C1831C96D0F4F4B4DAF334B8D9BB1592F5EDDBB7958D56AB55D1E5CB97958D62AF8C333333399B9F1457CE92FD535353B9F9DAB56BE1743AB16EDD3A75B7F265E3291B874F1BCF8BE34A70055FBED2D2521553125B369B4DF97B315ED637FF86DBC9B72C39ACA59C6BE6CE531EAD5E9DAF7F1F997842E565C9B5C9543A97770B5D455856B25C51C9335A47B3382747B92F979F4FEFC717EE7C1CAF655D668EEC679D6F754BAE048E5518E0636EEEA9D6E1CC4EE66FE6B10BCD1FD25ECD4EC915595BE4AEEFDFBF8F356BD6C062B1A8FC216F577C21B1947DBB59F9DFCE7C84CF375BD1BA95E76ED6702547B7B00636559B50EF61EF401D82FC7790BDC5370D7BB96F02E97844D5C3F8EC1432C9586E1D990A63263CF6B856A6301F9DD5E62AB726D45C64EF9CFB98FE7522443F76D2CE9375561C63DD69A04FFD157AB4D0F7DDD506F4D0F741F604971AB723F3E80A1EFD750FE1D1878A66C31398190FE3FA2FC36A3D76EF3E229353F8F5E75F94DC9FB76E2B9A78F8080F46EEAAF1A7601DFC553615433D8CA113354B5883D89FD498709CF68A0F3AA8470F756AA4BD075E077CDE520C48EFC27AD5227D92DC3D65067799D1CB38917EE9E86B8C09F634DFBE97AFE44ED6EA542DEFAE78BC67DFB3F0714F07E3A883FC768F1E01F6636DE55ABFD4CBB18FE77CBDDD89C19D2EC6F712346D92BE0F8C09F6266FB227D857A0FC25F55BFEF9A9EBC02E1B5A88237CA9E1C293B731F876BE1A8F94E9D04CBEE829F528B84587569E2DF7DDEB35E238FB9F10B103D227B2168B7E223BB8C78100CFEF14FD456F8F366FA5ECC9ED16F8A95B1F7D36B0C3AAF8F2BFBF6E097CAF6ABD9CDC6117E3557AC03E2F31DD7A34F3BD06E96F154F6E8DFC5B6987877EF068B862F3F13A1BDFB50921C67D3375E8DB6E47803E0B6CD1FAC3C68DDA5C648427712373A156DA23355DFACCDE4AADF76D2CD3E36FAEEE8852]
link(onClick,2534829:doMessage,[])
}
Add(Message,2534829,238,1232)
{
Message="1000V media player-программа для прослушивания
аудиофайлов. В программе используется кодек BASS
Программа проигрывает файлы с Вашего комьютера
и с Интернет.
Программа собрана Artem с помощью HiAsm
(http://www.hiasm.com/_index.html)"
Caption="Info"
}
Add(BitBtn,11865194,105,574)
{
Left=5
Top=420
Width=60
Color=65280
Caption="Open file"
link(onClick,15104708:doExecute,[])
}
Add(BitBtn,13458823,14,266)
{
Left=260
Top=160
Width=48
Height=28
Color=8421504
Caption=""
Bitmap=[ZIPF60F000078DA73F2FDC6CF00066640AC01C406402C03C48C0C1260F103507964D0300A4601CDC07F06065C68B0B967401C468C7BE8E93092DC430787A159A422F376605D85E91E381A1087E1710FA9AEA28AC308BA87CEC145BC7B48721B9DDD43D04923337C064FFA193CF96B90943F035544935D5F0C92FA74F0D4EFA3EDB1C1D05E1D05A3003F0000133526CA]
link(onClick,16324067:doEvent1,[])
}
Add(BitBtn,16664371,32,215)
{
Left=335
Top=160
Width=48
Height=28
Color=8421504
Caption=""
Bitmap=[ZIPF60F000078DA73F2FDC6CF00066640AC01C406402C03C48C0C1260F1035079647067148C02AA829966FA7443A3EE19750F9DDDD3C0F09F8A68D43DA3EE1975CFA87B46DD432DF78CD65FA3EE19D2EE1905A380780000F99E99D2]
link(onClick,12108558:doEvent1,[(116,221)(116,251)])
}
Add(DropFile,14973487,105,616)
{
link(onDropFile,12669718:doEvent2,[(198,622)(198,587)])
}
Add(Hub,12669718,238,574)
{
InCount=3
OutCount=1
link(onEvent1,14738624:doAdd,[(259,580)(259,601)])
}
Add(Label,2006297,419,198)
{
Left=445
Top=170
Width=45
Height=17
Color=-16777203
Font=[MS Sans Serif,8,1,0,1]
Caption="Volume"
}
Add(Label,5758854,199,816)
{
Left=20
Top=240
Width=35
Height=12
Color=-16777203
Caption="80Hz"
}
Add(ScrollBarEx,5404405,198,858)
{
Left=20
Top=265
Width=15
Height=100
Color=8388736
LightColor=16711935
DarkColor=16711935
FaceColor=0
ArrowColor=16711935
Max=15
Min=-15
Kind=1
link(onPosition,7027187:doEvent1,[(235,864)(235,863)])
}
Add(Hub,7027187,240,857)
{
OutCount=3
link(onEvent1,11230734:doSet,[(270,863)(270,835)])
link(onEvent2,13126728:doText,[])
link(onEvent3,12180348:doSet,[(270,877)(270,884)])
}
Add(BASS_ChannelFX_Eq,11230734,294,829)
{
Channel="MainSound"
Bandwidth=16
}
Add(Label,13126728,335,864)
{
Left=20
Top=375
Width=15
Height=17
Color=-16777203
Caption="0"
}
Add(Label,451566,123,1021)
{
Left=115
Top=240
Width=45
Height=12
Color=-16777203
Caption="1000Hz"
}
Add(ScrollBarEx,13212864,123,1063)
{
Left=125
Top=265
Width=15
Height=100
Color=8388736
LightColor=16711935
DarkColor=16711935
FaceColor=0
ArrowColor=16711935
Max=15
Min=-15
Kind=1
link(onPosition,3954111:doEvent1,[])
}
Add(Hub,3954111,179,1063)
{
OutCount=3
link(onEvent1,12129067:doSet,[(202,1069)(202,1033)])
link(onEvent2,12597389:doText,[(246,1076)(246,1068)])
link(onEvent3,4872676:doSet,[(214,1083)(214,1096)])
}
Add(BASS_ChannelFX_Eq,12129067,211,1027)
{
Channel="MainSound"
Center=1000
Bandwidth=16
}
Add(Label,12597389,283,1062)
{
Left=125
Top=375
Width=15
Height=17
Color=-16777203
Caption="0"
}
Add(Label,12713548,126,1107)
{
Left=150
Top=260
Width=28
Height=20
Color=-16777203
Font=[MS Sans Serif,10,1,0,1]
Caption="Min"
}
Add(Label,1730784,178,1107)
{
Left=150
Top=355
Width=32
Height=20
Color=-16777203
Font=[MS Sans Serif,10,1,0,1]
Caption="Max"
}
Add(Label,5163481,163,913)
{
Left=65
Top=240
Width=40
Height=12
Color=-16777203
Caption="500Hz"
}
Add(ScrollBarEx,14691260,162,951)
{
Left=70
Top=265
Width=15
Height=100
Color=8388736
LightColor=16711935
DarkColor=16711935
FaceColor=0
ArrowColor=16711935
Max=15
Min=-15
Kind=1
link(onPosition,3147679:doEvent1,[])
}
Add(Hub,3147679,210,951)
{
OutCount=3
link(onEvent1,12574546:doSet,[(242,957)(242,933)])
link(onEvent2,320291:doText,[(264,964)(264,963)])
link(onEvent3,347354:doSet,[(252,971)(252,996)])
}
Add(BASS_ChannelFX_Eq,12574546,260,927)
{
Channel="MainSound"
Center=500
Bandwidth=16
}
Add(Label,320291,305,957)
{
Left=70
Top=375
Width=15
Height=17
Color=-16777203
Caption="0"
}
Add(Math,15138911,504,192)
{
OpType=3
Op2=100
link(onResult,15216955:doEvent1,[])
}
Add(Hub,15216955,546,192)
{
OutCount=3
link(onEvent1,4641453:doText,[(584,198)(584,170)])
link(onEvent2,3018529:doAttribute,[(600,205)(600,217)])
link(onEvent3,14304365:doAttribute,[(573,212)(573,233)])
}
Add(Label,4641453,601,164)
{
Left=695
Top=170
Width=20
Height=17
Color=-16777203
Caption="1"
}
Add(BASS_ChannelAttribute,3018529,644,211)
{
Channel="MainSound"
Attrib=1
}
Add(BASS_StreamCreateURL,12045247,182,287)
{
Name="InetStream"
link(onCreate,3479084:doPlay,[])
link(URL,3496098:Var3,[(188,275)(454,275)])
}
Add(BASS_ChannelAttribute,14304365,587,227)
{
Channel="InetStream"
Attrib=1
}
Add(Hub,16324067,56,266)
{
OutCount=3
link(onEvent1,12045247:doCreate,[(119,272)(119,293)])
link(onEvent2,12127398:doEvent1,[(83,279)(83,720)])
link(onEvent3,8014491:doWork2,[(93,286)(93,769)])
}
Add(BASS_ChannelPlay,3479084,224,287)
{
Channel="InetStream"
link(onPlay,4406639:doWork2,[(268,293)(268,340)(155,340)(155,391)])
}
Add(Hub,12108558,126,245)
{
link(onEvent1,1147551:doDestroy,[(359,251)(359,818)])
link(onEvent2,12045247:doDestroy,[(161,258)(161,300)])
}
Add(BASS_ChannelFX_Eq,12180348,287,878)
{
Channel="InetStream"
Bandwidth=16
}
Add(BASS_ChannelFX_Eq,347354,260,990)
{
Channel="InetStream"
Center=500
Bandwidth=16
}
Add(BASS_ChannelFX_Eq,4872676,234,1090)
{
Channel="InetStream"
Center=1000
Bandwidth=16
}
Add(ODialog,15104708,154,574)
{
Title="Open File"
FileName=""
Select=1
link(onExecute,12669718:doEvent1,[])
}
Add(Browse,5540297,161,630)
{
BrowseObj=3
link(onBrowse,12669718:doEvent3,[(229,636)(229,594)])
}
Add(BitBtn,3196937,105,651)
{
Left=5
Top=450
Width=60
Color=65280
Caption="Browse"
link(onClick,5540297:doBrowse,[(149,657)(149,636)])
}
Add(BASS_ChannelVisibleSpectrum,11969606,301,511)
{
SoundStream="InetStream"
Pen=16711680
Mode=1
DrawPeak=1
link(WindowsHandle,1470837:Var2,[(307,475)(223,475)])
}
Add(FileAttributes,257569,526,1001)
{
Point(FileSize)
link(onRead,3265491:doString,[(569,1007)(569,1119)])
}
Add(FormatStr,3265491,582,1113)
{
DataCount=3
Mask="
%3"
link(onFString,512619:doOperation,[(633,1119)(633,1035)])
link(Str3,257569:FileSize,[(602,1093)(553,1093)])
}
Add(Math,8983054,728,1029)
{
OpType=3
Op2=1024
link(onResult,14476757:doText,[(774,1035)(774,1047)])
}
Add(Math,512619,680,1029)
{
OpType=2
Op2=8
link(onResult,8983054:doOperation,[])
}
Add(Edit,14476757,782,1041)
{
Left=130
Top=100
Width=120
Height=21
Color=0
Font=[MS Sans Serif,8,0,8388863,1]
Text=""
}
Add(Edit,5901030,657,985)
{
Left=130
Top=65
Width=120
Height=21
Color=0
Font=[MS Sans Serif,8,0,8388863,1]
Text=""
}
Add(Math,15697503,749,1113)
{
OpType=3
link(onResult,8317669:doText,[(796,1119)(796,1103)])
link(Op1,14476757:Text,[(755,1095)(788,1095)])
link(Op2,5901030:Text,[(762,1079)(663,1079)])
}
Add(Edit,8317669,817,1097)
{
Left=440
Top=65
Width=120
Height=21
Color=0
Font=[MS Sans Serif,8,0,8388863,1]
Text=""
}
Add(Timer,10044967,679,1113)
{
link(onTimer,15697503:doOperation,[])
}
Add(Label,10786214,673,946)
{
Left=15
Top=65
Width=87
Height=17
Color=-16777203
Font=[MS Sans Serif,9,1,0,1]
Caption="Длина,секунд"
}
Add(Label,14260004,827,1043)
{
Left=15
Top=105
Width=80
Height=17
Color=-16777203
Font=[MS Sans Serif,9,1,0,1]
Caption="Размер,кбит"
}
Add(Label,12776112,863,1094)
{
Left=325
Top=70
Width=99
Height=17
Color=-16777203
Font=[MS Sans Serif,9,1,0,1]
Caption="Битрейт(bitrate)"
}
Add(ScrollBarEx,3282786,457,193)
{
Left=505
Top=170
Width=170
Color=8388736
LightColor=16777215
DarkColor=16777215
FaceColor=0
ArrowColor=65280
Position=100
Point(doMax)
link(onPosition,15138911:doOperation,[(497,199)(497,198)])
}
Add(IndexToChanel,12050567,237,490)
{
Point(Index)
link(onEvent1,5631139:doDraw,[(277,496)(277,454)])
link(onEvent2,11969606:doDraw,[(275,503)(275,517)])
link(Index,501698:Value,[])
}
Add(GetDataEx,1470837,217,431)
{
Angle=3
link(Data,8758719:Bitmap,[(173,436)(173,464)(126,464)])
}
Add(Memory,501698,237,378)
{
}
Add(Hub,3098335,162,1342)
{
OutCount=6
link(onEvent1,8570657:doLoad,[(284,1348)(284,1318)])
link(onEvent2,10791262:doLoad,[(311,1355)(311,1367)])
link(onEvent3,2146342:doLoad,[(296,1362)(296,1419)])
link(onEvent4,8332581:doLoad,[(265,1369)(265,1482)])
link(onEvent5,9912701:doLoad,[(217,1376)(217,1532)])
link(onEvent6,1361511:doLoad,[(205,1383)(205,1583)])
}
Add(BASS_dll,8570657,393,1312)
{
link(NameDll,6663329:Value,[(399,1305)(431,1305)])
}
Add(BASS_dll,8332581,546,1476)
{
link(NameDll,5740465:Value,[(552,1454)(594,1454)])
}
Add(BASS_dll,2146342,497,1413)
{
link(NameDll,10559211:Value,[(503,1401)(518,1401)])
}
Add(BASS_dll,10791262,448,1361)
{
link(NameDll,13409555:Value,[(454,1351)(475,1351)])
}
Add(Memory,6663329,425,1260)
{
Default=String(bass_aac.dll)
}
Add(Memory,13409555,469,1308)
{
Default=String(bass_ac3.dll)
}
Add(Memory,5740465,588,1414)
{
Default=String(basswma.dll)
}
Add(Memory,4616829,661,1453)
{
Default=String(basswv.dll)
}
Add(Memory,10559211,512,1354)
{
Default=String(basscd.dll)
}
Add(BASS_dll,9912701,637,1526)
{
link(NameDll,4616829:Value,[(643,1506)(667,1506)])
}
Add(BASS_dll,1361511,704,1577)
{
link(NameDll,910421:Value,[(710,1564)(718,1564)])
}
Add(Memory,910421,712,1521)
{
Default=String(bassflac.dll)
}
Add(Hub,12127398,196,714)
{
InCount=2
OutCount=1
link(onEvent1,2028006:doNext,[])
}
Add(Counter,2028006,231,714)
{
Min=-1
Max=1000
Default=-1
Point(doValue)
link(onNext,13600621:doEvent1,[])
}
Add(Hub,13600621,273,714)
{
link(onEvent1,14738624:doSelect,[(294,720)(294,643)])
link(onEvent2,8101473:doWork2,[])
}
Add(ListBox,14738624,308,595)
{
Left=75
Top=415
Width=645
Height=125
Color=0
Font=[MS Sans Serif,8,0,16711680,1]
Point(doSelect)
link(onClick,11293159:doEvent1,[])
}
Add(ArrayRW,7455926,315,721)
{
link(onRead,1372390:doEvent1,[])
link(Array,14738624:Array,[(321,684)(328,684)])
}
Add(Hub,11293159,378,602)
{
link(onEvent1,2028006:doValue,[(413,608)(413,704)(219,704)(219,741)])
link(onEvent2,8101473:doWork1,[(402,615)(402,694)(305,694)])
}
Add(Hub,1372390,371,721)
{
link(onEvent1,8243139:doText,[(424,727)(424,713)])
link(onEvent2,8014491:doWork1,[(402,734)])
}
Add(BASS_StreamCreateFile,1147551,413,805)
{
Name="MainSound"
link(onCreate,3651364:doPlay,[(489,811)(489,769)])
link(onEndPlay,9324229:doTimer,[(450,818)(450,846)])
link(FileName,3496098:Var1,[(419,752)])
}
Add(BASS_ChannelPlay,3651364,532,763)
{
Channel="MainSound"
link(onPlay,6034887:doData,[(618,769)(618,354)])
}
Add(HubEx,8101473,301,721)
{
link(onEvent,7455926:doRead,[])
}
Add(DoData,6034887,679,348)
{
link(onEventData,8780488:doEvent1,[(740,354)(740,363)])
link(Data,6457552:Length,[(685,332)(746,332)(746,493)(692,493)])
}
Add(Hub,8780488,763,357)
{
OutCount=3
link(onEvent1,10441699:doMax,[(855,363)(855,355)])
link(onEvent2,5901030:doText,[(815,370)(815,694)(640,694)(640,991)])
link(onEvent3,4406639:doWork1,[(793,377)(793,395)(177,395)(177,384)])
}
Add(ScrollBarEx,10441699,863,342)
{
Left=10
Top=210
Width=710
Height=10
Color=8388736
LightColor=16777215
DarkColor=16777215
FaceColor=0
ArrowColor=16711935
Max=999999999
ScrollMode=1
Point(doMax)
link(onPosition,6457552:doPosition,[(907,348)(907,412)(642,412)(642,431)])
}
Add(DoData,11518414,798,488)
{
link(onEventData,10441699:doPosition,[(848,494)(848,348)])
link(Data,6457552:CurPosition,[(804,475)(685,475)])
}
Add(Timer,15591768,742,530)
{
link(onTimer,11518414:doData,[(786,536)(786,494)])
}
Add(BASS_ChannelPosition,6457552,679,425)
{
Channel="MainSound"
Mode=2
}
Add(BitBtn,2621935,233,644)
{
Left=5
Top=510
Width=60
Color=65280
Caption="Clear List"
link(onClick,14738624:doClear,[(280,650)(280,608)])
}
Add(ChanelToIndex,4406639,189,378)
{
link(onIndex,501698:doValue,[])
}
Add(PointHint,15445204,49,882)
{
Info=#10:Эквалайзер|
Width=85
Height=53
}
Add(PointHint,9025282,427,140)
{
Info=#17:Регулировка звука|
Width=134
}
Add(PointHint,5466983,672,1169)
{
Info=#18:Измерение битрейта|
Width=162
}
Add(PointHint,5692243,644,581)
{
Info=#20:Позиция проигрывания|
Width=148
}
Add(PointHint,552116,140,1610)
{
Info=#33:Загрузка дополнительных библиотек|
Width=253
}
Add(Edit,8243139,462,707)
{
Left=75
Top=20
Width=640
Height=21
Color=0
Font=[MS Sans Serif,8,1,16711680,1]
Text=""
link(onChange,257569:doRead,[(512,713)(512,1007)])
}
Add(Label,2833520,469,663)
{
Left=20
Top=20
Width=45
Height=17
Color=-16777203
Font=[MS Sans Serif,9,1,0,1]
Caption="Playing"
}
Add(HubEx,8014491,398,763)
{
Angle=1
link(onEvent,1147551:doCreate,[(402,811)])
}
Add(GetDataEx,3496098,448,747)
{
Angle=1
link(Data,8243139:Text,[(468,752)])
}
Add(Timer,9324229,462,840)
{
Interval=1
Enable=1
AutoStop=1
link(onTimer,12127398:doEvent2,[(499,846)(499,787)(184,787)(184,727)])
}

карма: 0

0
файлы: 1code_16336.txt [20.4KB] [280]
Ответов: 1304
Рейтинг: 405
#20: 2010-01-05 21:36:17 ЛС | профиль | цитата
Assasin, так значит говоришь Хе .
Тогда попробуй вот эту схемку


Add(Button,47479,35,35)
{
Left=5
Top=10
Width=130
Height=25
Caption="Выбрать файлы"
link(onClick,15104708:doExecute,[])
}
Add(Button,2496941,35,112)
{
Left=145
Top=10
Width=190
Height=25
Caption="Воспроизвести список"
link(onClick,8234160:doEvent1,[])
}
Add(Hub,8234160,112,112)
{
InCount=2
OutCount=1
link(onEvent1,7346845:doNext,[])
}
Add(Counter,7346845,147,112)
{
Min=-1
Point(doValue)
link(onNext,9357745:doRead,[])
}
Add(ListBox,14842960,189,35)
{
Left=5
Top=40
Width=435
Height=340
Point(doSelect)
}
Add(ArrayRW,9357745,203,112)
{
link(onRead,11377434:doCreate,[])
link(Array,14842960:Array,[])
}
Add(BASS_StreamCreateFile,11377434,259,112)
{
Name="MainSound"
link(onCreate,955842:doPlay,[])
link(onEndPlay,10705781:doTimer,[(303,125)(303,167)])
}
Add(BASS_ChannelPlay,955842,315,112)
{
Channel="MainSound"
}
Add(Timer,10705781,315,161)
{
Interval=1
Enable=1
AutoStop=1
link(onTimer,8234160:doEvent2,[(356,167)(356,152)(100,152)(100,125)])
}
Add(MainForm,11326011,35,175)
{
Width=453
Height=414
Color=-16777206
Caption="bass"
Point(Handle)
link(onCreate,8398872:doInit,[])
}
Add(BASS_Init,8398872,112,189)
{
link(Handle,11326011:Handle,[(132,177)(86,177)(86,219)(41,219)])
}
Add(ODialog,15104708,105,35)
{
Title="Open File"
FileName=""
Select=1
link(onExecute,14842960:doAdd,[])
}
Add(Thread,6851419,315,196)
{
Delay=0
FastStop=0
}

И получается как в песне "Дивлюсь я на схему да думку гадаю чего я не сокол чего не летаю"
карма: 3

0
Ответов: 5227
Рейтинг: 587
#21: 2010-01-05 23:13:47 ЛС | профиль | цитата
помнится я не так давно тоже на этом попался, и тоже кому-то посоветовал таймер поставить из-за этого глюка. Есть ремарка на эту процедуру в справке, может там собака порыта?

Remarks
BASS creates a single thread dedicated to executing sync callback functions, so a callback function should be quick as other syncs can not be processed until it has finished. Attribute slides (BASS_ChannelSlideAttribute) are also performed by the sync thread, so are also affected if a sync callback takes a long time.

карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Ответов: 3851
Рейтинг: 159
#22: 2010-01-05 23:22:37 ЛС | профиль | цитата

я бы этот таймер внутрь элемента запихнул, не понимаю в чём преимущества сегодняшнего варианта, вопрос этот становится регулярным - пора делать выводы и принимать решения имхо..
карма: 0
начавший
0
Ответов: 1304
Рейтинг: 405
#23: 2010-01-06 16:58:41 ЛС | профиль | цитата
Андрей. писал(а):
я бы этот таймер внутрь элемента запихнул

Андрей., а я бы не стал. Схема которую я прицепил постом выше у меня в момент переключения на следующий трэк впадает в ступор, и при закрытии формы остаётся висеть в процессах. Все почему то ссылаются на wiki или на чей то опыт, а что бы проверить никак не получается .
карма: 3

0
Ответов: 3851
Рейтинг: 159
#24: 2010-01-06 21:30:19 ЛС | профиль | цитата

вах блина!

в смысле, MAV - обнаруживается некое различие в использовании потоков, а ещё точнее - в самих потоках - ОНИ РАЗНЫЕ! БЛИН!
потоки HiAsm отличаются от потоков музыке BASS! Что за ё-маё? А главное - почему об этом так мало известно? (основание - наличие вопросов)..
карма: 0
начавший
0
Ответов: 133
Рейтинг: 3
#25: 2010-01-06 23:07:23 ЛС | профиль | цитата
MAV, я полностью согласен с Вами:
MAV писал(а):
Схема которую я прицепил постом выше у меня в момент переключения на следующий трэк впадает в ступор, и при закрытии формы остаётся висеть в процессах.

У меня тоже самое.

Если добавить второй таймер,ползунок позиции проигрывания, и т. д.то все работает!!!!

Make(delphi)
ver(4.03 build 181)
Add(ODialog,15104708,245,139)
{
Title="Open File"
FileName=""
Select=1
link(onExecute,14738624:doAdd,[(350,145)(350,166)])
}
Add(ListBox,14738624,399,160)
{
Left=40
Top=150
Width=645
Height=125
Color=0
Font=[MS Sans Serif,8,0,16711680,1]
Point(doSelect)
link(onClick,11293159:doEvent1,[])
}
Add(Hub,11293159,469,167)
{
link(onEvent1,2028006:doValue,[(504,173)(504,269)(277,269)(277,306)])
link(onEvent2,11998023:doWork1,[(495,180)(495,235)(389,235)])
}
Add(BASS_StreamCreateFile,1147551,504,370)
{
Name="MainSound"
link(onCreate,3651364:doPlay,[(580,376)(580,334)])
link(onEndPlay,9324229:doTimer,[(548,383)(548,411)])
link(FileName,8243139:Text,[(510,337)(559,337)])
}
Add(Timer,9324229,560,405)
{
Interval=1
Enable=1
AutoStop=1
link(onTimer,12127398:doEvent2,[(597,411)(597,352)(247,352)(247,292)])
}
Add(BASS_ChannelPlay,3651364,616,328)
{
Channel="MainSound"
link(onPlay,6034887:doData,[(650,334)(650,185)])
}
Add(Edit,8243139,553,272)
{
Left=75
Top=20
Width=640
Height=21
Color=0
Font=[MS Sans Serif,8,1,16711680,1]
Text=""
}
Add(Hub,1372390,462,286)
{
link(onEvent1,8243139:doText,[(515,292)(515,278)])
link(onEvent2,1484642:doWork1,[(490,299)])
}
Add(ArrayRW,7455926,406,286)
{
link(onRead,1372390:doEvent1,[])
link(Array,14738624:Array,[(412,249)(419,249)])
}
Add(Hub,13600621,350,279)
{
link(onEvent1,14738624:doSelect,[(385,285)(385,208)])
link(onEvent2,11998023:doWork2,[(375,292)(375,293)])
}
Add(Counter,2028006,301,279)
{
Min=-1
Max=1000
Default=-1
Point(doValue)
link(onNext,13600621:doEvent1,[])
}
Add(Hub,12127398,252,279)
{
InCount=2
OutCount=1
link(onEvent1,2028006:doNext,[])
}
Add(BitBtn,13458823,133,258)
{
Left=270
Top=90
Width=48
Height=28
Color=8421504
Caption=""
Bitmap=[ZIPF60F000078DA73F2FDC6CF00066640AC01C406402C03C48C0C1260F103507964D0300A4601CDC07F06065C68B0B967401C468C7BE8E93092DC430787A159A422F376605D85E91E381A1087E1710FA9AEA28AC308BA87CEC145BC7B48721B9DDD43D04923337C064FFA193CF96B90943F035544935D5F0C92FA74F0D4EFA3EDB1C1D05E1D05A3003F0000133526CA]
link(onClick,16324067:doEvent1,[])
}
Add(HubEx,11998023,385,287)
{
link(onEvent,7455926:doRead,[(399,293)(399,292)])
}
Add(MainForm,6826875,93,443)
{
Width=751
Height=425
Color=-16777203
Caption="плейлист"
Point(Handle)
link(onCreate,4252681:doInit,[(144,463)(144,464)])
}
Add(BASS_Init,4252681,163,458)
{
link(Handle,6826875:Handle,[(183,446)(141,446)(141,487)(99,487)])
}
Add(BitBtn,11865194,169,132)
{
Left=65
Top=90
Width=60
Color=65280
Caption="Open file"
link(onClick,15104708:doExecute,[(222,138)(222,145)])
}
Add(Hub,16324067,196,258)
{
OutCount=3
link(onEvent1,12127398:doEvent1,[(238,264)(238,285)])
link(onEvent2,1484642:doWork2,[(225,271)(225,363)])
}
Add(HubEx,1484642,486,357)
{
Angle=1
link(onEvent,1147551:doCreate,[(490,376)])
}
Add(DoData,6034887,707,179)
{
link(onEventData,10441699:doMax,[(747,185)(747,194)(827,194)(827,186)])
link(Data,6457552:Length,[(713,163)(718,163)(718,324)(699,324)])
}
Add(ScrollBarEx,10441699,835,173)
{
Left=100
Top=320
Width=480
Height=10
Color=8388736
LightColor=16777215
DarkColor=16777215
FaceColor=0
ArrowColor=16711935
Max=999999999
ScrollMode=1
Point(doMax)
link(onPosition,6457552:doPosition,[(879,179)(879,232)(664,232)(664,262)])
}
Add(BASS_ChannelPosition,6457552,686,256)
{
Channel="MainSound"
Mode=2
}
Add(Timer,15591768,735,362)
{
link(onTimer,11518414:doData,[(772,368)(772,318)])
}
Add(DoData,11518414,784,312)
{
link(onEventData,10441699:doPosition,[(820,318)(820,179)])
link(Data,6457552:CurPosition,[(790,306)(692,306)])
}

А если убрать второй таймер и все связанные с ним элементы

Add(BitBtn,13458823,135,257)
{
Left=270
Top=90
Width=48
Height=28
Color=8421504
Caption=""
Bitmap=[ZIPF60F000078DA73F2FDC6CF00066640AC01C406402C03C48C0C1260F103507964D0300A4601CDC07F06065C68B0B967401C468C7BE8E93092DC430787A159A422F376605D85E91E381A1087E1710FA9AEA28AC308BA87CEC145BC7B48721B9DDD43D04923337C064FFA193CF96B90943F035544935D5F0C92FA74F0D4EFA3EDB1C1D05E1D05A3003F0000133526CA]
link(onClick,16324067:doEvent1,[(182,263)(182,264)])
}
Add(BitBtn,11865194,171,131)
{
Left=65
Top=90
Width=60
Color=65280
Caption="Open file"
link(onClick,15104708:doExecute,[(224,137)(224,144)])
}
Add(MainForm,6826875,95,442)
{
Width=751
Height=425
Color=-16777203
Caption="плейлист"
Point(Handle)
link(onCreate,4252681:doInit,[(146,462)(146,463)])
}
Add(BASS_Init,4252681,165,457)
{
link(Handle,6826875:Handle,[(185,445)(143,445)(143,486)(101,486)])
}
Add(ODialog,15104708,247,138)
{
Title="Open File"
FileName=""
Select=1
link(onExecute,14738624:doAdd,[(350,144)(350,166)])
}
Add(Hub,16324067,197,258)
{
OutCount=3
link(onEvent1,12127398:doEvent1,[(238,264)(238,285)])
}
Add(Hub,12127398,252,279)
{
InCount=2
OutCount=1
link(onEvent1,2028006:doNext,[])
}
Add(Counter,2028006,301,279)
{
Min=-1
Max=1000
Default=-1
Point(doValue)
link(onNext,13600621:doEvent1,[])
}
Add(Hub,13600621,350,279)
{
link(onEvent1,14738624:doSelect,[(385,285)(385,208)])
}
Add(ListBox,14738624,399,160)
{
Left=40
Top=150
Width=645
Height=125
Color=0
Font=[MS Sans Serif,8,0,16711680,1]
Point(doSelect)
link(onClick,11293159:doEvent1,[])
}
Add(Hub,11293159,469,167)
{
link(onEvent1,2028006:doValue,[(504,173)(504,269)(277,269)(277,306)])
}
Add(ArrayRW,7455926,406,286)
{
link(onRead,1372390:doEvent1,[])
link(Array,14738624:Array,[(412,249)(419,249)])
}
Add(Hub,1372390,462,286)
{
link(onEvent1,8243139:doText,[(515,292)(515,278)])
}
Add(Edit,8243139,553,272)
{
Left=75
Top=20
Width=640
Height=21
Color=0
Font=[MS Sans Serif,8,1,16711680,1]
Text=""
}
Add(BASS_StreamCreateFile,1147551,504,370)
{
Name="MainSound"
link(onCreate,3651364:doPlay,[(580,376)(580,334)])
link(onEndPlay,9324229:doTimer,[(548,383)(548,411)])
link(FileName,8243139:Text,[(510,337)(559,337)])
}
Add(Timer,9324229,560,405)
{
Interval=1
Enable=1
AutoStop=1
link(onTimer,12127398:doEvent2,[(597,411)(597,352)(247,352)(247,292)])
}
Add(BASS_ChannelPlay,3651364,616,328)
{
Channel="MainSound"
}

то приложение зависает,
значит, в таймерах дело!
Вот только почему так происходит?
------------ Дoбавленo в 23.41:
Сейчас потестил схему MAV - перебор списка в паралельном потоке.
Убрал ползунок , второй таймер и еще несколько элементов

Make(delphi)
ver(4.03 build 181)
Add(ListBox,14738624,385,105)
{
Left=5
Top=35
Width=545
Height=125
Point(doSelect)
link(onClick,6437386:doGet,[])
}
Add(Counter,2028006,315,182)
{
Min=-1
Default=-1
Point(doValue)
link(onNext,13600621:doEvent1,[])
}
Add(ArrayRW,7455926,399,189)
{
link(onRead,1372390:doEvent1,[])
link(Array,14738624:Array,[])
}
Add(Button,854059,217,105)
{
Left=5
Top=5
Width=75
Caption="Open"
link(onClick,5203079:doExecute,[])
}
Add(Button,590727,217,182)
{
Left=10
Top=170
Width=175
Caption="?????? ???????? ???????"
link(onClick,12127398:doEvent1,[])
}
Add(Hub,12127398,280,182)
{
InCount=2
OutCount=1
link(onEvent1,2028006:doNext,[])
}
Add(BASS_StreamCreateFile,2073512,518,252)
{
Name="MainSound"
link(onCreate,10701583:doPlay,[])
link(onEndPlay,10006279:doStart,[])
}
Add(BASS_ChannelPlay,10701583,609,252)
{
Channel="MainSound"
}
Add(Edit,8243139,518,189)
{
Left=195
Top=170
Width=355
Height=21
Text=""
}
Add(MainForm,6488361,217,252)
{
Width=564
Height=278
Color=-16777206
Caption="Consecutive viewing of files"
Point(Handle)
link(onCreate,7762274:doInit,[])
}
Add(BASS_Init,7762274,287,266)
{
link(Handle,6488361:Handle,[(307,254)(265,254)(265,296)(223,296)])
}
Add(Hub,1372390,462,189)
{
link(onEvent1,8243139:doText,[])
link(onEvent2,2073512:doCreate,[(497,202)(497,258)])
}
Add(Hub,13600621,357,182)
{
link(onEvent1,14738624:doSelect,[(378,188)(378,153)])
link(onEvent2,3516535:doWork2,[])
}
Add(MT_Get,6437386,434,112)
{
link(onGet,11293159:doEvent1,[])
}
Add(Hub,11293159,490,119)
{
link(onEvent1,2028006:doValue,[(521,125)(521,172)(303,172)(303,209)])
link(onEvent2,3516535:doWork1,[(516,132)(516,166)(389,166)])
}
Add(HubEx,3516535,385,189)
{
link(onEvent,7455926:doRead,[])
}
Add(Thread,10006279,560,259)
{
Delay=0
FastStop=0
link(onSyncExec,12127398:doEvent2,[(599,272)(599,232)(268,232)(268,195)])
}
Add(ODialog,5203079,273,105)
{
Filter="MP3|*.mp3"
Title="??????? mp3 ????"
Select=1
link(onExecute,14738624:doAdd,[])
}

И все работает..

карма: 0

1
Голосовали:PanQ
Ответов: 100
Рейтинг: 10
#26: 2010-01-09 21:05:30 ЛС | профиль | цитата
Когда-то столкнулся с похожей проблемой, решил вот так
code_16412.txt
карма: 1

0
файлы: 1code_16412.txt [7.1KB] [288]
Разработчик
Ответов: 4698
Рейтинг: 426
#27: 2010-01-09 21:11:23 ЛС | профиль | цитата
--- прошу прощения, не на то посмотрел
карма: 10
0
Ответов: 1304
Рейтинг: 405
#28: 2010-01-09 21:19:23 ЛС | профиль | цитата
PanQ, пример не работает, следующий трек не включился.
карма: 3

0
Ответов: 100
Рейтинг: 10
#29: 2010-01-09 21:25:19 ЛС | профиль | цитата
у меня до настоящего времени она работала, ответ написал не дочитав тему до конца, у Artem_user все работает, теперь и свою переделал таким образом
карма: 1

0
29
Сообщение
...
Прикрепленные файлы
(файлы не залиты)