C video-recording

Open-source C projects categorized as video-recording

Top 3 C video-recording Projects

  • obs-studio

    OBS Studio - Free and open source software for live streaming and screen recording

  • Project mention: How do people create those sleek looking demos for startups? | news.ycombinator.com | 2024-05-01

    For product videos I used OBS a lot: https://obsproject.com/

    I haven't used Journey, but it seems promising for product Tours: https://www.william-troup.com/journey-js/

  • libva

    Libva is an implementation for VA-API (Video Acceleration API)

  • Project mention: Trying to enable the D3D12 GPU Video acceleration in the Windows (11) Subsystem for Linux. | /r/bashonubuntuonwindows | 2023-07-18

    # apt install autoconf libtool meson glslang-tools libxcb-glx0-dev libxcb-shm0-dev libx11-xcb-dev libxcb-dri2-0-dev libxcb-dri3-dev libxcb-present-dev libxshmfence-dev llvm-11 llvm-15 libxml2-dev graphviz doxygen xsltproc xmlto gstreamer1.0-plugins-bad gstreamer1.0-tools gstreamer1.0-vaapi ffmpeg mesa-va-drivers vainfo libxrandr-dev libxxf86vm-dev libxfixes-dev libxext-dev libwayland-egl-backend-dev wayland-egl-backend libelf-dev byacc bison flex wayland-protocols python3-pip libdrm-dev libva-dev vainfo # pip3 install mako # wget https://archive.mesa3d.org/mesa-22.3.0.tar.xz # tar -xvf mesa-22.3.0.tar.xz # cd mesa-22.3.0 # meson build -Dgallium-drivers=swrast,d3d12 -Dgallium-va=true -Dvideo-codecs=h264dec,h264enc,h265dec,h265enc,vc1dec The Meson build system Version: 0.63.2 Source dir: /home/marietto/Scaricati/mesa-22.3.0 Build dir: /home/marietto/Scaricati/mesa-22.3.0/build Build type: native build Program python3 found: YES (/usr/bin/python3) Project name: mesa Project version: 22.3.0 C compiler for the host machine: cc (gcc 12.2.0 "cc (Ubuntu 12.2.0-3ubuntu1) 12.2.0") C linker for the host machine: cc ld.bfd 2.39 C++ compiler for the host machine: c++ (gcc 12.2.0 "c++ (Ubuntu 12.2.0-3ubuntu1) 12.2.0") C++ linker for the host machine: c++ ld.bfd 2.39 Host machine cpu family: x86_64 Host machine cpu: x86_64 Checking if "-mtls-dialect=gnu2" runs: YES Checking if "split TLSDESC" : links: YES Found pkg-config: /usr/bin/pkg-config (0.29.2) Did not find CMake 'cmake' Found CMake: NO Run-time dependency directx-headers found: NO (tried pkgconfig and cmake) Run-time dependency directx-headers found: YES 1.606.4 Run-time dependency vdpau found: YES 1.5 Program glslangValidator found: YES (/usr/bin/glslangValidator) meson.build:785: WARNING: gallium-va option "true" deprecated, please use "enabled" instead. Run-time dependency libva found: YES 1.19.0 Header "va/va.h" has symbol "VASurfaceAttribDRMFormatModifiers" with dependency libva: YES Program python3 found: YES (/usr/bin/python3) Fetching value of define "ETIME" : 62 Checking for function "bswap32" : YES Checking for function "bswap64" : YES Checking for function "clz" : YES Checking for function "clzll" : YES Checking for function "ctz" : YES Checking for function "expect" : YES Checking for function "ffs" : YES Checking for function "ffsll" : YES Checking for function "popcount" : YES Checking for function "popcountll" : YES Checking for function "unreachable" : YES Checking for function "types_compatible_p" : YES Compiler for C supports function attribute const: YES Compiler for C supports function attribute flatten: YES Compiler for C supports function attribute malloc: YES Compiler for C supports function attribute pure: YES Compiler for C supports function attribute unused: YES Compiler for C supports function attribute warn_unused_result: YES Compiler for C supports function attribute weak: YES Compiler for C supports function attribute format: YES Compiler for C supports function attribute packed: YES Compiler for C supports function attribute returns_nonnull: YES Compiler for C supports function attribute alias: YES Compiler for C supports function attribute noreturn: YES Compiler for C supports function attribute visibility:hidden: YES Checking if "__uint128_t" compiles: YES Checking for function "reallocarray" : YES Compiler for C supports link arguments -Wl,--gc-sections: YES Compiler for C supports arguments -Werror=implicit-function-declaration: YES Compiler for C supports arguments -Werror=missing-prototypes: YES Compiler for C supports arguments -Werror=return-type: YES Compiler for C supports arguments -Werror=empty-body: YES Compiler for C supports arguments -Werror=incompatible-pointer-types: YES Compiler for C supports arguments -Werror=int-conversion: YES Compiler for C supports arguments -Wimplicit-fallthrough: YES Compiler for C supports arguments -Wno-missing-field-initializers: YES Compiler for C supports arguments -Wno-format-truncation: YES Compiler for C supports arguments -fno-math-errno: YES Compiler for C supports arguments -fno-trapping-math: YES Compiler for C supports arguments -Qunused-arguments: NO Compiler for C supports arguments -fno-common: YES Compiler for C supports arguments -Wno-microsoft-enum-value: NO Compiler for C supports arguments -Wno-unused-function: YES Compiler for C supports arguments -Werror=format: YES Compiler for C supports arguments -Wformat-security: YES Compiler for C supports arguments -Werror=thread-safety: NO Compiler for C supports arguments -ffunction-sections: YES Compiler for C supports arguments -fdata-sections: YES Compiler for C++ supports arguments -Werror=return-type: YES Compiler for C++ supports arguments -Werror=empty-body: YES Compiler for C++ supports arguments -Wno-non-virtual-dtor: YES Compiler for C++ supports arguments -Wno-missing-field-initializers: YES Compiler for C++ supports arguments -Wno-format-truncation: YES Compiler for C++ supports arguments -fno-math-errno: YES Compiler for C++ supports arguments -fno-trapping-math: YES Compiler for C++ supports arguments -Qunused-arguments: NO Compiler for C++ supports arguments -flifetime-dse=1: YES Compiler for C++ supports arguments -Wno-microsoft-enum-value: NO Compiler for C++ supports arguments -Werror=format: YES Compiler for C++ supports arguments -Wformat-security: YES Compiler for C++ supports arguments -ffunction-sections: YES Compiler for C++ supports arguments -fdata-sections: YES Compiler for C supports arguments -Wno-override-init: YES Compiler for C supports arguments -Wno-initializer-overrides: NO Compiler for C supports arguments -Werror=pointer-arith: YES Compiler for C supports arguments -Werror=vla: YES Compiler for C supports arguments -Werror=gnu-empty-initializer: NO Compiler for C++ supports arguments -Werror=pointer-arith: YES Compiler for C++ supports arguments -Werror=vla: YES Compiler for C++ supports arguments -Werror=gnu-empty-initializer: NO Checking if "GCC atomic builtins" compiles: YES Checking if "GCC atomic builtins required -latomic" : links: YES Checking if "GCC 64bit atomics" with dependency : links: YES Library ws2_32 found: NO Header "sys/sysmacros.h" has symbol "major" : YES Header "sys/sysmacros.h" has symbol "minor" : YES Header "sys/sysmacros.h" has symbol "makedev" : YES Header "sys/mkdev.h" has symbol "major" : NO Check usable header "sched.h" : YES Checking for function "sched_getaffinity" : YES Check usable header "xlocale.h" : NO Check usable header "linux/futex.h" : YES Check usable header "endian.h" : YES Check usable header "dlfcn.h" : YES Check usable header "sys/shm.h" : YES Check usable header "cet.h" : YES Check usable header "pthread_np.h" : NO Checking for function "strtof" : YES Checking for function "mkostemp" : YES Checking for function "timespec_get" : YES Checking for function "memfd_create" : YES Checking for function "random_r" : YES Checking for function "flock" : YES Checking for function "strtok_r" : YES Checking for function "getrandom" : YES Checking for function "qsort_s" : NO Checking if "GNU qsort_r" : links: YES Header "time.h" has symbol "struct timespec" : YES Checking for function "thrd_create" : YES Header "errno.h" has symbol "program_invocation_name" : YES Header "math.h" has symbol "issignaling" : YES Checking for function "posix_memalign" : YES Checking whether type "struct dirent" has member "d_type" : YES Checking if "strtod has locale support" : links: YES Checking if "Bsymbolic" : links: YES Checking if "gc-sections" : links: YES Checking if "version-script" : links: YES Checking if "dynamic-list" : links: YES Compiler for C supports link arguments -Wl,--build-id=sha1: YES Checking for function "dlopen" : YES Checking for function "dladdr" with dependency : YES Checking for function "dl_iterate_phdr" : YES Checking for function "clock_gettime" : YES Run-time dependency zlib found: YES 1.2.11 Run-time dependency libzstd found: NO (tried pkgconfig and cmake) Run-time dependency threads found: YES Checking for function "pthread_setaffinity_np" with dependency threads: YES Run-time dependency expat found: YES 2.4.8 Library m found: YES Message: libdrm 2.4.110 needed because amdgpu has the highest requirement Run-time dependency libdrm_amdgpu found: YES 2.4.113 Run-time dependency libdrm found: YES 2.4.113 Run-time dependency libudev found: YES 251 WARNING: Ignoring LLVM CMake dependency because dynamic was requested llvm-config found: YES (/usr/bin/llvm-config-15) 15.0.7 Run-time dependency LLVM (modules: amdgpu, bitreader, bitwriter, core, engine, executionengine, instcombine, ipo, mcdisassembler, mcjit, native, scalaropts, transformutils, coroutines) found: YES 15.0.7 Run-time dependency libelf found: YES 0.187 Run-time dependency valgrind found: NO (tried pkgconfig) Program bison found: YES (/usr/bin/bison) Program bison found: YES 3.8.2 (/usr/bin/bison) Program flex found: YES (/usr/bin/flex) Run-time dependency libunwind found: NO (tried pkgconfig and cmake) Found pkg-config: /usr/bin/pkg-config (0.29.2) Build-time dependency wayland-scanner found: YES 1.22.90 Program /usr/local/bin/wayland-scanner found: YES (/usr/local/bin/wayland-scanner) Run-time dependency wayland-protocols found: YES 1.32 Run-time dependency wayland-client found: YES 1.22.90 Run-time dependency wayland-server found: YES 1.22.90 Run-time dependency wayland-egl-backend found: YES 3 Run-time dependency OpenMP found: YES 4.5 Run-time dependency x11 found: YES 1.8.1 Run-time dependency xext found: YES 1.3.4 Run-time dependency xfixes found: YES 6.0.0 Run-time dependency xcb-glx found: YES 1.15 Run-time dependency xcb-shm found: YES 1.15 Run-time dependency xcb found: YES 1.15 Run-time dependency x11-xcb found: YES 1.8.1 Run-time dependency xcb-dri2 found: YES 1.15 Run-time dependency xcb-dri3 found: YES 1.15 Run-time dependency xcb-present found: YES 1.15 Dependency xcb-shm found: YES 1.15 (cached) Run-time dependency xcb-sync found: YES 1.15 Run-time dependency xshmfence found: YES 1.3 Run-time dependency glproto found: YES 1.4.17 Run-time dependency dri2proto found: YES 2.8 Run-time dependency xxf86vm found: YES 1.1.4 Run-time dependency xcb-xfixes found: YES 1.15 Run-time dependency xcb-randr found: YES 1.15 Run-time dependency xrandr found: YES 1.5.2 Library sensors found: NO Program nm found: YES (/usr/bin/nm) Program symbols-check.py found: YES (/usr/bin/python3 /home/marietto/Scaricati/mesa-22.3.0/bin/symbols-check.py) Program install_megadrivers.py found: YES (/usr/bin/python3 /home/marietto/Scaricati/mesa-22.3.0/bin/install_megadrivers.py) WARNING: Library target 'GLESv1_CM' has 'name_prefix' set. Compilers may not find it from its '-lGLESv1_CM' linker flag in the 'glesv1_cm.pc' pkg-config file. WARNING: Library target 'GLESv1_CM' has 'name_prefix' set. Compilers may not find it from its '-lGLESv1_CM' linker flag in the 'glesv1_cm-uninstalled.pc' pkg-config file. WARNING: Library target 'GLESv2' has 'name_prefix' set. Compilers may not find it from its '-lGLESv2' linker flag in the 'glesv2.pc' pkg-config file. WARNING: Library target 'GLESv2' has 'name_prefix' set. Compilers may not find it from its '-lGLESv2' linker flag in the 'glesv2-uninstalled.pc' pkg-config file. Program decode.py found: YES (/home/marietto/Scaricati/mesa-22.3.0/src/compiler/isaspec/decode.py) Program encode.py found: YES (/home/marietto/Scaricati/mesa-22.3.0/src/compiler/isaspec/encode.py) Compiler for C++ supports arguments -Wno-unused-variable: YES Compiler for C++ supports arguments -Wno-unused-local-typedefs: YES Compiler for C++ supports arguments -Wno-unused-but-set-variable: YES Compiler for C++ supports arguments -Wno-maybe-uninitialized: YES Compiler for C++ supports arguments -Wno-self-assign: NO Compiler for C++ supports arguments -fno-exceptions: YES Compiler for C++ supports arguments -fno-rtti: YES Compiler for C++ supports arguments -Wimplicit-fallthrough: YES Compiler for C++ supports arguments -Wshadow: YES Compiler for C supports arguments -Wimplicit-fallthrough: YES (cached) Compiler for C supports arguments -Wshadow: YES Program ln found: YES (/usr/bin/ln) Checking for function "mincore" : YES WARNING: Library target 'EGL' has 'name_prefix' set. Compilers may not find it from its '-lEGL' linker flag in the 'egl.pc' pkg-config file. WARNING: Library target 'EGL' has 'name_prefix' set. Compilers may not find it from its '-lEGL' linker flag in the 'egl-uninstalled.pc' pkg-config file. Message: Configuration summary: prefix: /usr/local libdir: lib/x86_64-linux-gnu includedir: include OpenGL: yes (ES1: yes ES2: yes) OSMesa: no DRI platform: drm DRI driver dir: /usr/local/lib/x86_64-linux-gnu/dri GLX: DRI-based EGL: yes EGL drivers: builtin:egl_dri2 builtin:egl_dri3 EGL/Vulkan/VL platforms: x11 wayland surfaceless drm xcb GBM: yes GBM backends path: /usr/local/lib/x86_64-linux-gnu/gbm Video Codecs: h264dec h264enc h265dec h265enc vc1dec Vulkan drivers: amd intel intel_hasvk swrast Vulkan ICD dir: share/vulkan/icd.d Vulkan Intel Ray Tracing: no llvm: yes llvm-version: 15.0.7 Gallium drivers: swrast d3d12 Gallium st: mesa vdpau va HUD lmsensors: no Shared-glapi: yes Perfetto: no Perfetto ds: auto Build targets in project: 236 NOTICE: Future-deprecated features used: * 0.55.0: {'ExternalProgram.path'} * 0.56.0: {'meson.source_root'} mesa 22.3.0 User defined options gallium-drivers: swrast,d3d12 gallium-va : true video-codecs : h264dec,h264enc,h265dec,h265enc,vc1dec Found ninja-1.11.0 at /usr/bin/ninja # git clone https://github.com/intel/libva.git # cd libva & ./autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu # make & sudo make install # which llvm-config-11 /usr/bin/llvm-config-11 added to : /home/marietto/.bashrc and /root/.bashrc # export LIBVA_DRIVERS_PATH=/usr/local/lib/x86_64-linux-gnu/dri # export LIBVA_DRIVER_NAME=d3d12 # source /home/marietto/.bashrc # source /root/.bashrc # vainfo --display drm --device /dev/dri/card0 Failed to open the given device! # ls /dev/dri ls: cannot access '/dev/dri': No such file or directory

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • FastMJPG

    FastMJPG is a command line tool for capturing, sending, receiving, rendering, piping, and recording MJPG video with extremely low latency. It is optimized for running on constrained hardware and battery powered devices.

  • Project mention: FLaNK Stack Weekly for 12 September 2023 | dev.to | 2023-09-12
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

C video-recording related posts

  • Open Broadcaster Software

    1 project | news.ycombinator.com | 7 Mar 2024
  • Ask HN: Has anyone achieved Douglas Engelbart's Vision?

    1 project | news.ycombinator.com | 18 Jan 2024
  • Denied OBS PR regarding Kick support lights up

    1 project | news.ycombinator.com | 2 Jan 2024
  • OBS with AV1 Support is now in the AUR

    1 project | /r/linux_gaming | 10 Dec 2023
  • Do not update to OBS 30.0.1 (MacOS)

    1 project | /r/obs | 10 Dec 2023
  • Obs Studio 30.0.1 Crashing when launched on MacOS Sonoma

    1 project | /r/obs | 10 Dec 2023
  • Recording internal audio + guitar at the same time

    1 project | /r/ableton | 10 Dec 2023
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 22 May 2024
    Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →

Index

What are some of the best open-source video-recording projects in C? This list will help you:

Project Stars
1 obs-studio 56,014
2 libva 623
3 FastMJPG 172

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com