On Mon, Jun 4, 2018 at 6:06 PM, Sana Tafleen <[email protected]> wrote:
> Hello, > > I am sending a UDP stream to the destination and saving the contents of the > FFMPEG output to a text file. I run the ffmpeg command in a loop as > follows, > > > while : > do > echo `ffmpeg -hide_banner -f v4l2 -i /dev/video0 -c:v libx264 -f > mpegts tcp://ip:port -c:v libx264 /path/to/.mp4 2> out.txt -y` > done > > > > When I disconnect the cable connected the destination, the above ffmpeg > process stops and a new one starts oevrwriting the content of the output > that has been saved. And when I reconnect the cable, a new ffmpeg process > starts and its output is what is displayed in the out.txt file. > > I need the output of each ffmpeg process that runs to an output file. Can > anyone please suggest me a way to do it? > This part of the command, '2> out.txt ' says (a) redirect stderr and not stdout, to out.txt. And (b) overwrite the previous contents. You can append instead of overwrite by using '2>> out.txt ' . I would not expect ffmpeg to create a new process in that loop but I have no experience with mpegts. I would try -stdin since I have seen unexpected behavior without it in loops. A long shot would be using nohup, if its a hangup of some sort. I would try that if I was still stuck. Then strace on the command to see why it was creating the extra process. Kind regards, Robert > _______________________________________________ > ffmpeg-user mailing list > [email protected] > http://ffmpeg.org/mailman/listinfo/ffmpeg-user > > To unsubscribe, visit link above, or email > [email protected] with subject "unsubscribe". _______________________________________________ ffmpeg-user mailing list [email protected] http://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
