Comment enregistrer un flux UDP avec FFMPEG en morceaux?
Je suis à la recherche d'un moyen pour enregistrer une vidéo flux UDP en utilisant ffmpeg, mais en 10mn morceaux.
J'utilise actuellement les suivants pour obtenir 10mn de la vidéo (h264 transcodage).
"ffmpeg -i udp://239.0.77.15:5000 -map 0:0 -carte 0:1 -s, 640 x 360-vcodec libx264 -g 100 -vb 500000 -r 25 -strict expérimentale -vf yadif -acodec aac -ab 96000 -ac 2 -t 600 -y /media/test.m4 "
Mon problème est que l'utilisation de la ligne de commande ffmpeg a besoin de temps pour se resynchroniser avec le flux udp perdre 2 secondes de la vidéo à chaque fois. Est-il normal ?
Aucune idée si il y a un moyen de le faire en ligne de commande ou devrais-je essayé d'utiliser la version de l'API ?
Merci d'avance
OriginalL'auteur user1394281 | 2012-05-14
Vous devez vous connecter pour publier un commentaire.
Ok trouvé.
Récemment ffmpeg ajouter un segmenter, voici la syntaxe:
-f segment
: dites-ffmpeg pour utiliser le segmenter-segment_time
: chunk-size dans la deuxièmeVous pouvez utiliser l'incrémentation automatique du nom de fichier avec quelque chose comme %03d (000,001,002,003...).
Voici ma ligne de transcoder un UDP MPEGTS stream, en H264+AAC) et l'enregistrer dans le fichier de morceau (60 secondes):
Je me demandais lors de la conversion de+l'enregistrement de plusieurs UDP / RSTP flux mp4 serait-ce causer beaucoup de l'utilisation de la RAM? Je veux essayer d'expérimenter avec 8 sur un ordinateur.
OriginalL'auteur user1394281
C'est une meilleure façon:
Par le code de ffmpeg fait de la série de fichiers de sortie à l'aide de temps système.
OriginalL'auteur alireza akbaribayat