Я хочу манипулировать изображением, которое находится в пределах предопределенного набора времени воспроизведения (например, от метки 3 секунды до 6 секунд). Однако я не могу получить время воспроизведения в модуле видеофильтра. Структура picture_t содержит элемент «дата», который содержит дату отображения, но не временную метку, начинающуюся с нуля, когда началось воспроизведение. По-видимому, я не могу определить, какова текущая позиция воспроизведения, особенно после того, как пользователь выполняет операцию поиска с помощью строки поиска.Как получить текущее время воспроизведения в модуле видеофильма VLC
Итак, как определить текущую позицию воспроизведения в модуле «видеофильтр», который остается стабильным даже после операции поиска?
Любая помощь очень ценится!
Редактировать: Вот пример кода, который будет просто отбрасывать кадры от 60 секунд до 120 секунд. Если я ищу операцию, эти отметки в 60 и 120 секунд больше не действительны.
picture_t *Filter(filter_t *p_filter, picture_t *p_pic)
{
filter_sys_t *p_sys = p_filter->p_sys;
// save the start date
if (p_sys->start == -1)
p_sys->start = p_pic->date;
if (p_pic->date > p_sys->start + 60000000 && p_pic->date < p_sys->start + 120000000)
{
picture_Release(p_pic);
return NULL;
}
return p_pic;
}
Покажите нам код, который вы получили до сих пор;) – Veve
Вы можете увидеть пример кода выше, по крайней мере, сделать моя точка. ;) – Graviton