<div dir="ltr"><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jun 5, 2019 at 8:32 PM David Ing <<a href="mailto:ding@panopto.com">ding@panopto.com</a>> wrote:<br></div><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">I was using 1.14.4 ... I will try to upgrade to 1.16.<div><br></div><div>Just to be clear:  I am relying on the Windows build for 1.16.  Is this change part of the published 1.16 build for windows?</div><div><br></div><blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px"><div><a href="https://gstreamer.freedesktop.org/data/pkg/windows/1.16.0/" target="_blank">https://gstreamer.freedesktop.org/data/pkg/windows/1.16.0/</a></div></blockquote></div></blockquote><div><br></div><div>Yes.</div><div><br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jun 5, 2019 at 3:38 PM Thibault Saunier <<a href="mailto:tsaunier@gnome.org" target="_blank">tsaunier@gnome.org</a>> wrote:<br></div><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>I actually just checked with your file and with 1.16 (which is the version where that feature was introduced) and</div><div><br></div><div>  ges-launch-1.0 +clip file:///home/thiblahute/Downloads/rotate-180.mov</div><div><br></div><div>works just fine and rotation is applied as required.<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jun 5, 2019 at 6:35 PM Mathieu Duponchelle <<a href="mailto:mathieu@centricular.com" target="_blank">mathieu@centricular.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF">
    Hah, nice !<br>
    <br>
    <div class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377moz-cite-prefix">On 6/6/19 12:34 AM, Thibault Saunier
      wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="ltr">
        <div dir="ltr">
          <div>GES should do it automatically since <a href="https://gitlab.freedesktop.org/gstreamer/gst-editing-services/commit/77dac21488f2217c9fc0cb7a7bfba1f5c0ef8789" target="_blank">https://gitlab.freedesktop.org/gstreamer/gst-editing-services/commit/77dac21488f2217c9fc0cb7a7bfba1f5c0ef8789</a>
            can check if that works:<br>
            <br>
          </div>
          <code><code></code></code></div>
        <div>gst-launch-1.0 uridecodebin uri=<a class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377moz-txt-link-freetext">file://your/file.move</a> !
          videoflip ! video-direction=auto ! videoconvert !
          autovideosink <br>
        </div>
        <div><br>
        </div>
        <div>Regards,</div>
        <div><br>
        </div>
        <div>Thibault<br>
        </div>
        <div><br>
        </div>
        <div class="gmail_quote">
          <div dir="ltr" class="gmail_attr">On Wed, Jun 5, 2019 at 6:30
            PM Mathieu Duponchelle <<a href="mailto:mathieu@centricular.com" target="_blank">mathieu@centricular.com</a>>
            wrote:<br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
            <div bgcolor="#FFFFFF"> GES itself will not do that, as a
              standard GES source only uses uridecodebin. The way
              image-orientation<br>
              works is that the demuxer (qtdemux here) will parse the
              tag and forward it downstream. Other elements<br>
              such as videoflip can then use it to actually perform the
              rotation. See the difference in behaviour between<br>
              the following pipelines:<br>
              <br>
              gst-launch-1.0 uridecodebin uri=<a class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377gmail-m_-2278308263519352046moz-txt-link-freetext">file:///home/meh/Downloads/rotate-180.mov</a>
              ! xvimagesink<br>
              gst-launch-1.0 uridecodebin uri=<a class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377gmail-m_-2278308263519352046moz-txt-link-freetext">file:///home/meh/Downloads/rotate-180.mov</a>
              ! videoflip video-direction=auto ! xvimagesink<br>
              <br>
              It could be argued that GES should always add a videoflip
              element with video-direction=auto, but for now<br>
              you can probably add videoflip as an effect :)<br>
              <br>
              <div class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377gmail-m_-2278308263519352046moz-cite-prefix">On
                6/5/19 11:24 PM, David Ing wrote:<br>
              </div>
              <blockquote type="cite">
                <div dir="ltr">Also, here is the output of
                  gst-discoverer-1.0 --verbose
                  <div><br>
                  </div>
                  <div>I highlighted the relevant section which is <span>image
                      orientation: rotate-180</span>.</div>
                  <div>
                    <div><br>
                    </div>
                    <div><font face="courier new, monospace">$
                        gst-discoverer-1.0 --verbose rotate-180.mov<br>
                        Analyzing <a class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377gmail-m_-2278308263519352046moz-txt-link-freetext">file:///C:/Users/ding/Desktop/rotate-180.mov</a><br>
                        Done discovering <a class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377gmail-m_-2278308263519352046moz-txt-link-freetext">file:///C:/Users/ding/Desktop/rotate-180.mov</a><br>
                        <br>
                        Topology:<br>
                          container: video/quicktime<br>
                            audio: audio/mpeg, mpegversion=(int)4,
                        framed=(boolean)true, stream-format=(string)raw,
                        level=(string)2, base-profile=(string)lc,
                        profile=(string)lc, codec_data=(buffer)1208,
                        rate=(int)44100, channels=(int)1<br>
                              Tags:<br>
                                audio codec: MPEG-4 AAC audio<br>
                                maximum bitrate: 64000<br>
                                bitrate: 64000<br>
                                datetime: 2016-03-14T08:26:08Z<br>
                                QT atom: buffer of 34 bytes<br>
                                container format: Quicktime<br>
                        <br>
                              Codec:<br>
                                audio/mpeg, mpegversion=(int)4,
                        framed=(boolean)true, stream-format=(string)raw,
                        level=(string)2, base-profile=(string)lc,
                        profile=(string)lc, codec_data=(buffer)1208,
                        rate=(int)44100, channels=(int)1<br>
                              Additional info:<br>
                                None<br>
                              Stream ID:
                        a2bd37016805819d7874188ad12d70943361aa53b0c7253a2b9813b7f8ab3cb5/002<br>
                              Language: <unknown><br>
                              Channels: 1 (unknown layout)<br>
                              Sample rate: 44100<br>
                              Depth: 32<br>
                              Bitrate: 64000<br>
                              Max bitrate: 64000<br>
                            video: video/x-h264,
                        stream-format=(string)avc, alignment=(string)au,
                        level=(string)4.1, profile=(string)high,
codec_data=(buffer)01640029ffe1001067640029ac5680780227e59a8080808101000528ee04f2c0,
                        width=(int)1920, height=(int)1080,
                        framerate=(fraction)24/1,
                        pixel-aspect-ratio=(fraction)1/1,
                        colorimetry=(string)bt709,
                        interlace-mode=(string)progressive,
                        chroma-format=(string)4:2:0,
                        bit-depth-luma=(uint)8,
                        bit-depth-chroma=(uint)8, parsed=(boolean)true<br>
                              Tags:<br>
                                <span style="background-color:rgb(255,255,0)">image
                          orientation: rotate-180</span><br>
                                video codec: H.264 / AVC<br>
                                bitrate: 17149794<br>
                                datetime: 2016-03-14T08:26:08Z<br>
                                QT atom: buffer of 34 bytes<br>
                                container format: Quicktime<br>
                        <br>
                              Codec:<br>
                                video/x-h264, stream-format=(string)avc,
                        alignment=(string)au, level=(string)4.1,
                        profile=(string)high,
codec_data=(buffer)01640029ffe1001067640029ac5680780227e59a8080808101000528ee04f2c0,
                        width=(int)1920, height=(int)1080,
                        framerate=(fraction)24/1,
                        pixel-aspect-ratio=(fraction)1/1,
                        colorimetry=(string)bt709,
                        interlace-mode=(string)progressive,
                        chroma-format=(string)4:2:0,
                        bit-depth-luma=(uint)8,
                        bit-depth-chroma=(uint)8, parsed=(boolean)true<br>
                              Additional info:<br>
                                None<br>
                              Stream ID:
                        a2bd37016805819d7874188ad12d70943361aa53b0c7253a2b9813b7f8ab3cb5/001<br>
                              Width: 1920<br>
                              Height: 1080<br>
                              Depth: 24<br>
                              Frame rate: 24/1<br>
                              Pixel aspect ratio: 1/1<br>
                              Interlaced: false<br>
                              Bitrate: 17149794<br>
                              Max bitrate: 0<br>
                        <br>
                        Properties:<br>
                          Duration: 0:00:10.955000000<br>
                          Seekable: yes<br>
                          Live: no<br>
                          Tags:<br>
                              audio codec: MPEG-4 AAC audio<br>
                              maximum bitrate: 64000<br>
                              bitrate: 64000<br>
                              datetime: 2016-03-14T08:26:08Z<br>
                              QT atom: buffer of 34 bytes<br>
                              container format: Quicktime<br>
                              image orientation: rotate-180<br>
                              video codec: H.264 / AVC<br>
                        <br>
                        WARNING: no real random source present!</font><br>
                    </div>
                  </div>
                </div>
                <br>
                <div class="gmail_quote">
                  <div dir="ltr" class="gmail_attr">On Wed, Jun 5, 2019
                    at 12:51 PM David Ing <<a href="mailto:ding@panopto.com" target="_blank">ding@panopto.com</a>>
                    wrote:<br>
                  </div>
                  <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">I have an old *.mov file ...
                      <div><br>
                      </div>
                      <div><a href="https://drive.google.com/file/d/1qNm2ISC5qnI3VN0MwemCcb_QjweJAjYF/view?usp=sharing" target="_blank">https://drive.google.com/file/d/1qNm2ISC5qnI3VN0MwemCcb_QjweJAjYF/view?usp=sharing</a><br>
                        <div><br>
                        </div>
                        <div>... which is tagged in a way that indicates
                          it should be rotated when it is displayed. 
                          Below (at end of this message) is an excerpt
                          from an ffprobe command which demonstrates the
                          how the file is tagged (I highlighted the
                          relevant output).</div>
                        <div><br>
                        </div>
                        <div>I am using the file as a GESUriClip inside
                          of a GESTimeline, and the rotation is not
                          being applied.  It comes through upside-down.</div>
                        <div><br>
                        </div>
                        <div><b>My question is</b>:  Is this a bug?  Or
                          am I expected to detect the tags manually and
                          then modify the "video-direction" property of
                          GESVideoSource myself?</div>
                        <div><br>
                        </div>
                        <div>---------------------------------</div>
                        <div>$ <b>ffprobe -v quiet -show_streams
                            rotate-180.mov</b><br>
                          [STREAM]<br>
                          index=0<br>
                          codec_name=h264<br>
                          codec_long_name=H.264 / AVC / MPEG-4 AVC /
                          MPEG-4 part 10<br>
                          profile=High<br>
                          codec_type=video<br>
                          codec_time_base=2191/105200<br>
                          codec_tag_string=avc1<br>
                          codec_tag=0x31637661<br>
                          width=1920<br>
                          height=1080<br>
                          coded_width=1920<br>
                          coded_height=1088<br>
                          has_b_frames=0<br>
                          sample_aspect_ratio=N/A<br>
                          display_aspect_ratio=N/A<br>
                          pix_fmt=yuv420p<br>
                          level=41<br>
                          color_range=tv<br>
                          color_space=bt709<br>
                          color_transfer=bt709<br>
                          color_primaries=bt709<br>
                          chroma_location=left<br>
                          field_order=unknown<br>
                          timecode=N/A<br>
                          refs=1<br>
                          is_avc=true<br>
                          nal_length_size=4<br>
                          id=N/A<br>
                          r_frame_rate=24/1<br>
                          avg_frame_rate=52600/2191<br>
                          time_base=1/600<br>
                          start_pts=0<br>
                          start_time=0.000000<br>
                          duration_ts=6573<br>
                          duration=10.955000<br>
                          bit_rate=17150952<br>
                          max_bit_rate=N/A<br>
                          bits_per_raw_sample=8<br>
                          nb_frames=263<br>
                          nb_read_frames=N/A<br>
                          nb_read_packets=N/A<br>
                          DISPOSITION:default=1<br>
                          DISPOSITION:dub=0<br>
                          DISPOSITION:original=0<br>
                          DISPOSITION:comment=0<br>
                          DISPOSITION:lyrics=0<br>
                          DISPOSITION:karaoke=0<br>
                          DISPOSITION:forced=0<br>
                          DISPOSITION:hearing_impaired=0<br>
                          DISPOSITION:visual_impaired=0<br>
                          DISPOSITION:clean_effects=0<br>
                          DISPOSITION:attached_pic=0<br>
                          DISPOSITION:timed_thumbnails=0<br>
                          <span style="background-color:rgb(255,229,153)">TAG:rotate=180</span><br>
                          TAG:creation_time=2016-03-14T08:26:08.000000Z<br>
                          TAG:language=und<br>
                          TAG:handler_name=Core Media Video<br>
                          TAG:encoder=H.264<br>
                          <span style="background-color:rgb(255,229,153)">[SIDE_DATA]<br>
                            side_data_type=Display Matrix<br>
                            displaymatrix=<br>
                            00000000:       -65536           0          
                            0<br>
                            00000001:            0      -65536          
                            0<br>
                            00000002:    125829120    70778880
                             1073741824<br>
                            <br>
                            rotation=-180<br>
                            [/SIDE_DATA]</span><br>
                          [/STREAM]<br>
                        </div>
                      </div>
                    </div>
                  </blockquote>
                </div>
                <br>
                <fieldset class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377gmail-m_-2278308263519352046mimeAttachmentHeader"></fieldset>
                <pre class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377gmail-m_-2278308263519352046moz-quote-pre">_______________________________________________
gstreamer-devel mailing list
<a class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377gmail-m_-2278308263519352046moz-txt-link-abbreviated" href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.freedesktop.org</a>
<a class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377gmail-m_-2278308263519352046moz-txt-link-freetext" href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a></pre>
              </blockquote>
              <br>
            </div>
            _______________________________________________<br>
            gstreamer-devel mailing list<br>
            <a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.freedesktop.org</a><br>
            <a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a></blockquote>
        </div>
      </div>
      <br>
      <fieldset class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377mimeAttachmentHeader"></fieldset>
      <pre class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377moz-quote-pre">_______________________________________________
gstreamer-devel mailing list
<a class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377moz-txt-link-abbreviated" href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.freedesktop.org</a>
<a class="gmail-m_-5367750214882101900gmail-m_3547168681609545433gmail-m_6130254501409421377moz-txt-link-freetext" href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a></pre>
    </blockquote>
    <br>
    <br>
  </div>

_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a></blockquote></div>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a></blockquote></div>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a></blockquote></div></div>