<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body smarttemplateinserted="true">
    <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?<br>
      <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?<br>
      <br>
      About FAT32 - this is a well-known limitation, of course, we use
      ntfs.<br>
      <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>
    <blockquote type="cite"
      cite="mid:51f214c672e9887d2f1866631c7ea2a85b0d6d3e.camel@ndufresne.ca">
      <pre class="moz-quote-pre" wrap="">Le mercredi 15 septembre 2021 à 11:44 +0300, Артем Семенов via gstreamer-devel a
écrit :
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">Hello, James.
 
 You are wrong, it's not a "low down" windows issue.
 
 I found this:
 
 1. "filesink: fails with matroskamux when writing files larger than 2GiB on
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"
<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>
 
 And it looks like this fix was backported into 1.16 (1.16.3).
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
This one was confusing, this MR was closed, as in the end it was a Meson bug
(regression in the transition to Meson):

<a class="moz-txt-link-freetext" href="https://github.com/mesonbuild/meson/pull/7272">https://github.com/mesonbuild/meson/pull/7272</a>

This is a bit specific to MSys Windows builds, MSVC build should not be
affected.

p.s. Note that the hard limit on FAT is 4G files (unsigned).

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap=""> 
 On 15.09.2021, 09:13:57: 
 
</pre>
        <blockquote type="cite">
          <pre class="moz-quote-pre" wrap="">That is a windows issue that cannot be fixed. (Well it can, but it is low down
in windows)
James
</pre>
        </blockquote>
        <pre class="moz-quote-pre" wrap=""> 
 
</pre>
        <blockquote type="cite">
          <pre class="moz-quote-pre" wrap="">  
</pre>
          <blockquote type="cite">
            <pre class="moz-quote-pre" wrap="">On 15 Sep 2021, at 8:25 am, Артем Семенов via gstreamer-devel
<a class="moz-txt-link-rfc2396E" href="mailto:gstreamer-devel@lists.freedesktop.org"><gstreamer-devel@lists.freedesktop.org></a> wrote:

Hello. 

Windows, gstreamer 1.16.1 mingw x64:

When the output file reaches a size greater than 2048 MB, filesink stops
recording and generates an error:

GST_DEBUG=3

0:19:09.838828958  5464 000002C708342300 WARN                filesink
gstfilesink.c:606:gst_file_sink_event:<filesink> error: Error while seeking
in file "{path_to_output_file}".
0:19:09.838856894  5464 000002C708342300 WARN                filesink
gstfilesink.c:606:gst_file_sink_event:<filesink> error: system error:
Invalid argument

GST_DEBUG=5

1:00:17.891237294  6080 000001CC520A4940 DEBUG               filesink
gstfilesink.c:504:gst_file_sink_do_seek:<filesink> Seeking to offset
2147862966 using fseeko
1:00:17.891284786  6080 000001CC520A4940 DEBUG               filesink
gstfilesink.c:714:gst_file_sink_flush_buffer:<filesink> Flushing out buffer
of size 24
1:00:17.891333954  6080 000001CC520A4940 DEBUG               filesink
gstfilesink.c:658:gst_file_sink_render_buffers:<filesink> writing 1 buffers
(1 memories, 24 bytes) at position 1074029354

1:00:17.912922452  6080 000001CC520A4940 DEBUG               filesink
gstfilesink.c:535:gst_file_sink_do_seek:<filesink> Seeking failed: Invalid
argument
1:00:17.912970224  6080 000001CC520A4940 WARN                filesink
gstfilesink.c:606:gst_file_sink_event:<filesink> error: Error while seeking
in file "{path_to_output_file}".

Obviously, this is due to the fact that the 32-bit version of the fseek
function is used instead of the 64-bit one.

Has this been fixed in subsequent releases?

</pre>
          </blockquote>
        </blockquote>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">

</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>
  </body>
</html>