** Changed in: x264 (Ubuntu) Status: New => Invalid -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to x264 in Ubuntu. https://bugs.launchpad.net/bugs/1906091
Title: libx264-148 libx264-152 conflict segmentation fault SIGSEGV Status in x264 package in Ubuntu: Invalid Bug description: In my app I have segfault due to conflict of libx264-148 vs libx264-152. I use gstreamer and libopencv_videoio in my project. System is Ubuntu 18.04.5 The problem is that versions of libx264 get mixed due to implicit linking. Libraries are linked like this: gstreamer -> x264enc -> libx264-152 libopencv_videoio -> libavcodec-ffmpeg.so.56 -> libx264-148 Both opencv-based code and gstreamer-based code works well if used separately. At the top of backtrace I see: Thread 13 (Thread 0x7f28e2066700 (LWP 26012)): #0 0x00007f290181c853 in x264_add8x8_idct_avx2.skip_prologue () at /usr/lib/x86_64-linux-gnu/libx264.so.152 //!!!! 152 #1 0x00007f2927a93f55 in x264_nal_encode () at /usr/lib/x86_64-linux-gnu/libx264.so.148 //!!!! 148 #2 0x00007f2927af866c in () at /usr/lib/x86_64-linux-gnu/libx264.so.148 #3 0x00007f2927b0143b in x264_encoder_headers () at /usr/lib/x86_64-linux-gnu/libx264.so.148 If I use objdump I can find x264_add8x8_idct_avx2.skip_prologue in both libx264-148 and libx264-152 Here is example code which fails (C++ needed): int main (int argc, char *argv[]) { App *app = &s_app; GError *error = NULL; GstBus *bus; GstCaps *caps; gst_init (&argc, &argv); auto cap = cv::VideoCapture("videoplayback.mp4"); cv::Mat f; cap.read(f); cv::imshow("f", f); GST_DEBUG_CATEGORY_INIT (appsrc_pipeline_debug, "appsrc-pipeline", 0, "appsrc pipeline example"); app->loop = g_main_loop_new (NULL, TRUE); app->timer = g_timer_new(); app->pipeline = gst_parse_launch(R"(filesrc location=videoplayback.mp4 ! decodebin ! videoconvert ! x264enc byte-stream=true threads=1 tune=zerolatency bitrate=4000000 key- int-max=50 option-string="force-cfr=1" ! video/x-h264,profile=baseline,stream-format="byte-stream" ! h264parse ! mpegtsmux ! hlssink location="/tmp/data%06d.ts" max-files=100 playlist-length=10 playlist-location="/tmp/kek" target-duration=10 playlist-root=".")", NULL); g_assert (app->pipeline); bus = gst_pipeline_get_bus (GST_PIPELINE (app->pipeline)); g_assert(bus); gst_bus_add_watch (bus, (GstBusFunc) bus_message, app); caps = gst_caps_new_simple ("video/x-raw-rgb", "bpp",G_TYPE_INT,8, "depth",G_TYPE_INT,8, "width", G_TYPE_INT, 640, "height", G_TYPE_INT, 480, NULL); gst_element_set_state (app->pipeline, GST_STATE_PLAYING); g_main_loop_run (app->loop); GST_DEBUG ("stopping"); gst_element_set_state (app->pipeline, GST_STATE_NULL); gst_object_unref (bus); g_main_loop_unref (app->loop); return 0; } How can I solve this? PLease help! --- ProblemType: Bug ApportVersion: 2.20.9-0ubuntu7.18 Architecture: amd64 CurrentDesktop: XFCE DistroRelease: Ubuntu 18.04 InstallationDate: Installed on 2016-05-07 (1667 days ago) InstallationMedia: Xubuntu 16.04 LTS "Xenial Xerus" - Release amd64 (20160420.1) NonfreeKernelModules: nvidia_modeset nvidia Package: x264 2:0.152.2854+gite9a5903-2 PackageArchitecture: amd64 ProcVersionSignature: Ubuntu 4.15.0-118.119-generic 4.15.18 Tags: bionic third-party-packages Uname: Linux 4.15.0-118-generic x86_64 UpgradeStatus: Upgraded to bionic on 2019-12-28 (338 days ago) UserGroups: adm cdrom dialout dip docker lpadmin plugdev sambashare sudo _MarkForUpload: True To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/x264/+bug/1906091/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp