Cambiado el comando para obtener fotogramas de un video. Falta calcular timestamp

parent 420968f4
Showing with 10 additions and 5 deletions
......@@ -4,6 +4,7 @@ import 'package:ffmpeg_kit_flutter_new/ffmpeg_kit.dart';
import 'package:ffmpeg_kit_flutter_new/ffmpeg_session.dart';
import 'package:ffmpeg_kit_flutter_new/ffprobe_kit.dart';
import 'package:ffmpeg_kit_flutter_new/ffprobe_session.dart';
import 'package:ffmpeg_kit_flutter_new/return_code.dart';
import 'package:flutter/material.dart';
import 'package:path_provider/path_provider.dart';
......@@ -215,11 +216,15 @@ class _PaginaFotogramaState extends State<PaginaFotograma> {
Future<File> loadFotograma(int fotograma) async {
final directory = await getApplicationSupportDirectory();
FFmpegSession session = await FFmpegKit.executeAsync(
'ffmpeg -i ${widget._archivo.file.absolute.path} -vf "select=eq(n\,$fotograma)" -vframes 1 ${directory.absolute.path}${Platform.pathSeparator}fotograma.png'
);
return File('${directory.absolute.path}${Platform.pathSeparator}fotograma.png');
// Este comando extrae un frame del timestamp dado. Por ahora solo extrae el primer frame
// TODO: CONVERTIR FOTOGRAMA A TIMESTAMP
String pathArchivo = widget._archivo.file.absolute.path;
String pathSalida = '${directory.absolute.path}${Platform.pathSeparator}fotograma.png';
// La opción -y acepta hacer overwrite
// Si se quiere añadir timestamp se hace con -ss 00:00:00
String commando = '-y -i $pathArchivo -frames:v 1 $pathSalida';
FFmpegSession session = await FFmpegKit.executeAsync(commando);
return File(pathSalida).create();
}
Future<void> removeFotograma() async {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment