En fait, j'ai un appareil qui enregistre l'audio et la vidéo. lorsque l'enregistrement est démarré, le fichier vidéo a également commencé à persister sur le disque dur.
Mais si l'appareil s'éteint malheureusement entre l'enregistrement. Le fichier vidéo est corrompu et donne une erreur: Ce fichier ne contient pas de flux lisible
J'utilise le système Ubuntu
et enregistre la vidéo avec ffmpeg
Est-ce que quelqu'un peut m'aider..!!!
J'utilise la webcam pour enregistrer la vidéo et le microphone Bluetooth pour l'audio à l'aide du ffmpeg. Voici la commande que j'utilise pour stocker l'enregistrement audio et vidéo sur un autre périphérique (disque dur):
ffmpeg -loglevel warning -y -i /home/prakash/../../output/2013-10-07T22-39-05/right_cam.mp4 -i /home/prakash/../.. output/2013-10-07T22-39-05/left_cam.mp4 -filter_complex '[1:0] pad=108:28:5:2:black [padvidleft]; [0:0] setpts=PTS+0.8786787543577881/TB [right_cam_pts]; [padvidleft][right_cam_pts] overlay=544:0 [mergedvid] ; [1:2] channelsplit [ll][lr]; [ll][lr] amix [leftmix];
[1:3] channelsplit [rl][rr]; [rl][rr] amix [rightmix];
[leftmix][rightmix] amix [cam_all];
[1:4] channelsplit [btl][btr] ; [btl][btr] amix [btmix] ;
[btmix][cam_all] join [bt_mixcam]' -f mp4 -crf 20 -r 24 -pix_fmt yuv420p -vcodec libx264 -vprofile baseline -map [mergedvid] -map [bt_mixcam] -map 1:2 -map 1:3 -map 1:4 /home/prakash/../../output/combos/combo-2013-10-07T22-39-05_dgrt6546533w471567f880abf287a855c_1088x288.mp4
Si l'enregistrement est démarré et au milieu, nous éteignons l'appareil d'enregistrement. La vidéo et l'audio enregistrés sont conservés sur le disque dur, mais ils ne peuvent pas être lus. Lorsque nous essayons de lire cet enregistrement, le vlc donne l’erreur this files contains no playable stream
Il existe une autre excellente solution que j'ai. Cela ne corromp pas les fichiers audio et vidéo de quelque manière que ce soit. Vous pouvez utiliser -f mpegts
au lieu de -f mp4
dans ffmpeg
Vous devriez essayer un autre format de conteneur de sortie tel que MKV.
Votre -f mp4
semble superflu (sauf s’il s’agit d’une partie d’un script dont le nom de sortie est une partie d’une variable), mais si vous souhaitez continuer à utiliser cette option, changez-la en -f matroska
et donnez votre sortie. l'extension mkv au lieu de mp4.
MP4 nécessite l'écriture d'informations supplémentaires dans le fichier, mais cela ne peut se produire qu'une fois l'encodage correctement effectué. Si l'encodage ne se termine pas correctement, les informations risquent de ne pas être présentes, ce qui rendrait la sortie non lisible.