Help - Search - Member List - Calendar
Full Version: Маленькая програмулька AviInfo
Форумы RDA > Другие проекты на RusDivX > Полезные программы
Pages: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
Digitus
Спасибо! Класная програмулька. smile.gif
Korax
Спасибо за программку... smileold.gif
Не поделишся, какими библиотеками пользовался, чтобы вытаскивать инфу из файлов?
Gesha
Спасибо, класный троянец (щютк, дааа) biggrinold.gif
Ну а серьезно - большое спасибо
DarkK
QUOTE (starsoft @ Feb 12 2003, 02:43)
Насколько я знаю с того момента, как видео и аудио склеены делей становится равным 0 (при отрицательном делее отрезается лишнее от звука, при положительном заполняется нулями) и если из авишки вытащить звук, то снова клеить его нужно будет с нулевым значением делея.

Хм, не знал, не знал...
ProFFF
спасибо smileold.gif
Lot
Спасибо. Удобная штучка
Leshii
классная вещь. спасибо!
bill
А GSpot не пробовали?
АVI, MPEG и export to *.txt.

Korax
QUOTE (Bill @ Feb 13 2003, 06:11)
А GSpot не пробовали?
АVI, MPEG и export to *.txt.

я GSpot использую, уже давно. Хорошая програмка. smile.gif
starsoft
QUOTE (Bill @ Feb 13 2003, 06:11)
А GSpot не пробовали?
АVI, MPEG и export to *.txt.

Пробовали, не нравится. Много лишнего и неудобно. Однако ж каждый выбирает что ему по вкусу, а на вкус и цвет... winkold.gif
ArjLover
-d - рулез! я даже попросить стесьнялся.. ну все.. осталось мпегов дождаться.. smileold.gif
Valky
Насчет Delay audio, из фич GSpot:
...Displays audio/video "interleave" value in frames and milliseconds. Displays audio "preload" as well...
starsoft
2 Valky: Говоришь о Delay audio, а ссылку привел на фичу "interleave/preload" smileold.gif

Скачал последнюю версию посмотреть. Не знаю как они вычисляют параметры интерлива - видимо анализом самого файла, а не только заголовков (поэтому пока и не поддерживается АС3, только МР3). На только что сделанный файл интерлив показала правильно (1 frame), прелоад - нет (261 вместо 500)... Интересно как они это вычисляют...
Korax
Наткнулся на маленький typo... smileold.gif

user posted image

Спасибо ещё раз за программку, пользуюсь ею уже довольно часто...
starsoft
Обновил версию (1.9b), исправил пару мелких ошибочек smileold.gif
alex
Спасибо, очень практичная вещица.
Rumata
Я вот только не понял что-то. Даю команду:
AviInfo.exe filename.avi -a
и ничего не вижу на экране. Только когда перенаправляю в файл (AviInfo.exe filename.avi -a > filename.txt) информация сохраняется. Что я не так делаю ?
starsoft
2 Rumata:
Всё так делаешь smileold.gif Это не консольная апликация, поэтому в окно DOS-а, из которого ты ее запускаешь, выдать ничего не может. Этот режим и предназначен для перенаправления инфы в файл winkold.gif
TyKKa
Класс! Спасибо огромное, давно что-то подобное искал.
Rumata
QUOTE (starsoft @ Mar 22 2003, 12:26)
2 Rumata:
Всё так делаешь smileold.gif Это не консольная апликация, поэтому в окно DOS-а, из которого ты ее запускаешь, выдать ничего не может. Этот режим и предназначен для перенаправления инфы в файл winkold.gif

Так может в таком случае можно сделать, что-б она сохраняла в буффер обмена ?
starsoft
Этот режим делался для использования программы в каком-то скрипте-обработчике (скажем для проги-каталога). Там именно нужно потом читать и анализировать файл. А для наполнения буффера обмена можно запустить окно и выбрать "Show as text" --> Ctrl+C
Rumata
QUOTE (starsoft @ Mar 23 2003, 16:02)
Этот режим делался для использования программы в каком-то скрипте-обработчике (скажем для проги-каталога). Там именно нужно потом читать и анализировать файл. А для наполнения буффера обмена можно запустить окно и выбрать "Show as text" --> Ctrl+C

О! Класс !!!
Я просто не знал про эту опцию. Спасибо. Как раз то, что мне нужно было.
dispara
Спасибо, starsoft smileold.gif
AzIrIs
спасибо за прогу, клёвая вещица ! smileold.gif
ProFFF
спасибо
ProFFF
а где линк на 1.9?
AzIrIs
такой же что и на предыдущий
hs
Странно, а почему если делать не "aviinfo aaa.avi -a > file" а просто "aviiinfo a.avi -a" то ничего не показывает ? В help про это не указано...

А вот еще бы :-) где бы найти инструкции как замучать Autoplay, что бы когда я вставляю диск с video files он бы запускал AviInfo (с перенаправлением в файл) и сразу после делал eject cdrom ? У меня пока что вышло только запускать aviinfo а eject не выходит. И некрасиво сделал - я ковырял regedit-ом ACDSee-шный autoplay до тех пор пока он не взмолился и не попросил показать пальцем какой же файл я хочу запускать.

zloy.gif <-- пока не переиндексирую все мувики ни одного больше не буду скачивать честное слово !
starsoft
1) Если бы ты почитал на этой же страничке несколькими сообщениями выше, то увидел бы:
QUOTE (starsoft @ там)
Это не консольная апликация, поэтому в окно DOS-а, из которого ты ее запускаешь, выдать ничего не может. Этот режим и предназначен для перенаправления инфы в файл

и
QUOTE (starsoft @ там)
Этот режим делался для использования программы в каком-то скрипте-обработчике (скажем для проги-каталога). Там именно нужно потом читать и анализировать файл.


2) Сделать eject или close "подставки для кофе" не проблема, тока к этой програмке это не имеет отношения smileold.gif Это апликашка авторана должна быть такой, чтоб сначала запустила её, а потом выдвинула "подставку"...
Valky
QUOTE (starsoft @ Feb 14 2003, 02:09)
Скачал последнюю версию посмотреть. Не знаю как они вычисляют параметры интерлива - видимо анализом самого файла, а не только заголовков (поэтому пока и не поддерживается АС3, только МР3). На только что сделанный файл интерлив показала правильно (1 frame), прелоад - нет (261 вместо 500)... Интересно как они это вычисляют...

Да, чтобы узнать интерлив аудио и прелоад, нужно анализировать данные, в заголовках это не отображается, проверял лично.

С интерливом я разобрался: ищем индекс в AVI (idx1 для формата AVI 1.x), загружаем несколько индексов, анализируем: если "wb,dc,wb,dc,wb,dc..." (wb-sound, dc-compressed video), то интерлив = 1, если "wb,dc,dc,dc,dc,dc,wb...", то интерлив = 5 и т.д.

А вот с прелоадом пока не знаю, но буду искать дальше, истина где-то рядом! Кстати, проверил, оказалось (по крайней мере на нескольких файлах) довольно точно GSpot определяет величину прелоада, 1-2% ошибки. smileold.gif
starsoft
QUOTE (Valky @ там)
С интерливом я разобрался: ищем индекс в AVI (idx1 для формата AVI 1.x), загружаем несколько индексов, анализируем: если "wb,dc,wb,dc,wb,dc..." (wb-sound, dc-compressed video), то интерлив = 1, если "wb,dc,dc,dc,dc,dc,wb...", то интерлив = 5 и т.д.

Таким образом можно определить интерлив, измеряемый в количестве фреймов. А как насчет милисекунд? И что получится если файл сохранен вообще без интерлива?
Valky
QUOTE (starsoft @ Apr 14 2003, 21:49)
Таким образом можно определить интерлив, измеряемый в количестве фреймов. А как насчет милисекунд? И что получится если файл сохранен вообще без интерлива?


Если без интерлива, то разница есть, смотри:

i=00 wb' wb' wb' wb' wb' ... wb' dc' dc dc dc dc ... dc

i=01 wb' dc' wb' dc wb' dc wb' dc ...
i=05 wb' dc' wb' dc dc dc dc dc wb' dc dc dc dc dc wb'...
i=10 wb' dc' wb' dc dc dc dc dc dc dc dc dc dc wb' dc dc dc dc dc dc dc dc dc dc wb'...

(Кавычка - KEY_FRAME)

PS. С милисекундами все ясно:

i=60ms wb' dc' wb' dc wb' dc dc wb' dc wb'... (типа 1.5 фрейма)
i=80ms wb' dc' wb' dc dc wb' dc dc wb' ... (= 2 фрейма)
i=90ms wb' dc' wb' dc dc wb' dc dc wb' dc dc wb' dc dc dc wb' ... и т.д.
starsoft
QUOTE (Valky @ там)
С милисекундами все ясно


Спасибо. Но ясно только если фреймрейт 25 fps, а если 23.976? нацело не поделишь smileold.gif

Также непонятно с многопотоковым файлом, там вообще мешанина получается - попробовал проанализировать - пока ниче не понял...
Valky
Посмотрим, если будет что интересное - напишу здесь smileold.gif

Вот смотри такой пример: FPS=23.976, Interleave=100ms
Во фреймах интерлив равен: 100/(1000/23.976) = 2.3976 фрейма.

В индексе видим такую картину:
... wb dc dc wb dc dc wb dc dc dc wb dc dc wb dc dc dc wb ...

Берем достаточно длинный кусок индекса и считаем сколько
там групп (dc dc) и сколько (dc dc dc) (в общем случае будем
считать все группы dc и складывать дроби).

Я взял небольшой кусок и получил:
(dc dc) - 29 шт, (dc dc dc) - 18 шт, всего "dc" = 29*2+18*3 = 112,
всего посчитано групп = 29+18 = 47

Искомый интерлив во фреймах = 112/47 = 2.383

Взяв больший кусок, получим большую точность!
Кстати, GSpot показал 2.4 фрейма (просто округлили), но
в ms правильно - ровно 100. Значит при достаточно
большой выборке можно сосчитать очень точно.

Интересно будет посмотреть многопотоковый файл...
Valky
2 Starsoft:

Вот как выглядит индекс в файле с 2-мя аудио-потоками:

00dc 00dc 00dc 00dc...01wb 02wb 00dc 00dc 00dc ...

Так что интерлив считаем также как и в однопотоковом. Алгоритм простейший! smileold.gif

Также разобрался, как считается Preload:

Audio preload = (Sugested Bufer Size из Auds.Strh) / (Average Data-Transfer Rate из Auds.Strf)
(Проверил на десятке файлов - все точно)

Кстати, GSpot неточно считает Видео-битрейт (не учитывается размер индекса), а также неточно показывает Preload.
starsoft
Спасибо большое за инфу!

Может быть когда будет время и добавлю расчеты интерлива и прелоада в виде отдельной опции.
Korax
2 starsoft:
Сегодня вот натолкнулся на маленькую проблему с этой программкой. Первый раз попробовал посмотреть параметры небольшого видеоролика, снятого на камеру. Как обычно, райт клик на AVI файле - Show info и жду...
А окошко с информацией так и не появилось...
Это связано с тем, что формат/кодек "нестандартный" или по какой другой причине?
GSpot прочёл инфу из файла без проблем...

Видео кодек оказался такой:
4СС = mjpg
Name = Motion JPEG including Huffman Tables

Если надо, могу ролик прислать или выложить на фтп для теста...
Размер его 5.75 MB... winkold.gif
ProFFF
А как получить\сделать данные вроде этого?
Author: &&&&&
Copyleft: RDA Team
magr
2 ProFFF: Задаются они на этапе объединения видео и аудио (например в программе nandub). Считывать и отображать их умеет например Media Player. Или я вопроса не понял?
ProFFF
А где там конкретно???
P.S. Правильно понял, спасибо smileold.gif smileold.gif
magr
А где конкретно "там"? smileold.gif

Формулируй четче - как я пойму, про какую программу ты спрашиваешь?
starsoft
2 Korax:

QUOTE (Korax @ там)
Это связано с тем, что формат/кодек "нестандартный" или по какой другой причине?


Интересно конечно, но проверить я смогу только увидев файл. Если можешь где-то положить - плз, можно и прям ко мне закинуть (стучи в асю). Если нет - скажи откуда скачать.

Для проверки связано ли это с "незнанием" кодека - просто в текстовом редакторе впиши его в соответствующую секцию в файле .dat .
ProFFF
Где конкретно на этапе соединения Видео и Аудио задаются эти параметры???
starsoft
2 ProFFF:
QUOTE (ProFFF @ там)
Где конкретно на этапе соединения Видео и Аудио задаются эти параметры???


Внимательно посмотри в NanDUB-e на окно ввода имени файла, появляющееся при выборе "Save as AVI" winkold.gif
ProFFF
СПасибо smileold.gif Буду знать smileold.gif
Раньше не обращал внимания winkold.gif
Korax
2 starsoft:
послал линк на этот ролик... smileold.gif
В этом .dat файле я действительно не нашёл этого видеокодека. Попробовал вписать его туда, но ничего не изменилось...
Valky
2 Korax

Кинь и мне линк на этот странный ролик, плиз. Для дела, не шутки ради smileold.gif
Korax
2 Valky:
кинул smileold.gif
U1tra
у меня вот что-то сбойнула програмка - неправильную инфу выдала по продолжительности фильма

File: The Mummy.avi
Filesize: 700.02 Mb (734026240 bytes)
Play length: 04:20:16.017 (374413 frames)
Subtitles: Present (Micro-DVD format)
Video: 640x288, 23.976 fps, DivX ;-) MPEG-4 Fast-Motion ~184 kbps avg
Audio: 48 kHz, 2 ch, MPEG Layer-3 ~192.00 kbps avg

-- на самом деле 02-04-50 длительность.
kvappa
Кстати, а можно ли как-нибудь сделать, чтобы в AC3 еще и наличие/отсутствие LFE показывалось?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2025 Invision Power Services, Inc.