<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html style="direction: ltr;">
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
<title></title>
<style type="text/css">body p { margin-bottom: 0cm; margin-top: 0pt; } </style>
</head>
<body style="direction: ltr;"
bidimailui-detected-decoding-type="latin-charset" bgcolor="#ffffff"
text="#000000">
On 08/29/2012 11:53 AM, Mark Kenna wrote:<br>
<blockquote
cite="mid:CAAxE61jduBu2Ki+aQ-_CUCeWuPpYjZ7CtiU7o1zCyMfNDYgV-A@mail.gmail.com"
type="cite">
<div>Can someone tell me how a conversion for live streaming is
possible? Also, I would be doing the file conversion dynamically
in memory which means that I cannot just encode a file,
re-position the MOOV atom and then stream.</div>
</blockquote>
<br>
If you can estimate the needed size of the moov atom, you can
reserve space with the -moov_size option (added in the last year, I
think); this would remove the need for qt-faststart and friends, and
you could do everything in one pass. (There will be wasted space for
sure, but if your estimate is reasonable it will not be too bad)<br>
<br>
Do note, however, that ffmpeg will only write that MOOV atom after
all the data is in the file, so it will not let you start streaming
any earlier than you could with qt-faststart or mp4box.<br>
<br>
If you want immediate live streaming, perhaps HTTPLiveStreaming
(HLS) will be better for you. If you want MP4 output, you'll have to
finish making the file before starting to play it, regardless of
whether it plays immediately when it starts streaming.<br>
<br>
</body>
</html>