<div dir="ltr"><div>Thank you Clay!</div><div><br></div><div>I use ffmpeg with remote input and local output for first convertion. Here is a simplified algorithm: </div><div>1. Convert with h264 in the highest quality (till 4K) and save it in a transformer server.</div><div>2. Convert into lower quality locally. And get additional data (thumbnails and so on).</div><div>3. Upload all converted videos and additional data into Swift (as you suggested with sub-segments and segments).</div><div><br></div><div>Compressed videos then are available to the client throug the transmuxing servers.</div><div><br></div><div>Best regards,</div><div>Alexandr</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Sep 13, 2016 at 8:55 PM, Clay Gerrard <span dir="ltr"><<a href="mailto:clay.gerrard@gmail.com" target="_blank">clay.gerrard@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote"><span class="">On Tue, Sep 13, 2016 at 10:37 AM, Alexandr Porunov <span dir="ltr"><<a href="mailto:alexandr.porunov@gmail.com" target="_blank">alexandr.porunov@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>Correct me if I am wrong. Algorithm is the next:</div><div>1. Upload 1MB sub-segments (up to 500 sub-segments per segment). After they will be uploaded I will use "copy" request to create one 500MB segment. After that I will delete useless 1MB segments.</div><div>2. Upload up to 240 segments with 500MB and create a manifest for them. </div><div> <br></div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div></div><div>Is it correct? Will this algorithm be suitable for this situation?</div><div><br></div></div></blockquote><div><br></div></span><div>That sounds correct - I think the COPY/bulk-delete is optional - you could also just have the top level SLO point to the sub-segment SLO's manifest directly and leave all of the 1MB chunks stored in Swift as is - could potentially help smooth out the evenness of diskfullness overall.  I think 1MB is big enough to smooth out any connection overhead - but you could test with COPY consolidation of the backend subsegments to objects too.</div><div><br></div><div><div>Whatever works.</div></div><div><br></div><div>Regardless it'll still take awhile to download a 120GB object.  <br></div><div><br></div><div>Do you stream the uncompressed videos directly into the encoder as you upload the compressed format - or stage to disk and re-upload?  What about the playback of compressed videos - mp4 should http-pseudo stream directly to an html5 browser just fine!?</div><div><br></div><div>Cool use case!  Good luck!</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>-Clay</div><div><br></div><div><br></div></font></span></div></div></div>
</blockquote></div><br></div>