Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2006.09.10;
Скачать: [xml.tar.bz2];

Вниз

Создать AVI из последовательности jpeg (bmp) как?   Найти похожие ветки 

 
DVM ©   (2006-02-13 11:02) [0]

Необходимо создать AVI из последовательности jpeg (bmp), используя один из установленных в системе кодеков. Во многоих программах такое реализовано, очевидно стандартная какая-то возможность - появляется окно для выбора кодека.
Кто знает как осуществить?


 
zinetz_victor   (2006-02-13 11:17) [1]

> Кто знает как осуществить?
ну я знаю - и что? вопрос надо точнее ставить :)

если просто - ищи компонент avi_writer, если сложно - читай video_for_windows в msdn или читай про directshow


 
DVM ©   (2006-02-13 11:32) [2]


> zinetz_victor   (13.02.06 11:17) [1]


> если просто - ищи компонент avi_writer, если сложно

Компонент как раз простой очень, и пишет без сжатия, насколько я понял из его исходников.

> вопрос надо точнее ставить :)

куда уж точнее, кодек уточнить? :)


 
programania ©   (2006-02-13 21:20) [3]

Запись из нескольких bitmap в avi:
с кодированием в divX на лету:
http://programania.com/aviwriter_2.zip  60kb


 
Дмитрий Белькевич ©   (2006-02-13 21:58) [4]

Компонент как раз простой очень, и пишет без сжатия, насколько я понял из его исходников.

А это что?

unit AviWriter;

..........

{.............. Задаём параметры компрессии AVI-файла ................}
     If fCompression then with MyAVIcompressOptions do begin
     fccType := StreamTypeVideo;           //  DWORD
     fccHandler := MyFOURCC("M","S","V","C");    //  DWORD


 
DVM ©   (2006-02-14 10:53) [5]


> Дмитрий Белькевич ©   (13.02.06 21:58) [4]

Опс, проглядел. В принципе я более-менее разобрался, но все равно спасибо всем!


 
SMAC   (2006-02-21 16:37) [6]

Люди добрые!
Подскажите новичку: как подключить компоненту http://programania.com/aviwriter_2.zip к моей программе и пользовать?
Никогда не использовал не встроенные средства Delphi...

Заранее спасибо.


 
programania ©   (2006-02-21 20:04) [7]

Добавить в uses aviWriter_2,
обьявить aw: tAviWriter_2;
создать
aw:=tAviWriter_2.create(form1);
aw.PixelFormat := pf24bit;

заполнить список кодеков
 aw.Compressorlist(form1.comboBox1.Items);
установить выбранный
with form1.comboBox1 do
aw.SetCompression(copy(Items.Strings[ItemIndex], 1, 4))
и др. свойства:
aw.fileName:="bmp.avi";
aw.width:=480;
aw.height:=360;
aw.WavFileName:="";
aw.OnTheFlyCompression:=true;
aw.Stretch:=false;
aw.frameTime:=40;
aw.InitVideo;

обьявить и создать b: tBitmap;b:=graphics.tBitmap.create; b.pixelformat:=pf24bit;
заполнять его b.loadFromFile("image.bmp");
Добавлять кадры в цикле
aw.AddFrame(b);

закончить
 aw.FinalizeVideo;
 aw.WriteAvi;

Подробнее прилагаются 2 примера Demo


 
Дмитрий Белькевич ©   (2006-02-22 04:15) [8]

>Подскажите новичку: как подключить компоненту http://programania.com/aviwriter_2.zip к моей программе и пользовать?
Никогда не использовал не встроенные средства Delphi...

Немного не это по-моему ему нужно.
Скорее всего, нужно просто установить компоненту:
Запускаешь AviPack.dpk.
Жмёшь "сompile", "install", компонента появляется в закладке "custom".


 
SMAC   (2006-02-22 11:45) [9]

Спасибо, programania ! Все работает!!!

А вот то, о чём говорит Дмитрий Белькевич я как раз и пробовал делать. Так у меня были следующие проблемы:

При компиляции выдается Error на:
{$ALIGN 8} -> заменяю -> {$ALIGN ON}

requires
 rtl,
 vcl;


а вот здесь сложнее, поскольку ни  rtl.dcu, ни vcl.dcu я в папке с Delphi не нашел. Может быть я сделать что-то не так?

Заранее списибо.


 
SMAC   (2006-02-22 15:02) [10]

ЗЫ

Всех с праздником! С мужским. Да не посчитают модераторы многоуважаемого форума данные поздравления флудом.


 
Дмитрий Белькевич ©   (2006-02-22 17:38) [11]

Дело, конечно, хозяйское, но на будущее рекомендую посмотреть прописаны ли пути к папке delphi6/lib.
Прописывать в environment options - library - library path:

$(DELPHI)\Lib;$(DELPHI)\Bin;$(DELPHI)\Imports;$(DELPHI)\Projects\Bpl;$(DELPHI)\R ave5\Lib;


 
SMAC   (2006-02-27 11:20) [12]

У меня прописано:

$(DELPHI)\Lib;$(DELPHI)\Bin;$(DELPHI)\Imports;$(DELPHI)\Projects\Bpl

А что за $(DELPHI)\R ave5\Lib?

А что касается проекта SimpleDemo.dpr из http://programania.com/aviwriter_2.zip , то всё работает просто отлично!!! Я по ходу разобрался...
Если будет в дальнейшем задавать такие же глупые вопросы как и я, то:
1. Содержимое папок SimpleDemo и Component Files нужно объединить.
2. Из uses убрать "Variants," как отсутствующий.
3. Зарэмить //ListBox1.DeleteSelected;
4. Перенести AviWriter: TAviWriter_2; из раздела type в раздел var
5. Добавить в процедуру TMainForm.FormCreate(Sender: TObject); перед UpdateCompressorList; строку AviWriter := TAviWriter_2.Create(self);

И всё заработает... Появятся все DCU.

А вот что делать с AviDemo.bpg из http://programania.com/aviwriter_2.zip пока не понял... Кто подскажет?



Страницы: 1 вся ветка

Форум: "Media";
Текущий архив: 2006.09.10;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.038 c
6-1145860570
cosmos
2006-04-24 10:36
2006.09.10
Ошибка подключения к Paradox через ADO


2-1155815298
fast2
2006-08-17 15:48
2006.09.10
Что неправильно в условии:


15-1155873787
kolyann..
2006-08-18 08:03
2006.09.10
?!


1-1153814246
gear
2006-07-25 11:57
2006.09.10
Динамическое создание TFrame и доступ к определёному объекту...


2-1156140048
barakuda
2006-08-21 10:00
2006.09.10
Сложная выборка





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский