Вверх ↑
Этот топик читают: Гость
Ответов: 7
Рейтинг: 0
#1: 2023-08-28 19:40:12 ЛС | профиль | цитата
Для одного проекта решил использовать компонент BASS_StreamCreateURL, но вот не могу додуматься до простой вещи: когда заканчивается один трек из списка нужно воспротзводить следующий. Как это реализовать?
За подсказку спасибо заранее
карма: 0

0
Ответов: 8921
Рейтинг: 823
#2: 2023-08-28 21:52:17 ЛС | профиль | цитата
fat86, В своё время измерил продолжительность треков и записал их вместе с наименованиями
На схеме сами треки удалены из-за размера.
Схема


Add(MainForm,2953706,273,98)
{
Left=5
Top=5
Width=246
Height=48
Color=12639424
Caption="Виктор Цой"
Point(onMouseUp)
Point(onResize)
Point(doWidth)
Point(doHeight)
link(onCreate,11338216:doEvent1,[(310,118)(310,111)])
link(onMouseUp,9168614:doCompare,[])
link(onResize,10595712:doEvent1,[(315,132)(315,180)(170,180)(170,139)])
}
Add(StrList,2781643,490,49)
{
Strings=#19:Группа крови;214000|29:Звезда по имени Солнце;190000|14:Перемен;294000|22:Последний герой;185000|15:В дорогу;207000|14:Кукушка;346000|
}
Add(Counter,1332786,413,112)
{
Default=-1
Point(doMax)
Point(Max)
link(onNext,4259271:doEvent1,[])
link(Max,8142138:Result,[(419,100)(392,100)(392,210)(356,210)])
}
Add(Timer,1953687,651,98)
{
Enable=1
Point(doInterval)
link(onTimer,7578163:doWork1,[(688,104)(688,36)(403,36)])
}
Add(ArrayRW,16136580,504,112)
{
link(onRead,16700930:doSplit,[])
link(Array,2781643:Array,[])
}
Add(Hub,12800492,602,112)
{
OutCount=4
link(onEvent1,1953687:doInterval,[])
link(onEvent2,1953687:doTimer,[(630,125)(630,104)])
link(onEvent3,16197168:doOperation,[(643,132)(643,139)])
link(onEvent4,14899112:doReset,[(639,139)(639,188)])
}
Add(Hub,4259271,462,112)
{
link(onEvent1,16136580:doRead,[])
link(onEvent2,10740244:doPlay,[(494,125)(494,167)])
}
Add(HubEx,7578163,399,112)
{
link(onEvent,1332786:doNext,[])
}
Add(StrPart,16700930,553,112)
{
Char=";"
link(onSplit,12800492:doEvent1,[])
link(onPart,2953706:doCaption,[(592,125)(592,220)(261,220)(261,104)])
}
Add(If_else,9168614,350,119)
{
Op1=Integer(0)
link(onTrue,7578163:doWork3,[(403,125)])
link(onFalse,1332786:doPrev,[(407,132)(407,125)])
}
Add(Hub,11338216,315,105)
{
link(onEvent1,8142138:doOperation,[(339,111)(339,174)])
link(onEvent2,7578163:doWork2,[])
}
Add(Math,8142138,350,168)
{
OpType=1
Op2=1
ResultType=0
link(onResult,1332786:doMax,[(398,174)(398,139)])
link(Op1,10740244:Count,[(356,159)(452,159)(452,203)(510,203)])
}
Add(Timer,13070260,602,168)
{
link(onTimer,14899112:doNext,[])
}
Add(Counter,14899112,651,168)
{
Max=9999999
link(onNext,14036100:doPosition,[])
}
Add(ProgressBar,14036100,700,168)
{
Width=230
Height=5
Color=32768
ProgressColor=65280
Point(doMax)
}
Add(Math,16197168,651,133)
{
OpType=3
Op2=1000
ResultType=0
link(onResult,14036100:doMax,[(691,139)(691,181)])
}
Add(Hub,10595712,182,133)
{
link(onEvent1,13133015:doClear,[])
link(onEvent2,7432029:doClear,[(203,146)(203,153)])
}
Add(Memory,13133015,210,126)
{
Default=Integer(246)
link(onData,2953706:doWidth,[])
}
Add(Memory,7432029,210,140)
{
Default=Integer(48)
link(onData,2953706:doHeight,[(258,146)(258,139)])
}
Add(WaveArray,10740244,504,161)
{
Waves=[]
}

Из URL наверное тоже можно получить и имя, и длительность (никогда не занимался, не знаю).
карма: 19

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