<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Il 09/11/2017 15:09, William Salibrici
ha scritto:<br>
</div>
<blockquote type="cite"
cite="mid:MWHPR08MB2989504A29041FA6154831E4B5570@MWHPR08MB2989.namprd08.prod.outlook.com">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Consolas;
panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
color:black;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
pre
{mso-style-priority:99;
mso-style-link:"HTML Preformatted Char";
margin:0in;
margin-bottom:.0001pt;
font-size:10.0pt;
font-family:"Courier New";
color:black;}
span.EmailStyle17
{mso-style-type:personal;
font-family:"Calibri",sans-serif;
color:windowtext;}
span.HTMLPreformattedChar
{mso-style-name:"HTML Preformatted Char";
mso-style-priority:99;
mso-style-link:"HTML Preformatted";
font-family:"Consolas",serif;
color:black;}
span.EmailStyle20
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:#1F497D;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal"><span style="color:#1F497D">Hi Nicola,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Thank you for
your reply.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Yes I am using
GStreamer to create my mp4 recording.
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">I will look
into your suggestion.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">I checked the
Gstreamer documentation for a qtmoovrecover example pipeline
but there isn’t one there.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Can you send me
an example pipeline?</span></p>
</div>
</blockquote>
<br>
very simple:<br>
<br>
gst-launch-1.0 qtmoovrecover recovery-input=... broken-input=...
fixed-output=....<br>
<br>
Nicola<br>
<br>
<blockquote type="cite"
cite="mid:MWHPR08MB2989504A29041FA6154831E4B5570@MWHPR08MB2989.namprd08.prod.outlook.com">
<div class="WordSection1">
<p class="MsoNormal"><span style="color:#1F497D"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Regards, <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">--Bill<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #E1E1E1
1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="color:windowtext">From:</span></b><span
style="color:windowtext"> gstreamer-devel
[<a class="moz-txt-link-freetext" href="mailto:gstreamer-devel-bounces@lists.freedesktop.org">mailto:gstreamer-devel-bounces@lists.freedesktop.org</a>]
<b>On Behalf Of </b>Mailing List SVR<br>
<b>Sent:</b> Thursday, November 09, 2017 2:54 AM<br>
<b>To:</b> <a class="moz-txt-link-abbreviated" href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br>
<b>Subject:</b> Re: mp4 file repair - UPDATE 1<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">Hi,<br>
<br>
if you are using GStreamer to create your mp4 recording you
can set moov-recovery-file property on qtmux and then use
qtmoovrecover element if the recording is unexpectedly
interrupted to recover it,<br>
<br>
Nicola<br>
<br>
Il 08/11/2017 19:43, William Salibrici ha scritto:<span
style="font-size:12.0pt"><o:p></o:p></span></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">I am creating mp4 recordings in a known
format.<o:p></o:p></p>
<p class="MsoNormal">Below is the discover tool result [short
version] for a test recording:<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Topology:<o:p></o:p></p>
<p class="MsoNormal"> container: Quicktime<o:p></o:p></p>
<p class="MsoNormal"> audio: MPEG-4 AAC<o:p></o:p></p>
<p class="MsoNormal"> video: H.264 (Constrained Baseline
Profile)<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Properties:<o:p></o:p></p>
<p class="MsoNormal"> Duration: 0:00:48.000000000<o:p></o:p></p>
<p class="MsoNormal"> Seekable: yes<o:p></o:p></p>
<p class="MsoNormal"> Tags:<o:p></o:p></p>
<p class="MsoNormal"> audio codec: MPEG-4 AAC audio<o:p></o:p></p>
<p class="MsoNormal"> bitrate: 21346<o:p></o:p></p>
<p class="MsoNormal"> language code: en<o:p></o:p></p>
<p class="MsoNormal"> datetime: 2017-10-25T15:04:50Z<o:p></o:p></p>
<p class="MsoNormal"> container format: ISO MP4/M4A<o:p></o:p></p>
<p class="MsoNormal"> video codec: H.264 / AVC<o:p></o:p></p>
<p class="MsoNormal"> maximum bitrate: 5222160<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">The problem is that sometimes I will get
a recording that was not finalized so the data is there but
the recording is unreadable.<o:p></o:p></p>
<p class="MsoNormal">However, the audio and video formats are
known.<o:p></o:p></p>
<p class="MsoNormal">The question is this: does anyone know of
a repair tool that can go over the existing data in the
recording file and create the proper moov atom at the end of
the file?<o:p></o:p></p>
<p class="MsoNormal">Thank you for your help,<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">--Bill<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">UPDATE 1 -><o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">I failed to clarify in my first post that
I’m interested to know if anyone in the gstreamer
development community has done any kind of mp4 file repair
using gstreamer elements or gstreamer source code. I can
google for repair tools but that’s not what I want. <o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">I need some c/c++ code to do this repair.
I can dig into the mp4mux and discoverer source code to see
what’s going on but that’s a pretty big task. I’m thinking
if anyone has already done some work in this area I could
avoid reinventing the wheel so to speak.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Sorry about that.<o:p></o:p></p>
<p class="MsoNormal">Thanks again for any help,<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Bill<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:12.0pt;font-family:"Times New
Roman",serif"><br>
<br>
<br>
<o:p></o:p></span></p>
<pre>_______________________________________________<o:p></o:p></pre>
<pre>gstreamer-devel mailing list<o:p></o:p></pre>
<pre><a href="mailto:gstreamer-devel@lists.freedesktop.org" moz-do-not-send="true">gstreamer-devel@lists.freedesktop.org</a><o:p></o:p></pre>
<pre><a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" moz-do-not-send="true">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><o:p></o:p></pre>
</blockquote>
<p class="MsoNormal"><span
style="font-size:12.0pt;font-family:"Times New
Roman",serif"><o:p> </o:p></span></p>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
gstreamer-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a>
<a class="moz-txt-link-freetext" href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a>
</pre>
</blockquote>
<br>
</body>
</html>