After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 778397 - Iosassetsrc lacks orientation
Iosassetsrc lacks orientation
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
1.11.1
Other Mac OS
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2017-02-09 14:39 UTC by Nick Kallen
Modified: 2018-11-03 14:04 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Send tag event in create function (1015 bytes, patch)
2017-02-09 14:44 UTC, Nick Kallen
none Details | Review
Send tag event in create function (2.94 KB, patch)
2017-02-09 16:13 UTC, Nick Kallen
none Details | Review
Fix memory leak (901 bytes, patch)
2017-02-10 11:41 UTC, Nick Kallen
none Details | Review
Combo of two prev (2.91 KB, patch)
2017-02-26 09:36 UTC, Nick Kallen
needs-work Details | Review
Does not depend on ARC (2.08 KB, patch)
2017-02-26 09:51 UTC, Nick Kallen
needs-work Details | Review

Description Nick Kallen 2017-02-09 14:39:13 UTC
Images loaded from the iosassetsrc library are not being oriented.

It's unclear why/if the gstjpegdec is not passing along orientation EXIF information (or if such information exists). But this uses the iOS method for getting an asset's orientation and passes it along.
Comment 1 Nick Kallen 2017-02-09 14:44:27 UTC
Created attachment 345337 [details] [review]
Send tag event in create function
Comment 2 Nick Kallen 2017-02-09 14:45:37 UTC
This attachment will actually send the event a few times, because it sends the event whenever reading offset=0. Because typefind and various other elements read the first segment multiple times, this function is called multiple times. That may be undesirable. Let me know what you think.
Comment 3 Nick Kallen 2017-02-09 16:13:04 UTC
Created attachment 345341 [details] [review]
Send tag event in create function

Previous patch was wrong
Comment 4 Nicolas Dufresne (ndufresne) 2017-02-09 19:36:28 UTC
The EXIF are only parsed by jpegparse, which isn't ranked, and isn't plugged. Should fix this to fix that ;-P
Comment 5 Sebastian Dröge (slomo) 2017-02-10 10:51:14 UTC
If it is in the EXIF tags, which is not necessarily true I guess. See https://bugzilla.gnome.org/show_bug.cgi?id=626531 for jpegparse
Comment 6 Sebastian Dröge (slomo) 2017-02-10 10:52:38 UTC
Review of attachment 345341 [details] [review]:

::: sys/applemedia/iosassetsrc.m
@@ +317,3 @@
+                [GST_IOS_ASSET_SRC_ASSET(src) orientation]),
+            NULL));
+    gst_pad_push_event(gst_element_get_static_pad(GST_ELEMENT(src), "src"), orientation_event);

This is leaking the pad, also GST_BASE_SRC_PAD(src) should work

You also have to make sure to merge tag lists. If there are any others provided by this element (are there?)
Comment 7 Nick Kallen 2017-02-10 11:41:20 UTC
Created attachment 345429 [details] [review]
Fix memory leak
Comment 8 Tim-Philipp Müller 2017-02-21 16:39:46 UTC
Comment on attachment 345429 [details] [review]
Fix memory leak

Please squash this into the original patch and update/replace the original patch with a fixed version :)
Comment 9 Nick Kallen 2017-02-26 09:36:10 UTC
Created attachment 346742 [details] [review]
Combo of two prev
Comment 10 Nick Kallen 2017-02-26 09:41:00 UTC
attachment 346742 [details] [review] depends on bug 777847
Comment 11 Nick Kallen 2017-02-26 09:51:37 UTC
Created attachment 346743 [details] [review]
Does not depend on ARC
Comment 12 Nick Kallen 2017-02-26 09:52:12 UTC
attachment 346743 [details] [review] does not depend on bug 777847
Comment 13 Sebastian Dröge (slomo) 2017-02-26 10:15:04 UTC
Review of attachment 346742 [details] [review]:

How does this relate to the other patch? The other one seems to be obsolete by this one?

::: sys/applemedia/iosassetsrc.m
@@ +310,3 @@
   }
 
+  if (offset == 0) {

offset == 0 might not be enough, better add a boolean to remember if you already did this (and reset that boolean when restarting). In pull mode or if there was a seek at the very beginning, offset will never be 0.
Comment 14 Sebastian Dröge (slomo) 2017-02-26 10:16:07 UTC
Erm, the review should've been on the other patch without the ARC bits (which are all handled in the other bug, right?)
Comment 15 Sebastian Dröge (slomo) 2017-03-07 11:41:24 UTC
ARC parts are all done, so let's get a single patch that can be merged here now :)
Comment 16 Sebastian Dröge (slomo) 2017-06-07 07:22:48 UTC
Nick?
Comment 17 GStreamer system administrator 2018-11-03 14:04:47 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/521.