Модераторы: Snowy, Alexeis, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> FPS достал! не могу правильно определить 
:(
    Опции темы
NewDima
Дата 1.6.2008, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 922
Регистрация: 20.2.2006
Где: <?here?>

Репутация: нет
Всего: 12



У меня плейер на DirectShow. Проблема вот в чем: я не могу определить правильно fps для любого видео (обязательно для avi).  Воспроизводятся субтитры, которые начинают отставать к концу длительного фильма на несколько секунд (около 5). Я не могу смириться с мыслью, что fps  надо ставить дробный. Как точно определить его? Пользуюсь автоматическим графом фильтров. А субтитры мне нужно синхронизировать с видео, но выводить их не в окно видео. Из-за неправильного fps у меня длительность фильма получается не 2:01:01, а 2:00:54 (в частном случае). В общем SoS, помогите пожалуйста.
PM ICQ   Вверх
NewDima
Дата 2.6.2008, 15:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 922
Регистрация: 20.2.2006
Где: <?here?>

Репутация: нет
Всего: 12



Да... помогли, познавательно. Форум вымерает, или уже вымер? Хотя, кто мне ответит, здесь же никого нет
PM ICQ   Вверх
Qu1nt
Дата 2.6.2008, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 602
Регистрация: 13.1.2007

Репутация: 2
Всего: 50



Примерно так можно опередить FPS avi`шки:
Код

function ReadAviFPS(const FileName: string): Double;
var
  FileHandle : Integer;
  Microsec   : Integer;
  FileExt    : string[5];
begin
  Result := - 1;
  if not FileExists(FileName) then
    Exit;
  FileHandle := FileOpen(FileName, fmOpenRead);
  FileSeek(FileHandle, 32, 0);
  FileRead(FileHandle, Microsec, 4);
  FileClose(FileHandle);
  Result := 1000000 / Microsec;
end;

procedure TForm1.Button1Click(Sender: TObject);
const
  FileName = 'c:\super.avi';
begin
  ShowMessage(FloatToStrF(ReadAviFPS(FileName), ffGeneral, 5, 2));
end;

PM MAIL   Вверх
mdsoul
Дата 3.6.2008, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 34
Регистрация: 23.11.2006

Репутация: нет
Всего: нет



Дмитрий, не подскажите как вы определяете длительность видео-файлов? неважно с какой точностью. у меня тот же вопрос стоит
PM MAIL   Вверх
NewDima
Дата 4.6.2008, 07:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 922
Регистрация: 20.2.2006
Где: <?here?>

Репутация: нет
Всего: 12



Qu1nt, спасибо за вариант, попробую, отпишусь.
mdsoul, длительность в секундах равна общему числу фреймов видео деленому на fps
PM ICQ   Вверх
mdsoul
Дата 4.6.2008, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 34
Регистрация: 23.11.2006

Репутация: нет
Всего: нет



Да, эта незамысловатая формула наврядли вызовет затруднения.. вопрос в том - откуда взять количество фреймов?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.0501 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.