Page 3 of 4

Posted: Sun Aug 12, 2007 4:27 pm
by bw
Единственный не большой по продолжительности, а резать длинные не хотелось. Все остальные больше 8Mb и с большим количеством кадров (>2000) - не удобно отлаживать.

..bw

Posted: Sun Aug 12, 2007 9:44 pm
by Mario79
bw
Помогите. Посмотрите заголовок kvid.kex и вообще подтвердите что фишка с собственным путем работает.
Это я тебе гарантирую. Если есть трудности, можешь посмотреть исходники KFM. Без фишки с собственным путем я бы не мог загружать INI и 2 штуки BMP файлов.

Запуск с параметром путь проверил – работает, но как-то странно. Два файла с одинаковой длинной имени лежащих в одной папке – один запускает, а для другого пишет - нет такого файла, а в пути, написанном в программе, затерто имя файла точками. Вероятно, у тебя либо неправильно копируется путь к файлу, либо он затирается другими данными в некоторых случаях. Лучше выделять под путь не менее 4 Кб.
Возможно с путем к самому приложению та же проблема, выдели тоже побольше памяти.

Posted: Sun Aug 12, 2007 10:44 pm
by bw
Вроде все элементарно:
[HEAD]

Code: Select all

[STACK][ARGS][PATH][ASS]
Память заказывается по ASS. На qemu я немного проверял, ARGS работал. PATH вообще никак, всегда 0. Для ARGS и PATH я выделяю по 256 байт. Файл "заканчивается" на CODE (или на STACK, уже не помню :-). Я писал свой exe2kos, pe2kos не работает из-за того что игнорирует ряд секций, которые использует FreePascal.

p.s. ASS, это просто метка на диаграмме, т.е. 0b в длине.

..bw

Posted: Wed Aug 15, 2007 5:14 pm
by DmitrySokolowsky
Отчёт о тестировании :)

Чтобы проиграть тестовый kvid.avi, пришлось запускать через Run, указав полный путь к проигрывателю и полный путь к фильму. Это неудобно.
Я решил сделать по другому: скопировал kvid.kex в /hd0/1/Kolibri и прописал соответственно ассоциации в kfar.ini и kfm.ini. Выбрал kvid avi.
Kfm выдал ошибку 5. Kfar объяснил более понятно:

Code: Select all

Ошибка при запуске программы: файл не найден
После того как я изменил местоположение программы и ассоциации на /hd0/1/kvid.kex, программа стала запускаться. Мне удалось проиграть некоторые из моих любимых аниме. При этом я обратил внимание, что в зависимости от разрешения фильма меняется нагрузка на процессор и винт. Так, фильм с разрешением 1024 на 576 заметно подтормаживал, в фильмах с меньшим разрешением я этого не заметил.
Ещё я заметил, что проигрыватель не понимает пути, содержащие пробелы. В этих случаях он пишет:

Code: Select all

Sorry, file not found
Это большой недостаток для современной программы.
И ещё я надеюсь, что со временем будут поддерживаться не только те версии кодеков, которые сейчас поддерживаются (этого очень мало), а хотя бы все, которые сейчас в ходу. И что когда-нибудь будет поддерживаться не только MP3, но и OGG.
Спасибо за внимание.

Posted: Wed Aug 15, 2007 9:28 pm
by DmitrySokolowsky
Итак, ясно: нормальная работа проигрывателя нарушается после того, как я делаю активным какое-то другое окно, а потом обратно окно с изображением. После этого процессор загружается на 100%, хотя перед этим мог работать примерно на 25%
Это очень серьёзный глюк!

Posted: Thu Aug 16, 2007 12:33 pm
by bw
Пока акцент делался только на парсин и декодирование видеоряда. Т.е. текущий болячки вообще не рассматривались.
С путями в kos я еще не толком не работал, запросто мог что-то упустить, тут я говорил что мне даже путь исполняемого приложение не удается выяснить. Передавать полный путь надежнее. Так как при открытии файла я беру только тут путь который передается через параметры. Если он относительный я не знаю как kos будет открывать такой файл, учитывает она или нет текущий путь. Что касается вывода - есть такая проблема, даже не знаю откуда, там вроде все элементарно. Но это тоже не важно так как код по выводу будет полностью переделан, после того как появится звук. Про не удачное эксплуатирование винта я так же говорил выше.

p.s. Спасибо за тесты и за отзывы :-).

..bw

Posted: Thu Aug 16, 2007 2:00 pm
by DmitrySokolowsky
Не забудь глюк с путями, содержащими пробелы...

Posted: Thu Aug 16, 2007 2:51 pm
by Mario79
Атауальпа
OFFTOP
"И главное мы забыли сказать про гранулы натуральных ягод!" ;-)
/OFFTOP

Posted: Thu Aug 16, 2007 3:41 pm
by DmitrySokolowsky
Вот уж действительно оффтоп :shock:

Posted: Thu Aug 23, 2007 9:32 pm
by bw
Mario79, выделил под путь больше места - все заработало, спасибо за подсказку.
Немного обновил kvid. Звука пока нет, как и ничего в принципе нет. Добавил паузу :-) по Space. Убрал косяк с зависанием и так по мелочам код причесал.
Напомнинаю URL программки: http://www.handsdriver.net/files/temp/kvid.kex

..bw

Posted: Fri Aug 24, 2007 1:28 am
by bw
Добавил возможность перемещать окно с видео, но под KOS работает криво, вот код, может чего заметите:

Code: Select all

      begin
        CurrMousePos := kos_getmousepos();
        if (kos_getmousebuttons() and 1) <> 0 then
        if MouseLeft and ((CurrMousePos.X <> PrevMousePos.X) or (CurrMousePos.Y <> PrevMousePos.Y)) then
        begin
          {нажата левая кнопка и курсор был перемещен}
          MoveWindow(
            WindowRect.Left + CurrMousePos.X - PrevMousePos.X,
            WindowRect.Top + CurrMousePos.Y - PrevMousePos.Y,
            GetWindowWidth(),
            GetWindowHeight());
        end else
          MouseLeft := True else
          MouseLeft := False;
        PrevMousePos := CurrMousePos;
      end;
AVI, отличные от DivX5 и XviD могут вызвать падение программы или выжрать всю оперативку, будьте бдительны :-).

p.s. Для перемещения окна, удерживайте левую кнопку мыши.

..bw

Posted: Fri Aug 24, 2007 8:45 am
by SPraid
Попробуй организовать это в виде библиотеке, путь даже в своем окне.
в библиотеке функции управления видео. Для начала "открыть файл" и "пауза"

Posted: Sat Aug 25, 2007 11:58 am
by Mario79
bw
выделил под путь больше места - все заработало, спасибо за подсказку.
У меня осталось все по-прежнему - путь больший, чем 20-25 символов не открывается.

Posted: Sat Aug 25, 2007 8:32 pm
by DmitrySokolowsky
bw: по крайней мере ты убрал самые неприятные баги. Да и пауза по Space - полезная возможность. Жду перемотку по стрелкам :)

Posted: Mon Aug 27, 2007 5:46 am
by Heavyiron
Проверил на фильме "Пророк" размером в 1,4 Гб, работает ) Осталось звук добавить! :) И имхо стоит убрать счетчик фреймов из окна видео...