<html><head>
</head>
<body smarttemplateinserted="true"><div>Le mercredi 15 septembre 2021 à 17:18 +0300, Артем Семенов a écrit :</div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><div id="smartTemplate4-quoteHeader">Hello, Nicolas.<br> <br> Thanks! <br> <br> The reason for this error was obvious, but the reasons for its occurrence were not obvious for me.<br> <br> Ultimately, gstreamer-1.0-mingw-x86_64-1.16.3.msi prebuilt binary does not contain this error, am I right?</div></blockquote><div><br></div><div>I think it's faster to just test it then to dig into history:</div><div><br></div><div> gst-launch-1.0.exe videotestsrc ! filesink location=bigfile.yuv</div><div><br></div><div>If it's using older meson, it will stop at 2G, otherwise it will up your hard-drive :-D</div><div><br></div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><div id="smartTemplate4-quoteHeader"> <br> I don't want to use the msvc build, in our projects, we are now trying to completely switch to gcc and cmake, taking into account the urgent need for cross-platform.<br> <br> By the way, was the performance of gstreamer compared in the mingw vs msvc build on windows?</div></blockquote><div><br></div><div>I haven't heard of any scientific measure of performance comparing MingW and MSCV. For most of the work, I would expect similar results (though larger binary). Note that the binary for 1.16 might be built with an old Mingw, I can't remember when we updated that toolchain in your build system. There is plugins that cannot be built without MSCV, and but opposite is also true.</div><div><br></div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><div id="smartTemplate4-quoteHeader"> <br> About FAT32 - this is a well-known limitation, of course, we use ntfs.</div></blockquote><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><div id="smartTemplate4-quoteHeader"> <br> Thank you again!<br> <br> On 15.09.2021, 15:59:09:<br><!--<div style="border: 1px gray solid; padding: 5px; margin: 5px 0px; max-width: 850px;"> <b>From:</b> Nicolas Dufresne Via Gstreamer-Devel <gstreamer-devel@lists.freedesktop.org> <br> <b>Sent:</b> Среда, Сентября 15, 2021 3:59PM <br> <b>To:</b> Discussion Of The Development Of And With Gstreamer <gstreamer-devel@lists.freedesktop.org><br> <b>Cc:</b> Nicolas Dufresne <nicolas@ndufresne.ca>, Артем Семенов <artem.semenov@jarillolabs.com> <br><br> <b>Subject:</b> Re: filesink cannot write output file more than 2048 MB, windows, gstreamer 1.16.1 mingw x64 <br></div>--></div><div> <br></div><blockquote type="cite" cite="mid:51f214c672e9887d2f1866631c7ea2a85b0d6d3e.camel@ndufresne.ca" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre>Le mercredi 15 septembre 2021 à 11:44 +0300, Артем Семенов via gstreamer-devel a</pre><pre>écrit :</pre><div> <br></div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre>Hello, James.</pre><pre> </pre><pre> You are wrong, it's not a "low down" windows issue.</pre><pre> </pre><pre> I found this:</pre><pre> </pre><pre> 1. "filesink: fails with matroskamux when writing files larger than 2GiB on</pre><pre>Windows<a class="moz-txt-link-rfc2396E" href="https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/579 2.">"
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/579
2. "</a>meson: Ensure large file support for fseeko"</pre><pre><a class="moz-txt-link-freetext" href="https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/517">https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/517</a></pre><pre> </pre><pre> And it looks like this fix was backported into 1.16 (1.16.3).</pre></blockquote><pre>This one was confusing, this MR was closed, as in the end it was a Meson bug</pre><pre>(regression in the transition to Meson):</pre><pre><br></pre><pre><a class="moz-txt-link-freetext" href="https://github.com/mesonbuild/meson/pull/7272">https://github.com/mesonbuild/meson/pull/7272</a></pre><pre><br></pre><pre>This is a bit specific to MSys Windows builds, MSVC build should not be</pre><pre>affected.</pre><pre><br></pre><pre>p.s. Note that the hard limit on FAT is 4G files (unsigned).</pre><pre><br></pre><div> <br></div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre> </pre><pre> On 15.09.2021, 09:13:57: </pre><pre> </pre><div> <br></div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre>That is a windows issue that cannot be fixed. (Well it can, but it is low down</pre><pre>in windows)</pre><pre>James</pre></blockquote><pre> </pre><pre> </pre><div> <br></div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre> </pre><div> <br></div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre>On 15 Sep 2021, at 8:25 am, Артем Семенов via gstreamer-devel</pre><pre><a class="moz-txt-link-rfc2396E" href="mailto:gstreamer-devel@lists.freedesktop.org"><gstreamer-devel@lists.freedesktop.org></a> wrote:</pre><pre><br></pre><pre>Hello. </pre><pre><br></pre><pre>Windows, gstreamer 1.16.1 mingw x64:</pre><pre><br></pre><pre>When the output file reaches a size greater than 2048 MB, filesink stops</pre><pre>recording and generates an error:</pre><pre><br></pre><pre>GST_DEBUG=3</pre><pre><br></pre><pre>0:19:09.838828958 5464 000002C708342300 WARN filesink</pre><pre>gstfilesink.c:606:gst_file_sink_event:<filesink> error: Error while seeking</pre><pre>in file "{path_to_output_file}".</pre><pre>0:19:09.838856894 5464 000002C708342300 WARN filesink</pre><pre>gstfilesink.c:606:gst_file_sink_event:<filesink> error: system error:</pre><pre>Invalid argument</pre><pre><br></pre><pre>GST_DEBUG=5</pre><pre><br></pre><pre>1:00:17.891237294 6080 000001CC520A4940 DEBUG filesink</pre><pre>gstfilesink.c:504:gst_file_sink_do_seek:<filesink> Seeking to offset</pre><pre>2147862966 using fseeko</pre><pre>1:00:17.891284786 6080 000001CC520A4940 DEBUG filesink</pre><pre>gstfilesink.c:714:gst_file_sink_flush_buffer:<filesink> Flushing out buffer</pre><pre>of size 24</pre><pre>1:00:17.891333954 6080 000001CC520A4940 DEBUG filesink</pre><pre>gstfilesink.c:658:gst_file_sink_render_buffers:<filesink> writing 1 buffers</pre><pre>(1 memories, 24 bytes) at position 1074029354</pre><pre><br></pre><pre>1:00:17.912922452 6080 000001CC520A4940 DEBUG filesink</pre><pre>gstfilesink.c:535:gst_file_sink_do_seek:<filesink> Seeking failed: Invalid</pre><pre>argument</pre><pre>1:00:17.912970224 6080 000001CC520A4940 WARN filesink</pre><pre>gstfilesink.c:606:gst_file_sink_event:<filesink> error: Error while seeking</pre><pre>in file "{path_to_output_file}".</pre><pre><br></pre><pre>Obviously, this is due to the fact that the 32-bit version of the fseek</pre><pre>function is used instead of the 64-bit one.</pre><pre><br></pre><pre>Has this been fixed in subsequent releases?</pre><pre><br></pre></blockquote></blockquote></blockquote><pre><br></pre></blockquote><div id="smartTemplate4-template"><span class="moz-txt-tag">-- <br></span>With best regards, <br> Artem Semenov <a class="moz-txt-link-freetext" href="mailto:artem.semenov@jarillolabs.com">mailto:artem.semenov@jarillolabs.com</a></div><div> </div></blockquote><div><br></div><div><span></span></div></body></html>