Программисты, нужен совет

Модератор: Модераторы разделов

mops
Сообщения: 172
ОС: Ubuntu Feisty

Программисты, нужен совет

Сообщение mops »

Пишу программу, которая выдирает из видеофайлов отдельные кадры и формирует из них композицию (в общем случае - обычную таблицу) и сохраняет в графический файл. Кто качал порнуху с торрентов, тот поймёт =)
Так вот, стал вопрос о том, где же хранить полноразмерные кадры. С одной стороны, если хранить в ОП, то обработка идёт быстро, но этой самой памяти нужно довольно много. С другой стороны, если хранить их на винчестере, то обработка значительно замедляется, зато количество кадров почти не ограничено.
Первый вариант я уже реализовал. Но меня терзают сомнения... Подскажите, как лучше.
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Программисты, нужен совет

Сообщение elide »

как же вы все любите вот это вот "как лучше"... никак не можете понять, что нет способа, который всегда "лучше".
вообще нет таких понятий как "хорошо", "плохо", "лучше", "хуже"... есть только два понятия, которые стоит учитывать: необходимость и целесообразность.
так вот если предполагается, что большую часть времени будут генериться таблички 4х4 или 5х5, то кадры надо хранить в памяти. с неё не убудет, а скорость добавится. а если надо генерить композиции 1000х1000, то никаких запасов памяти просто не хватит, а потому первый вариант вообще работать не будет.
т.е. нет способа, который "лучше". есть способ, который больше подходит для решения данной конкретной задачи...
слава роботам!
Спасибо сказали:
mops
Сообщения: 172
ОС: Ubuntu Feisty

Re: Программисты, нужен совет

Сообщение mops »

elide писал(а):
09.04.2007 20:47
как же вы все любите вот это вот "как лучше"... никак не можете понять, что нет способа, который всегда "лучше".
вообще нет таких понятий как "хорошо", "плохо", "лучше", "хуже"... есть только два понятия, которые стоит учитывать: необходимость и целесообразность.
так вот если предполагается, что большую часть времени будут генериться таблички 4х4 или 5х5, то кадры надо хранить в памяти. с неё не убудет, а скорость добавится. а если надо генерить композиции 1000х1000, то никаких запасов памяти просто не хватит, а потому первый вариант вообще работать не будет.
т.е. нет способа, который "лучше". есть способ, который больше подходит для решения данной конкретной задачи...

Дело в том, что это я не для себя пишу и понятия не имею, каких размеров таблички захотят генерировать юзеры этой программы. Это может быть как 5*5, так и 5*25 и 5*100. Причём любой из этих вариантов востребован.
Спасибо сказали:
v04bvs
Сообщения: 636
ОС: Debian GNU/Linux

Re: Программисты, нужен совет

Сообщение v04bvs »

генерируй кучу картинок и HTML-ку с таблицей, а потом всё в какой-нибудь .mht архив.
Спасибо сказали:
mops
Сообщения: 172
ОС: Ubuntu Feisty

Re: Программисты, нужен совет

Сообщение mops »

v04bvs писал(а):
09.04.2007 21:35
генерируй кучу картинок и HTML-ку с таблицей, а потом всё в какой-нибудь .mht архив.

не, так не пойдёт, входной файл - видео, выходной файл - графика.
Спасибо сказали:
Аватара пользователя
Liksys
Сообщения: 2910

Re: Программисты, нужен совет

Сообщение Liksys »

Если таблички маленькие - первый метод, большого - второй. Какой метод использовать - должен определять сам алгоритм, но должна быть возможность выбора пользователем.
Спасибо сказали:
mops
Сообщения: 172
ОС: Ubuntu Feisty

Re: Программисты, нужен совет

Сообщение mops »

после замеров на разных количествах фреймов решил пока оставить как есть
если буду жалобы - добавлю
Спасибо сказали:
Hydrogen
Сообщения: 137
Статус: <<beta testing>>
ОС: Slackware 11

Re: Программисты, нужен совет

Сообщение Hydrogen »

ИМХО - хранить в памяти, и памяти не так много надо, современный комп практически любой потянет, если же оперативы не хватит, комп сам в своп положит всё

итого

overall perfomance(в RAM): если кадры мелкие - прога летает, если кадры крупные, прога притормаживает когда свопит
overall perfomance(на HD): прога будет всегда тормозить, даже если кадры мелкие


ИМХО 2 - не совсем согласен с elide в данном случае лучше будет хранить в ОП по вышеуказанной причине...

ИМХО 3 - порно маст дай
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Программисты, нужен совет

Сообщение elide »

Hydrogen писал(а):
10.04.2007 00:23
лучше будет хранить в ОП по вышеуказанной причине...
коллаж из 1000х1000 тумбов по 100х100px - это почти 30 гигов размера. часто люди отдают 30 гигов под своп?
ты можешь возразить, что пользователи не часто собирают такие картинки... вообще, да.
но второй вариант будет работать и в этом случае. а первый - нет.
и мы снова упираемся в то, что "лучшесть" определяется исключительно конкретной ситуацией.
ты готов не согласиться с этим утверждением?
слава роботам!
Спасибо сказали:
Аватара пользователя
alastor
Сообщения: 844
Статус: ARCH'еноид
ОС: Arch Linux current

Re: Программисты, нужен совет

Сообщение alastor »

Ну так может ввести в программу адаптивный алгоритм, который в зависимости от количества картинок будет размещать их либо в ОЗУ, либо на винте?
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Программисты, нужен совет

Сообщение elide »

alastor, к чорту адаптивные алгоритмы... дописать один ключ в параметрах - самый эффективный адаптивный алгоритм...
слава роботам!
Спасибо сказали:
Аватара пользователя
agbr
Сообщения: 486
ОС: openSUSE 10.2

Re: Программисты, нужен совет

Сообщение agbr »

mops писал(а):
09.04.2007 20:07
Пишу программу, которая выдирает из видеофайлов отдельные кадры и формирует из них композицию (в общем случае - обычную таблицу) и сохраняет в графический файл. Кто качал порнуху с торрентов, тот поймёт =)
Так вот, стал вопрос о том, где же хранить полноразмерные кадры. С одной стороны, если хранить в ОП, то обработка идёт быстро, но этой самой памяти нужно довольно много. С другой стороны, если хранить их на винчестере, то обработка значительно замедляется, зато количество кадров почти не ограничено.
Первый вариант я уже реализовал. Но меня терзают сомнения... Подскажите, как лучше.


реализуй оба варианта и их переключение.
по дефолту пусть например будет вариант с ОП.
jabber: agbr@jabber.ru

против проприетарного ПО в GNU/Linux
Спасибо сказали:
Аватара пользователя
Liksys
Сообщения: 2910

Re: Программисты, нужен совет

Сообщение Liksys »

Я про это еще в шестом топике сказал.
Спасибо сказали:
Hydrogen
Сообщения: 137
Статус: <<beta testing>>
ОС: Slackware 11

Re: Программисты, нужен совет

Сообщение Hydrogen »

elide писал(а):
10.04.2007 15:00
коллаж из 1000х1000 тумбов по 100х100px - это почти 30 гигов размера. часто люди отдают 30 гигов под своп?
ты можешь возразить, что пользователи не часто собирают такие картинки... вообще, да.
но второй вариант будет работать и в этом случае. а первый - нет.
и мы снова упираемся в то, что "лучшесть" определяется исключительно конкретной ситуацией.
ты готов не согласиться с этим утверждением?


Хорошо

1: очень сомневаюсь что о таких размерах идёт речь, ибо я так понял это чтоб на веб странички размещать
2: если это порнокачальщик - места на диске должно быть дохрена
2.1: если это порнокачальщик - не думаю что он выставлял статический размер свопа, ибо они в основном не знают что это
3: если свопу некуда рости - пункт 2 и вообще это не проблемы программера...

Программисты S.T.A.L.K.E.R'a не думали о юзерах amd duron процессоров...

короче много чего сказать можно... а спорим на пустом месте...

опять же это ИМХО...
Спасибо сказали: