gst-docs issueshttps://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues2021-09-24T16:20:04Zhttps://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/71Insufficient license/copyright information in tarball2021-09-24T16:20:04ZSebastian DrögeInsufficient license/copyright information in tarball* It's unclear which license applies to which files (both assets and actual docs)
* There are no copyright notices at all, which are IIRC required for the MIT/BSD licenses at least* It's unclear which license applies to which files (both assets and actual docs)
* There are no copyright notices at all, which are IIRC required for the MIT/BSD licenses at leasthttps://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/70Source of various JavaScript code missing from tarball2021-09-24T16:20:03ZSebastian DrögeSource of various JavaScript code missing from tarballVarious JavaScript code only exists as minified versionsVarious JavaScript code only exists as minified versionshttps://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/67application-development/advanced/pipeline-manipulation: deadlock possible in ...2021-09-24T16:20:03ZNirbheek Chauhannirbheek.chauhan@gmail.comapplication-development/advanced/pipeline-manipulation: deadlock possible in event_probe_cb()We're calling `gst_element_set_state()` from a pad probe, which can deadlock. This should be done from an idle probe.
https://gstreamer.freedesktop.org/documentation/application-development/advanced/pipeline-manipulation.html?gi-languag...We're calling `gst_element_set_state()` from a pad probe, which can deadlock. This should be done from an idle probe.
https://gstreamer.freedesktop.org/documentation/application-development/advanced/pipeline-manipulation.html?gi-language=c#changing-elements-in-a-pipelineNirbheek Chauhannirbheek.chauhan@gmail.comNirbheek Chauhannirbheek.chauhan@gmail.comhttps://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/65Add update-symbol-list target2021-09-24T16:20:03ZTim-Philipp Müllertim@centricular.comAdd update-symbol-list targetFollow-up from https://gitlab.freedesktop.org/gstreamer/gst-docs/-/merge_requests/100#note_557005Follow-up from https://gitlab.freedesktop.org/gstreamer/gst-docs/-/merge_requests/100#note_557005https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/64Add Rust/Python (others?) GStreamer plugin writing tutorials2021-09-24T16:20:02ZSebastian DrögeAdd Rust/Python (others?) GStreamer plugin writing tutorials@meh wrote Python ones, I wrote some Rust ones. Would be good to have them as part of the normal documentation pages.@meh wrote Python ones, I wrote some Rust ones. Would be good to have them as part of the normal documentation pages.https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/63Add Rust plugin size reduction and cross-compilation documentation2021-09-24T16:20:02ZSebastian DrögeAdd Rust plugin size reduction and cross-compilation documentationCC @gdesmott
Based on the blog posts on the Collabora blog. These would be useful to have as proper documentation so people can easily find it and it can also be updated easily.CC @gdesmott
Based on the blog posts on the Collabora blog. These would be useful to have as proper documentation so people can easily find it and it can also be updated easily.Guillaume DesmottesGuillaume Desmotteshttps://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/62Make tutorials language-agnostic2021-09-24T16:20:02ZSebastian DrögeMake tutorials language-agnosticCC @meh
There are already ports of most (all?) of the tutorials in C# and Rust. It would be nice to have a way to see all 3 languages (and potentially more) in the docs :)CC @meh
There are already ports of most (all?) of the tutorials in C# and Rust. It would be nice to have a way to see all 3 languages (and potentially more) in the docs :)https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/60Toolkit integration tutorial should mention GTK/QML/etc sinks2021-09-24T16:20:02ZSebastian DrögeToolkit integration tutorial should mention GTK/QML/etc sinksThis one here: https://gstreamer.freedesktop.org/documentation/tutorials/basic/toolkit-integration.html?gi-language=c#a-media-player-in-gtk
The GTK example should probably also just use the GTK sink instead of the videooverlay acrobatics.This one here: https://gstreamer.freedesktop.org/documentation/tutorials/basic/toolkit-integration.html?gi-language=c#a-media-player-in-gtk
The GTK example should probably also just use the GTK sink instead of the videooverlay acrobatics.https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/58Document how to cross-compile gst-build to linux2020-04-28T09:16:26ZCharles ChanDocument how to cross-compile gst-build to linuxhello!
I am trying cross-compiling this gstreamer for an arm-target-board for about two days.
I must to say that the meson is not ready for cross-compiling. At least short for guide-documents for cross-compiling.
So could you add the c...hello!
I am trying cross-compiling this gstreamer for an arm-target-board for about two days.
I must to say that the meson is not ready for cross-compiling. At least short for guide-documents for cross-compiling.
So could you add the configuration.ac back before meson could give more help for cross-compiling?https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/52Plugin folders for Windows Installation2023-05-24T12:32:24ZJack McKernanPlugin folders for Windows InstallationThe [Windows installation](https://gitlab.freedesktop.org/gstreamer/gst-docs/blob/master/markdown/installing/on-windows.md) page lists `%HOMEDRIVE%%HOMEFOLDER%/.gstreamer-1.0/plugins` as a location that GStreamer looks for plugins. Shoul...The [Windows installation](https://gitlab.freedesktop.org/gstreamer/gst-docs/blob/master/markdown/installing/on-windows.md) page lists `%HOMEDRIVE%%HOMEFOLDER%/.gstreamer-1.0/plugins` as a location that GStreamer looks for plugins. Should this be `%HOMEDRIVE%%HOMEPATH%/...`?
As far as I can tell, `HOMEFOLDER` does not exist. `HOMEPATH` does, however, and seems to provide the desired utility.https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/49deadlock generating plugin documentation if done from outside devenv2021-09-24T16:20:01ZMatthew Watersmatthew@centricular.comdeadlock generating plugin documentation if done from outside devenv```
Thread 1 (Thread 0x7f7a71fa6740 (LWP 2059862)):
#0 0x00007f7a72789e9d in syscall () at /usr/lib/libc.so.6
#1 0x00007f7a7287345d in () at /usr/lib/libglib-2.0.so.0
#2 0x00007f7a72a64aa0 in gst_init_check (argc=0x5569fd9bd0a0, argv...```
Thread 1 (Thread 0x7f7a71fa6740 (LWP 2059862)):
#0 0x00007f7a72789e9d in syscall () at /usr/lib/libc.so.6
#1 0x00007f7a7287345d in () at /usr/lib/libglib-2.0.so.0
#2 0x00007f7a72a64aa0 in gst_init_check (argc=0x5569fd9bd0a0, argv=0x5569fd9bd0c0, err=0x7ffc1eb7fc40) at ../subprojects/gstreamer/gst/gst.c:414
#3 0x00007f7a72a64bc4 in gst_init (argc=<optimized out>, argv=<optimized out>) at ../subprojects/gstreamer/gst/gst.c:471
#4 0x00007f7a724aa6d0 in ffi_call_unix64 () at /usr/lib/libffi.so.6
#5 0x00007f7a724aa0a0 in ffi_call () at /usr/lib/libffi.so.6
#6 0x00007f7a410682f4 in () at /usr/lib/python3.7/site-packages/gi/_gi.cpython-37m-x86_64-linux-gnu.so
#7 0x00007f7a410678d2 in () at /usr/lib/python3.7/site-packages/gi/_gi.cpython-37m-x86_64-linux-gnu.so
#8 0x00007f7a413f293c in _PyObject_FastCallKeywords () at /usr/lib/libpython3.7m.so.1.0
#9 0x00007f7a413f39aa in () at /usr/lib/libpython3.7m.so.1.0
#10 0x00007f7a4142acfd in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.7m.so.1.0
#11 0x00007f7a413e28b3 in _PyFunction_FastCallKeywords () at /usr/lib/libpython3.7m.so.1.0
#12 0x00007f7a413f3820 in () at /usr/lib/libpython3.7m.so.1.0
#13 0x00007f7a4142f222 in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.7m.so.1.0
#14 0x00007f7a413e1888 in _PyEval_EvalCodeWithName () at /usr/lib/libpython3.7m.so.1.0
#15 0x00007f7a413e27aa in PyEval_EvalCodeEx () at /usr/lib/libpython3.7m.so.1.0
#16 0x00007f7a414770fc in PyEval_EvalCode () at /usr/lib/libpython3.7m.so.1.0
#17 0x00007f7a416fa3ce in load_python_formatters () at ../subprojects/gst-editing-services/ges/ges-formatter.c:612
#18 0x00007f7a416fa3ce in _init_formatter_assets () at ../subprojects/gst-editing-services/ges/ges-formatter.c:654
#19 0x00007f7a416faca1 in ges_asset_cache_init_unlocked () at ../subprojects/gst-editing-services/ges/ges-asset.c:480
#20 0x00007f7a416fd81e in ges_asset_cache_init_unlocked () at ../subprojects/gst-editing-services/ges/ges-asset.c:492
#21 0x00007f7a416fd81e in _get_type_entries () at ../subprojects/gst-editing-services/ges/ges-asset.c:492
#22 0x00007f7a416fd81e in ges_list_assets (filter=Python Exception <class 'gdb.error'> No type named TypeNode.:
) at ../subprojects/gst-editing-services/ges/ges-asset.c:1403
#23 0x00007f7a4176b30c in ges_demux_get_sinkpad_caps () at ../subprojects/gst-editing-services/plugins/ges/gesdemux.c:83
#24 0x00007f7a4176b30c in ges_demux_class_init (self_class=<optimized out>) at ../subprojects/gst-editing-services/plugins/ges/gesdemux.c:194
#25 0x00007f7a4176b30c in ges_demux_class_intern_init (klass=<optimized out>) at ../subprojects/gst-editing-services/plugins/ges/gesdemux.c:65
#26 0x00007f7a72995e72 in g_type_class_ref () at /usr/lib/libgobject-2.0.so.0
#27 0x00007f7a72a9579c in gst_element_register (plugin=plugin@entry=0x5569fc756750, name=name@entry=0x7f7a4176d007 "gesdemux", rank=rank@entry=256, type=Python Exception <class 'gdb.error'> No type named TypeNode.:
) at ../subprojects/gstreamer/gst/gstelementfactory.c:240
#28 0x00007f7a41769af4 in plugin_init (plugin=0x5569fc756750) at ../subprojects/gst-editing-services/plugins/ges/gesplugin.c:42
#29 0x00007f7a72abd0a5 in gst_plugin_register_func (user_data=0x0, desc=0x7f7a4176fd20 <gst_plugin_desc>, plugin=0x5569fc756750) at ../subprojects/gstreamer/gst/gstplugin.c:532
--Type <RET> for more, q to quit, c to continue without paging--
#30 0x00007f7a72abd0a5 in gst_plugin_register_func (plugin=0x5569fc756750, desc=0x7f7a4176fd20 <gst_plugin_desc>, user_data=0x0) at ../subprojects/gstreamer/gst/gstplugin.c:486
#31 0x00007f7a72abf0bd in _priv_gst_plugin_load_file_for_registry (filename=filename@entry=0x5569fd401b60 "/home/matt/Projects/gst/gst-build/build/subprojects/gst-editing-services/plugins/ges/libgstges.so", registry=0x5569fc46e960, error=error@entry=0x0) at ../subprojects/gstreamer/gst/gstplugin.c:899
#32 0x00007f7a72acc247 in gst_registry_scan_plugin_file (context=context@entry=0x7ffc1eb809c0, filename=filename@entry=0x5569fd401b60 "/home/matt/Projects/gst/gst-build/build/subprojects/gst-editing-services/plugins/ges/libgstges.so", file_size=188920, file_mtime=1573168042) at ../subprojects/gstreamer/gst/gstregistry.c:1178
#33 0x00007f7a72acd506 in gst_registry_scan_path_level (context=context@entry=0x7ffc1eb809c0, path=path@entry=0x5569fc7c47c0 "/home/matt/Projects/gst/gst-build/build/subprojects/gst-editing-services/plugins/ges", level=level@entry=10) at ../subprojects/gstreamer/gst/gstregistry.c:1341
#34 0x00007f7a72acd856 in gst_registry_scan_path_internal (context=context@entry=0x7ffc1eb809c0, path=0x5569fc7c47c0 "/home/matt/Projects/gst/gst-build/build/subprojects/gst-editing-services/plugins/ges") at ../subprojects/gstreamer/gst/gstregistry.c:1368
#35 0x00007f7a72acee04 in scan_and_update_registry (write_changes=1, error=0x7ffc1eb809b8, registry_file=0x5569fc48dac0 "/home/matt/.cache/gstreamer-1.0/registry.x86_64.bin", default_registry=0x5569fc46e960) at ../subprojects/gstreamer/gst/gstregistry.c:1612
#36 0x00007f7a72acee04 in ensure_current_registry (error=0x7ffc1eb809b8) at ../subprojects/gstreamer/gst/gstregistry.c:1753
#37 0x00007f7a72acee04 in gst_update_registry () at ../subprojects/gstreamer/gst/gstregistry.c:1830
#38 0x00007f7a72a640a8 in init_post (context=<optimized out>, group=<optimized out>, data=<optimized out>, error=<optimized out>) at ../subprojects/gstreamer/gst/gst.c:803
#39 0x00007f7a72a640a8 in init_post (context=<optimized out>, group=<optimized out>, data=<optimized out>, error=<optimized out>) at ../subprojects/gstreamer/gst/gst.c:646
#40 0x00007f7a728b7548 in g_option_context_parse () at /usr/lib/libglib-2.0.so.0
#41 0x00007f7a72a64b67 in gst_init_check (err=0x7ffc1eb80b50, argv=0x0, argc=0x0) at ../subprojects/gstreamer/gst/gst.c:427
#42 0x00007f7a72a64b67 in gst_init_check (argc=0x0, argv=0x0, err=0x7ffc1eb80b50) at ../subprojects/gstreamer/gst/gst.c:405
#43 0x00007f7a72a64bc4 in gst_init (argc=<optimized out>, argv=<optimized out>) at ../subprojects/gstreamer/gst/gst.c:471
#44 0x00005569fae547aa in main (argc=4, argv=0x7ffc1eb80d28) at ../subprojects/gstreamer/docs/gst-hotdoc-plugins-scanner.c:740
(gdb)
```Thibault Sauniertsaunier@igalia.comThibault Sauniertsaunier@igalia.comhttps://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/46basic-tutorial-13.c (playback speed) and gst_event_new_seek entry in core ref...2021-09-24T16:20:00ZAskar Safinbasic-tutorial-13.c (playback speed) and gst_event_new_seek entry in core reference contradict to each otherhttps://developer.gnome.org/gstreamer/stable/gstreamer-GstEvent.html#gst-event-new-seek says:
```
It is not possible to seek relative to the current playback position, to do this, PAUSE the pipeline, query the current playback position w...https://developer.gnome.org/gstreamer/stable/gstreamer-GstEvent.html#gst-event-new-seek says:
```
It is not possible to seek relative to the current playback position, to do this, PAUSE the pipeline, query the current playback position with GST_QUERY_POSITION and update the playback segment current position with a GST_SEEK_TYPE_SET to the desired position.
```
So this text says that we should PAUSE the pipeline. But https://gstreamer.freedesktop.org/documentation/tutorials/basic/playback-speed.html shows us code where we don't PAUSE before seeking. So should we PAUSE or not?https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/42basic tutorial 13: code doesn't work as written2021-09-24T16:20:00ZAdam Di Carlobasic tutorial 13: code doesn't work as writtenAfter running basic-tutorial-13, then interacting to do 'p'ause, 'd'irection, and then 'n'ext frame, the movie still moves forward rather than backwards.
An example session:
~~~~
./basic-tutorial-13
USAGE: Choose one of the following o...After running basic-tutorial-13, then interacting to do 'p'ause, 'd'irection, and then 'n'ext frame, the movie still moves forward rather than backwards.
An example session:
~~~~
./basic-tutorial-13
USAGE: Choose one of the following options, then press enter:
'P' to toggle between PAUSE and PLAY
'S' to increase playback speed, 's' to decrease playback speed
'D' to toggle playback direction
'N' to move to next frame (in the current direction, better in PAUSE)
'Q' to quit
p
Setting state to PAUSE
d
Current rate: -1
n
Stepping one frame
n
Stepping one frame
n
~~~~
I've tested this against gstreamer 1.14 and 1.16, both simply step forward one frame at a time.https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/41Application development manual/Appendix/Compiling/Embedding static elements i...2021-09-24T16:20:00ZSebastian DrögeApplication development manual/Appendix/Compiling/Embedding static elements in your application: Needlessly recommends using gst_plugin_register_static()https://gstreamer.freedesktop.org/documentation/application-development/appendix/compiling.html?gi-language=c#page-description
There's no point in doing so, simply calling `gst_element_register()` from the application has the same effec...https://gstreamer.freedesktop.org/documentation/application-development/appendix/compiling.html?gi-language=c#page-description
There's no point in doing so, simply calling `gst_element_register()` from the application has the same effect for all practical purposes and requires less boilerplate.https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/39Android tutorials errors on Android Studio 3.4.1 ( Windows 10 64 )2021-09-24T16:19:59ZJPMJPMAndroid tutorials errors on Android Studio 3.4.1 ( Windows 10 64 )Hi,
Sync failed with the following errors :
![ScreenShot073](/uploads/8a986498eea732b198d08a4ecbe2890b/ScreenShot073.png)
Any help ?, thanks in advance.Hi,
Sync failed with the following errors :
![ScreenShot073](/uploads/8a986498eea732b198d08a4ecbe2890b/ScreenShot073.png)
Any help ?, thanks in advance.https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/38Installation steps for Windows2021-09-24T16:19:59ZGopi JayaramanInstallation steps for WindowsAs per link, I tried to install gstreamer on my windows 10 PC.
Followed these steps.
>>>
Download and install GStreamer binaries
There are 3 sets of files in GStreamer binaries:
The runtime files are needed to run GStreamer applicatio...As per link, I tried to install gstreamer on my windows 10 PC.
Followed these steps.
>>>
Download and install GStreamer binaries
There are 3 sets of files in GStreamer binaries:
The runtime files are needed to run GStreamer applications. You probably want to distribute these files with your application (or the installer below).
The development files are additional files you need to create GStreamer applications.
The Merge Modules files are additional files you can use to deploy GStreamer binaries alongside your application (see Windows deployment).
Get the Runtime and Development files installers appropriate for your architecture from here:
https://gstreamer.freedesktop.org/data/pkg/windows/
Execute the installers and choose an installation folder. The suggested default is usually OK.
<<<<
After a search, under https://gstreamer.freedesktop.org/data/pkg/windows/1.16.0/, I picked up 3 files. (hope these are right)
1. gstreamer-1.0-msvc-x86_64-1.16.0.msi
2. gstreamer-1.0-devel-msvc-x86_64-1.16.0.msi
3. gstreamer-1.0-msvc-x86_64-1.16.0-merge-modules.zip
I installed the first 2. 3rd one is just unzip, don't know what to do with this.
After reboot, I tried to open msvc project as per link. but no tutorials.sln present in the folder structure.
Please help with detailed instructions.https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/33Cannot build armeabi-v7a arm64-v8a at the same time on android studio2021-09-24T16:19:59ZChangNam AnCannot build armeabi-v7a arm64-v8a at the same time on android studioMy environment is...
Android Studio: 3.2.1
Android ndk version: r14b
Gradle version: 3.1.0
Gstreamer version: gstreamer-1.0-android-universal-1.14.1
If `APP_ABI := armeabi armeabi-v7a` is built correctly but `APP_ABI := armeabi armeabi...My environment is...
Android Studio: 3.2.1
Android ndk version: r14b
Gradle version: 3.1.0
Gstreamer version: gstreamer-1.0-android-universal-1.14.1
If `APP_ABI := armeabi armeabi-v7a` is built correctly but `APP_ABI := armeabi armeabi-v7a arm64-v8a` is not built and
I toke error log as below.
Please let me know how to fix this issue.
```
> Task :app:buildNative
10:47:05.891 [QUIET] [system.out] GStreamer : [LINK] => gst-build-armeabi/libgstreamer_android.so
10:47:07.304 [QUIET] [system.out] Done mkdir
10:47:07.325 [QUIET] [system.out] Done cp
10:47:07.558 [QUIET] [system.out] [armeabi] Prebuilt : libgstreamer_android.so <= gst-build-armeabi/
10:47:07.634 [QUIET] [system.out] Done rm
10:47:07.671 [QUIET] [system.out] [armeabi] Install : libgstreamer_android.so => libs/armeabi/libgstreamer_android.so
10:47:07.860 [QUIET] [system.out] [armeabi] SharedLibrary : libtutorial-4.so
10:47:08.041 [QUIET] [system.out] [armeabi] Install : libtutorial-4.so => libs/armeabi/libtutorial-4.so
10:47:08.152 [QUIET] [system.out] GStreamer : [GEN] => gst-build-armeabi-v7a/gstreamer_android.c
10:47:08.288 [QUIET] [system.out] GStreamer : [COMPILE] => gst-build-armeabi-v7a/gstreamer_android.c
10:47:08.755 [QUIET] [system.out] GStreamer : [LINK] => gst-build-armeabi-v7a/libgstreamer_android.so
10:47:10.131 [QUIET] [system.out] Done mkdir
10:47:10.152 [QUIET] [system.out] Done cp
10:47:10.385 [QUIET] [system.out] [armeabi-v7a] Prebuilt : libgstreamer_android.so <= gst-build-armeabi-v7a/
10:47:10.397 [null] [org.gradle.process.internal.health.memory.MemoryManager]
10:47:10.397 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting OS memory status event {Total: 17019641856, Free: 7089037312}
10:47:10.397 [DEBUG] [org.gradle.launcher.daemon.server.health.LowMemoryDaemonExpirationStrategy] Received memory status update: {Total: 17019641856, Free: 7089037312}
10:47:10.397 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting JVM memory status event {Maximum: 954728448, Committed: 613941248}
10:47:10.400 [null] [org.gradle.internal.progress.DefaultBuildOperationExecutor]
> Task :app:buildNative FAILED
10:47:10.461 [QUIET] [system.out] Done rm
10:47:10.500 [QUIET] [system.out] [armeabi-v7a] Install : libgstreamer_android.so => libs/armeabi-v7a/libgstreamer_android.so
10:47:10.678 [QUIET] [system.out] [armeabi-v7a] SharedLibrary : libtutorial-4.so
10:47:10.845 [QUIET] [system.out] [armeabi-v7a] Install : libtutorial-4.so => libs/armeabi-v7a/libtutorial-4.so
10:47:10.953 [QUIET] [system.out] GStreamer : [GEN] => gst-build-arm64-v8a/gstreamer_android.c
10:47:11.082 [QUIET] [system.out] GStreamer : [COMPILE] => gst-build-arm64-v8a/gstreamer_android.c
10:47:11.434 [QUIET] [system.out] GStreamer : [LINK] => gst-build-arm64-v8a/libgstreamer_android.so
10:47:12.306 [ERROR] [system.err] C:/Android/android-ndk-r14b-windows-x86_64/android-ndk-r14b/build//../toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\l
d.gold.exe: error: D:/MyProject/gstreamer-1.0-android-universal-1.14.1/arm/lib/gstreamer-1.0/libgstcoreelements.a(libgstcoreelements_la-gstelements.o): incompatible target
10:47:12.306 [ERROR] [system.err] gst-build-arm64-v8a/gstreamer_android.c:67: error: undefined reference to 'gst_plugin_coreelements_register'
10:47:12.344 [ERROR] [system.err] clang.exe: error: linker command failed with exit code 1 (use -v to see invocation)
10:47:12.354 [ERROR] [system.err] make: *** [buildsharedlibrary_arm64-v8a] Error 1
10:47:12.355 [QUIET] [system.out] make: Leaving directory `D:/MyProject/project/app/src/main'
10:47:12.363 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Changing state to: FAILED
```
Thanks in advance.https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/30Build of tutorials fails for Android under MacOS2021-09-24T16:19:58ZJohannes HartzBuild of tutorials fails for Android under MacOSHi, I am in the process of writing an app for Android and want to use GStreamer for an audio component.
I can build Android apps with C++ support in Android Studio using NDK. I also have successfully build "Playback tutorial 1" for Mac...Hi, I am in the process of writing an app for Android and want to use GStreamer for an audio component.
I can build Android apps with C++ support in Android Studio using NDK. I also have successfully build "Playback tutorial 1" for MacOS from the Gstreamer tutorials ("Tutorial 1" is not functional in MacOS as mentioned here: https://stackoverflow.com/questions/35137165/gstreamer-1-0-video-from-tutorials-is-not-playing-on-macos).
Trying to build the tutorials for Android on MacOS using GStream 1.14.4 fails (in command line and Android Studio):
...
GStreamer : [GEN] => gst-build-arm64-v8a/gstreamer_android.c
GStreamer : [COMPILE] => gst-build-arm64-v8a/gstreamer_android.c
clang: error: argument unused during compilation: '--gcc-toolchain=/Users/johannes/Library/Android/sdk/ndk-bundle/toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64' [-Werror,-Wunused-command-line-argument]
make: *** [gst-build-arm64-v8a/gstreamer_android.o] Error
This can be fixed modifying the respective gstreamer-1.0.mk:
`$(GSTREAMER_ANDROID_O): PRIV_CC_CMD := $(TARGET_CC) --sysroot=$(SYSROOT_GST_INC) $(SYSROOT_ARCH_INC_ARG) $(TARGET_CFLAGS) \
-c $(GSTREAMER_ANDROID_C) -Wall -Werror -o $(GSTREAMER_ANDROID_O) $(GSTREAMER_ANDROID_CFLAGS)`
needs to be replaced with
`(GSTREAMER_ANDROID_O): PRIV_CC_CMD := $(TARGET_CC) --sysroot=$(SYSROOT_GST_INC) $(SYSROOT_ARCH_INC_ARG) $(TARGET_CFLAGS) \
-c $(GSTREAMER_ANDROID_C) -Wall -o $(GSTREAMER_ANDROID_O) $(GSTREAMER_ANDROID_CFLAGS)`
(removing -Werror).
Then another error occurs due to missing the Gold linker (not standard in MacOS):
...
GStreamer : [GEN] => gst-build-arm64-v8a/gstreamer_android.c
GStreamer : [COMPILE] => gst-build-arm64-v8a/gstreamer_android.c
GStreamer : [LINK] => gst-build-arm64-v8a/libgstreamer_android.so
clang: error: invalid linker name in argument '-fuse-ld=gold'
make: *** [buildsharedlibrary_arm64-v8a] Error 1
I tried the default ld linker to fix this:
`GSTREAMER_LD := -fuse-ld=ld$(EXE_SUFFIX) -Wl,-soname,lib$(GSTREAMER_ANDROID_MODULE_NAME).so`
instead of
`GSTREAMER_LD := -fuse-ld=gold$(EXE_SUFFIX) -Wl,-soname,lib$(GSTREAMER_ANDROID_MODULE_NAME).so`
Which leads to the following error:
...
GStreamer : [GEN] => gst-build-arm64-v8a/gstreamer_android.c
GStreamer : [COMPILE] => gst-build-arm64-v8a/gstreamer_android.c
GStreamer : [LINK] => gst-build-arm64-v8a/libgstreamer_android.so
clang: warning: argument unused during compilation: '--gcc-toolchain=/Users/johannes/Library/Android/sdk/ndk-bundle/toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64' [-Wunused-command-line-argument]
ld: warning: directory not found for option '-L/home/nirbheek/projects/repositories/gst/cerbero.git/build/dist/android_universal/arm64/lib'
ld: warning: directory not found for option '-L/home/nirbheek/projects/repositories/gst/cerbero.git/build/android-ndk-16/platforms/android-21/arch-arm64/usr/lib'
ld: unknown option: --whole-archive
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [buildsharedlibrary_arm64-v8a] Error 1
I fiddled with the linker options for a while (e.g. replacing --whole-archive with -all_load) but ran into lots of new errors. What can I do here to advance?https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/29Installation for Mac should be updated2021-09-24T16:19:58ZJayesh DalalInstallation for Mac should be updatedPer https://gstreamer.freedesktop.org/documentation/installing/on-mac-osx.html recommended system is MacOS Sierra (10.12) [released 2 years ago] and Xcode 8 (current version is Xcode 10)
Also, not sure if we need to wait for https://git...Per https://gstreamer.freedesktop.org/documentation/installing/on-mac-osx.html recommended system is MacOS Sierra (10.12) [released 2 years ago] and Xcode 8 (current version is Xcode 10)
Also, not sure if we need to wait for https://gitlab.freedesktop.org/gstreamer/cerbero/issues/81 issue to be fixed before we update the documentation.https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/19Incompatibility with new Android native apps2021-09-24T16:19:57ZBugzilla Migration UserIncompatibility with new Android native apps## Submitted by Constantin
**[Link to original bug (#797201)](https://bugzilla.gnome.org/show_bug.cgi?id=797201)**
## Description
The documentation of gstreamer for Android does not include any info on how to use gstreamer with cmak...## Submitted by Constantin
**[Link to original bug (#797201)](https://bugzilla.gnome.org/show_bug.cgi?id=797201)**
## Description
The documentation of gstreamer for Android does not include any info on how to use gstreamer with cmake for android native apps.
As of 2018, CMake is the default and recommended way to include native code in Android Studio.
Please see my Stackoverflow question for more details:
https://stackoverflow.com/questions/52056149/include-gstreamer-in-android-ndk-project-that-uses-cmake-cmakelists-txt-and-no