Как извлечь снимок экрана из видео в iPhone SDK?

Я хотел бы иметь возможность сделать снимок экрана MPEG, записанного с помощью камеры iPhone, через заданные промежутки времени.

Я видел несколько способов сделать это; а именно компиляция и использование FFmpeg (Использование библиотеки FFMPEG с iPhone SDK для видео кодировка), однако, похоже, довольно сложно соблюдать LGPL (http://ffmpeg.org/legal.html) для коммерческого использования.

Это условие контракта в значительной степени делает его бесполезным для нас:

В: нормально ли включить все ядро ​​FFmpeg в мой собственный коммерческий продукт?

A: здесь у вас может быть проблема. Были случаи, когда компании использовали FFmpeg в своих продуктах. Эти компании выяснили, что как только вы начнете пытаться зарабатывать деньги на запатентованных технологиях, владельцы патентов придут после уплаты лицензионных сборов. Примечательно, что MPEG LA бдительно и старательно собирает данные о технологиях, связанных с MPEG.

Есть ли другой способ? - или просто получая доступ к слою рендеринга MPEG, собираюсь ли я «зарабатывать деньги на запатентованных технологиях»?

Как обычно - любая помощь в этом будет принята с благодарностью.

Ваше здоровье!


person Nick Cartwright    schedule 04.02.2010    source источник


Ответы (2)


Да, вы можете это сделать - если я не ошибаюсь, начиная с iOS 3.2 ... по крайней мере, для видео, которые есть в вашей библиотеке. После загрузки фильма в объект MPMoviePlayerController сделайте следующее.

UIImage *aThumbnail = [player thumbnailImageAtTime:timeCode timeOption:MPMovieTimeOptionExact];

//timeCode is a time within de video length, for example: 3.12 seconds.
//player is the MPMoviePlayerController object.
person Duck    schedule 09.01.2011

К сожалению, не существует официального способа захватывать кадры изображения с камеры в реальном времени.

Я рекомендую вам отправить отчет об ошибке / запрос функции в Apple. Многие хотят этого. Если многие люди запрашивают конкретную функцию, они могут подумать о том, чтобы действительно добавить ее.

person Stefan Arentz    schedule 04.02.2010
comment
Спасибо, St3fan ... Я просто подумал, что оставлю этот вопрос на неделю, пока я согласился, что на самом деле нет никакого способа добиться этого! N - person Nick Cartwright; 12.02.2010