Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.
Внимание! Некоторое время письма не доходят до аккаунтов MAIL RU GROUP, не доходят на все почтовые ящики mail.ru, inbox.ru, bk.ru. Пишите им жалобы, чтобы быстрее восстановили получение писем, регистрируйтесь через яндекс почту и gmail, туда письма с активизацией доходят.

Вернуться   Форум программистов > Delphi > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 14.02.2011, 16:11   #1
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Адрес: Kirov
Сообщений: 245
Репутация: 28

icq: 567825628
По умолчанию Скачивание видео файла по кадрам

Подскажите возможно скачивать видео файл по кадрам и в это время воспроизводить, как это делают флеш плеры на сайтах?
Если это возможно подкиньте пару статей или примеров как это осуществить можно.
-=Virus=- вне форума   Ответить с цитированием
Старый 14.02.2011, 20:03   #2
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 12,824
Репутация: 2143
По умолчанию

смотря какой формат, но в большинстве случаев можно
__________________
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума   Ответить с цитированием
Старый 14.02.2011, 20:16   #3
raxp
Профессионал
 
Регистрация: 29.09.2009
Сообщений: 9,731
Репутация: 3006
По умолчанию

только если в формате mjpeg.
__________________
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума   Ответить с цитированием
Старый 14.02.2011, 22:29   #4
veniside
Профессионал
 
Регистрация: 03.01.2011
Сообщений: 2,508
Репутация: 868
По умолчанию

> но в большинстве случаев можно

скорее наоборот, в большинстве случае нельзя, более того, не имеет особого смысла. Файл скачивается как обычно, а кодек сам разбирается, где кадры, где звук, где что.
__________________
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума   Ответить с цитированием
Старый 15.02.2011, 00:02   #5
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Адрес: Kirov
Сообщений: 245
Репутация: 28

icq: 567825628
По умолчанию

Цитата:
Сообщение от veniside Посмотреть сообщение
> но в большинстве случаев можно

скорее наоборот, в большинстве случае нельзя, более того, не имеет особого смысла. Файл скачивается как обычно, а кодек сам разбирается, где кадры, где звук, где что.
Можно подробнее о кодеках.
-=Virus=- вне форума   Ответить с цитированием
Старый 15.02.2011, 00:03   #6
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Адрес: Kirov
Сообщений: 245
Репутация: 28

icq: 567825628
По умолчанию

Можно ли узнать перед скачиванием какой формат видео или аудио?
-=Virus=- вне форума   Ответить с цитированием
Старый 15.02.2011, 02:01   #7
veniside
Профессионал
 
Регистрация: 03.01.2011
Сообщений: 2,508
Репутация: 868
По умолчанию

Обычно достаточно стянуть первые 100-200KB, чтобы узнать, какой контейнер (avi, mkv, flv, mov, mpeg), какие потоки и чем они закодированы. После этого инициализировать кодеки и кормить их данными. На сколько я знаю, только avi содержит таблицу со смещениями кадров в файле. Т.к. каждый кадр может занимать разное число байт, то без таблицы нужно просто примерно перемещаться по файлу и пытаться или самому найти начало кадра, или надеятся, что кодек сам поймёт. В mpeg потоках каждый фрейм имеет строгий заголовок, так что с этим обычно проблем нет. Плюс кадры есть ключевые, без которых корректное декодирование последующих невозможно, нужно разбирать где какой. Ну и, естественно, аудио и видео в файле перемешаны, так что читать "только кадры с №1234356 по №1234766" не получится.

В общем, файл будет скачиваться поблочно, а не покадрово, как и любой другой. А потом уже будут разборки скачаных блоков по кадрам.
__________________
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."

Последний раз редактировалось veniside; 15.02.2011 в 02:05.
veniside вне форума   Ответить с цитированием
Старый 15.02.2011, 14:13   #8
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Адрес: Kirov
Сообщений: 245
Репутация: 28

icq: 567825628
По умолчанию

Цитата:
Сообщение от veniside Посмотреть сообщение
Обычно достаточно стянуть первые 100-200KB, чтобы узнать, какой контейнер (avi, mkv, flv, mov, mpeg), какие потоки и чем они закодированы. После этого инициализировать кодеки и кормить их данными. На сколько я знаю, только avi содержит таблицу со смещениями кадров в файле. Т.к. каждый кадр может занимать разное число байт, то без таблицы нужно просто примерно перемещаться по файлу и пытаться или самому найти начало кадра, или надеятся, что кодек сам поймёт. В mpeg потоках каждый фрейм имеет строгий заголовок, так что с этим обычно проблем нет. Плюс кадры есть ключевые, без которых корректное декодирование последующих невозможно, нужно разбирать где какой. Ну и, естественно, аудио и видео в файле перемешаны, так что читать "только кадры с №1234356 по №1234766" не получится.

В общем, файл будет скачиваться поблочно, а не покадрово, как и любой другой. А потом уже будут разборки скачаных блоков по кадрам.
Я так понимаю придётся всё равно полостью качать весь видео файл сразу?
-=Virus=- вне форума   Ответить с цитированием
Старый 15.02.2011, 15:22   #9
veniside
Профессионал
 
Регистрация: 03.01.2011
Сообщений: 2,508
Репутация: 868
По умолчанию

Нет, зачем? HTTP прекрасно справляется с закачкой блока из файла с указанного смещения, указанного размера. Это вам и нужно.
__________________
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума   Ответить с цитированием
Старый 15.02.2011, 17:13   #10
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Адрес: Kirov
Сообщений: 245
Репутация: 28

icq: 567825628
По умолчанию

Цитата:
Сообщение от veniside Посмотреть сообщение
Нет, зачем? HTTP прекрасно справляется с закачкой блока из файла с указанного смещения, указанного размера. Это вам и нужно.
Можно примеры? Если есть исходники.
-=Virus=- вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скачивание файла winsock Horus92 Работа с сетью в Delphi 13 25.02.2011 14:29
Скачивание файла fezilk24 Работа с сетью в Delphi 16 07.02.2011 19:35
Частичное скачивание файла Usov Работа с сетью в Delphi 1 19.10.2009 21:45
Скачивание файла Lemo Помощь студентам 16 28.07.2009 22:54
Скачивание файла с прогрессом CoDeR Работа с сетью в Delphi 2 22.10.2007 09:10


23:52.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru