CodeYan01 / media-playlist-source

An OBS Studio plugin that supports media playlists, based on the Media Source
GNU General Public License v2.0
27 stars 4 forks source link

error: circlebuf_push_back is deprecated [-Werror=deprecated-declarations] #31

Open GloriousEggroll opened 4 months ago

GloriousEggroll commented 4 months ago
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c: In function ‘mps_audio_callback’:
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:371:17: error: ‘circlebuf_push_back’ is deprecated [-Werror=deprecated-declarations]
  371 |                 circlebuf_push_back(&mps->audio_data[i], audio_data->data[i],
      |                 ^~~~~~~~~~~~~~~~~~~
In file included from /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.h:26,
                 from /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:19:
/usr/include/obs/util/circlebuf.h:150:1: note: declared here
  150 | circlebuf_push_back(struct circlebuf *cb, const void *data, size_t size)
      | ^~~~~~~~~~~~~~~~~~~
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:374:9: error: ‘circlebuf_push_back’ is deprecated [-Werror=deprecated-declarations]
  374 |         circlebuf_push_back(&mps->audio_frames, &audio_data->frames,
      |         ^~~~~~~~~~~~~~~~~~~
/usr/include/obs/util/circlebuf.h:150:1: note: declared here
  150 | circlebuf_push_back(struct circlebuf *cb, const void *data, size_t size)
      | ^~~~~~~~~~~~~~~~~~~
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:376:9: error: ‘circlebuf_push_back’ is deprecated [-Werror=deprecated-declarations]
  376 |         circlebuf_push_back(&mps->audio_timestamps, &audio_data->timestamp,
      |         ^~~~~~~~~~~~~~~~~~~
/usr/include/obs/util/circlebuf.h:150:1: note: declared here
  150 | circlebuf_push_back(struct circlebuf *cb, const void *data, size_t size)
      | ^~~~~~~~~~~~~~~~~~~
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c: In function ‘mps_destroy’:
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:712:17: error: ‘circlebuf_free’ is deprecated [-Werror=deprecated-declarations]
  712 |                 circlebuf_free(&mps->audio_data[i]);
      |                 ^~~~~~~~~~~~~~
/usr/include/obs/util/circlebuf.h:46:35: note: declared here
   46 | OBS_DEPRECATED static inline void circlebuf_free(struct circlebuf *cb)
      |                                   ^~~~~~~~~~~~~~
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:714:9: error: ‘circlebuf_free’ is deprecated [-Werror=deprecated-declarations]
  714 |         circlebuf_free(&mps->audio_frames);
      |         ^~~~~~~~~~~~~~
/usr/include/obs/util/circlebuf.h:46:35: note: declared here
   46 | OBS_DEPRECATED static inline void circlebuf_free(struct circlebuf *cb)
      |                                   ^~~~~~~~~~~~~~
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:715:9: error: ‘circlebuf_free’ is deprecated [-Werror=deprecated-declarations]
  715 |         circlebuf_free(&mps->audio_timestamps);
      |         ^~~~~~~~~~~~~~
/usr/include/obs/util/circlebuf.h:46:35: note: declared here
   46 | OBS_DEPRECATED static inline void circlebuf_free(struct circlebuf *cb)
      |                                   ^~~~~~~~~~~~~~
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c: In function ‘mps_video_tick’:
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:854:17: error: ‘circlebuf_pop_front’ is deprecated [-Werror=deprecated-declarations]
  854 |                 circlebuf_pop_front(&mps->audio_frames, &audio.frames,
      |                 ^~~~~~~~~~~~~~~~~~~
/usr/include/obs/util/circlebuf.h:291:35: note: declared here
  291 | OBS_DEPRECATED static inline void circlebuf_pop_front(struct circlebuf *cb,
      |                                   ^~~~~~~~~~~~~~~~~~~
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:856:17: error: ‘circlebuf_pop_front’ is deprecated [-Werror=deprecated-declarations]
  856 |                 circlebuf_pop_front(&mps->audio_timestamps, &audio.timestamp,
      |                 ^~~~~~~~~~~~~~~~~~~
/usr/include/obs/util/circlebuf.h:291:35: note: declared here
  291 | OBS_DEPRECATED static inline void circlebuf_pop_front(struct circlebuf *cb,
      |                                   ^~~~~~~~~~~~~~~~~~~
/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:864:25: error: ‘circlebuf_pop_front’ is deprecated [-Werror=deprecated-declarations]
  864 |                         circlebuf_pop_front(&mps->audio_data[i], NULL,
      |                         ^~~~~~~~~~~~~~~~~~~
/usr/include/obs/util/circlebuf.h:291:35: note: declared here
  291 | OBS_DEPRECATED static inline void circlebuf_pop_front(struct circlebuf *cb,
      |                                   ^~~~~~~~~~~~~~~~~~~
[ 83%] Building C object CMakeFiles/media-playlist-source.dir/src/shuffler.c.o
/usr/bin/gcc -DHAVE_OBSCONFIG_H -DSIMDE_ENABLE_OPENMP -Dmedia_playlist_source_EXPORTS -I/builddir/build/BUILD/media-playlist-source-0.0.6/redhat-linux-build -I/builddir/build/BUILD/media-playlist-source-0.0.6 -I/builddir/build/BUILD/media-playlist-source-0.0.6/src -isystem /usr/include/obs -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -O2 -g -DNDEBUG -std=gnu17 -fPIC -fvisibility=hidden -fdiagnostics-color=always -fopenmp-simd -fno-strict-aliasing -Wdeprecated-declarations -Wempty-body -Wenum-conversion -Werror=return-type -Wextra -Wformat -Wformat-security -Wno-conversion -Wno-float-conversion -Wno-implicit-fallthrough -Wno-missing-braces -Wno-missing-field-initializers -Wno-shadow -Wno-sign-conversion -Wno-trigraphs -Wno-unknown-pragmas -Wno-unused-function -Wno-unused-label -Wparentheses -Wshadow -Wuninitialized -Wunreachable-code -Wunused-parameter -Wunused-value -Wunused-variable -Wvla -Wint-conversion -Wno-missing-prototypes -Wno-strict-prototypes -Wpointer-sign -Wno-error=maybe-uninitialized -Winfinite-recursion -mmmx -msse -msse2 -Werror -MD -MT CMakeFiles/media-playlist-source.dir/src/shuffler.c.o -MF CMakeFiles/media-playlist-source.dir/src/shuffler.c.o.d -o CMakeFiles/media-playlist-source.dir/src/shuffler.c.o -c /builddir/build/BUILD/media-playlist-source-0.0.6/src/shuffler.c
cc1: all warnings being treated as errors
gmake[2]: *** [CMakeFiles/media-playlist-source.dir/build.make:93: CMakeFiles/media-playlist-source.dir/src/media-playlist-source.c.o] Error 1
gmake[2]: Leaving directory '/builddir/build/BUILD/media-playlist-source-0.0.6/redhat-linux-build'
gmake[1]: *** [CMakeFiles/Makefile2:114: CMakeFiles/media-playlist-source.dir/all] Error 2
gmake[1]: Leaving directory '/builddir/build/BUILD/media-playlist-source-0.0.6/redhat-linux-build'
gmake: *** [Makefile:159: all] Error 2

similar issue noted here:

https://github.com/obsproject/obs-studio/issues/10397

The errors you're citing come from a plugin, source-clone, not from our repo. They have to update their code or change their warning/error settings to avoid the deprecation warnings. We updated our own codebase when we replaced and deprecated the old functions.

https://github.com/obsproject/obs-studio/commit/a4b8e1a6a987bf396fe49e0ad793405e78c89fca

https://github.com/obsproject/obs-studio/pull/9943

CodeYan01 commented 4 months ago

Yes, I am aware of the deprecation, and I am currently working on it to let it build for linux.

On Sun, May 19, 2024, 12:15 AM Thomas Crider @.***> wrote:

/builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c: In function ‘mps_audio_callback’: /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:371:17: error: ‘circlebuf_push_back’ is deprecated [-Werror=deprecated-declarations] 371 | circlebuf_push_back(&mps->audio_data[i], audio_data->data[i], | ^~~~~~~ In file included from /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.h:26, from /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:19: /usr/include/obs/util/circlebuf.h:150:1: note: declared here 150 | circlebuf_push_back(struct circlebuf cb, const void data, size_t size) | ^~~~~~~ /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:374:9: error: ‘circlebuf_push_back’ is deprecated [-Werror=deprecated-declarations] 374 | circlebuf_push_back(&mps->audio_frames, &audio_data->frames, | ^~~~~~~ /usr/include/obs/util/circlebuf.h:150:1: note: declared here 150 | circlebuf_push_back(struct circlebuf cb, const void data, size_t size) | ^~~~~~~ /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:376:9: error: ‘circlebuf_push_back’ is deprecated [-Werror=deprecated-declarations] 376 | circlebuf_push_back(&mps->audio_timestamps, &audio_data->timestamp, | ^~~~~~~ /usr/include/obs/util/circlebuf.h:150:1: note: declared here 150 | circlebuf_push_back(struct circlebuf cb, const void data, size_t size) | ^~~~~~~ /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c: In function ‘mps_destroy’: /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:712:17: error: ‘circlebuf_free’ is deprecated [-Werror=deprecated-declarations] 712 | circlebuf_free(&mps->audio_data[i]); | ^~~~~~ /usr/include/obs/util/circlebuf.h:46:35: note: declared here 46 | OBS_DEPRECATED static inline void circlebuf_free(struct circlebuf cb) | ^~~~~~ /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:714:9: error: ‘circlebuf_free’ is deprecated [-Werror=deprecated-declarations] 714 | circlebuf_free(&mps->audio_frames); | ^~~~~~ /usr/include/obs/util/circlebuf.h:46:35: note: declared here 46 | OBS_DEPRECATED static inline void circlebuf_free(struct circlebuf cb) | ^~~~~~ /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:715:9: error: ‘circlebuf_free’ is deprecated [-Werror=deprecated-declarations] 715 | circlebuf_free(&mps->audio_timestamps); | ^~~~~~ /usr/include/obs/util/circlebuf.h:46:35: note: declared here 46 | OBS_DEPRECATED static inline void circlebuf_free(struct circlebuf cb) | ^~~~~~ /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c: In function ‘mps_video_tick’: /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:854:17: error: ‘circlebuf_pop_front’ is deprecated [-Werror=deprecated-declarations] 854 | circlebuf_pop_front(&mps->audio_frames, &audio.frames, | ^~~~~~~ /usr/include/obs/util/circlebuf.h:291:35: note: declared here 291 | OBS_DEPRECATED static inline void circlebuf_pop_front(struct circlebuf cb, | ^~~~~~~ /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:856:17: error: ‘circlebuf_pop_front’ is deprecated [-Werror=deprecated-declarations] 856 | circlebuf_pop_front(&mps->audio_timestamps, &audio.timestamp, | ^~~~~~~ /usr/include/obs/util/circlebuf.h:291:35: note: declared here 291 | OBS_DEPRECATED static inline void circlebuf_pop_front(struct circlebuf cb, | ^~~~~~~ /builddir/build/BUILD/media-playlist-source-0.0.6/src/media-playlist-source.c:864:25: error: ‘circlebuf_pop_front’ is deprecated [-Werror=deprecated-declarations] 864 | circlebuf_pop_front(&mps->audio_data[i], NULL, | ^~~~~~~ /usr/include/obs/util/circlebuf.h:291:35: note: declared here 291 | OBS_DEPRECATED static inline void circlebuf_pop_front(struct circlebuf cb, | ^~~~~~~ [ 83%] Building C object CMakeFiles/media-playlist-source.dir/src/shuffler.c.o /usr/bin/gcc -DHAVE_OBSCONFIG_H -DSIMDE_ENABLE_OPENMP -Dmedia_playlist_source_EXPORTS -I/builddir/build/BUILD/media-playlist-source-0.0.6/redhat-linux-build -I/builddir/build/BUILD/media-playlist-source-0.0.6 -I/builddir/build/BUILD/media-playlist-source-0.0.6/src -isystem /usr/include/obs -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -O2 -g -DNDEBUG -std=gnu17 -fPIC -fvisibility=hidden -fdiagnostics-color=always -fopenmp-simd -fno-strict-aliasing -Wdeprecated-declarations -Wempty-body -Wenum-conversion -Werror=return-type -Wextra -Wformat -Wformat-security -Wno-conversion -Wno-float-conversion -Wno-implicit-fallthrough -Wno-missing-braces -Wno-missing-field-initializers -Wno-shadow -Wno-sign-conversion -Wno-trigraphs -Wno-unknown-pragmas -Wno-unused-function -Wno-unused-label -Wparentheses -Wshadow -Wuninitialized -Wunreachable-code -Wunused-parameter -Wunused-value -Wunused-variable -Wvla -Wint-conversion -Wno-missing-prototypes -Wno-strict-prototypes -Wpointer-sign -Wno-error=maybe-uninitialized -Winfinite-recursion -mmmx -msse -msse2 -Werror -MD -MT CMakeFiles/media-playlist-source.dir/src/shuffler.c.o -MF CMakeFiles/media-playlist-source.dir/src/shuffler.c.o.d -o CMakeFiles/media-playlist-source.dir/src/shuffler.c.o -c /builddir/build/BUILD/media-playlist-source-0.0.6/src/shuffler.c cc1: all warnings being treated as errors gmake[2]: [CMakeFiles/media-playlist-source.dir/build.make:93: CMakeFiles/media-playlist-source.dir/src/media-playlist-source.c.o] Error 1 gmake[2]: Leaving directory '/builddir/build/BUILD/media-playlist-source-0.0.6/redhat-linux-build' gmake[1]: [CMakeFiles/Makefile2:114: CMakeFiles/media-playlist-source.dir/all] Error 2 gmake[1]: Leaving directory '/builddir/build/BUILD/media-playlist-source-0.0.6/redhat-linux-build' gmake: *** [Makefile:159: all] Error 2

similar issue noted here:

obsproject/obs-studio#10397 https://github.com/obsproject/obs-studio/issues/10397

The errors you're citing come from a plugin, source-clone, not from our repo. They have to update their code or change their warning/error settings to avoid the deprecation warnings. We updated our own codebase when we replaced and deprecated the old functions.

— Reply to this email directly, view it on GitHub https://github.com/CodeYan01/media-playlist-source/issues/31, or unsubscribe https://github.com/notifications/unsubscribe-auth/APSLKZPZV6TGEIA3ZX7VDATZC55B3AVCNFSM6AAAAABH5SNH4SVHI2DSMVQWIX3LMV43ASLTON2WKOZSGMYDIMJVGI3DSOA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

GloriousEggroll commented 4 months ago

This should be a patch for it, untested though:

https://copr-dist-git.fedorainfracloud.org/cgit/gloriouseggroll/nobara-40/obs-studio-plugin-media-playlist-source.git/tree/0001-update-circlebuf-to-deque.patch?h=f40

CodeYan01 commented 4 months ago

Fixed in https://github.com/CodeYan01/media-playlist-source/tree/update, thanks. Unless you need it immediately in the master branch, ill keep it in a separate branch for now as i'm still waiting for updates on the new features i will be integrating in 0.0.7