@no-prophet see @Davidyz's answer. Until the maintainer updates this package this'll be the only way to compile it. Sadly the maintainer seems to have been inactive for some months now.
Search Criteria
Package Details: obs-studio-git 30.2.3.r364.gb854f61-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/obs-studio-git.git (read-only, click to copy) |
---|---|
Package Base: | obs-studio-git |
Description: | Free and open source software for video recording and live streaming. |
Upstream URL: | https://github.com/obsproject/obs-studio |
Licenses: | GPL-2.0-only |
Conflicts: | obs-studio |
Provides: | obs-studio |
Submitter: | ledti |
Maintainer: | benklett (xiota) |
Last Packager: | xiota |
Votes: | 101 |
Popularity: | 1.18 |
First Submitted: | 2014-03-12 22:29 (UTC) |
Last Updated: | 2024-11-07 23:26 (UTC) |
Dependencies (47)
- curl (curl-quiche-gitAUR, curl-http3-ngtcp2AUR, curl-gitAUR, curl-c-aresAUR)
- ffmpeg (ffmpeg-nvcodec-11-1-gitAUR, ffmpeg-ffplayoutAUR, ffmpeg-amd-full-gitAUR, ffmpeg-cudaAUR, ffmpeg-full-gitAUR, ffmpeg-gitAUR, ffmpeg-libfdk_aacAUR, ffmpeg-fullAUR, ffmpeg-decklinkAUR, ffmpeg-headlessAUR, ffmpeg-obsAUR, ffmpeg-amd-fullAUR)
- gtk-update-icon-cache (gtk-update-icon-cache-gitAUR)
- jackAUR (jack2-gitAUR, pipewire-jack-gitAUR, pipewire-full-jack-gitAUR, jack2, pipewire-jack)
- jansson (jansson-gitAUR)
- libajantv2AUR
- libdatachannel (libdatachannel-gitAUR, libdatachannel-niceAUR)
- librist (librist-gitAUR)
- libxinerama (libxinerama-randr-gitAUR)
- libxkbcommon-x11 (libxkbcommon-x11-gitAUR)
- mbedtls2
- onevpl (libvpl-gitAUR, libvpl)
- pciutils (pciutils-gitAUR)
- qrcodegencpp-cmakeAUR
- qt6-svg
- rnnoise (rnnoise-gitAUR)
- speexdsp (speexdsp-gitAUR)
- uthash
- asio (asio-gitAUR) (make)
- cef-minimal-obs-binAUR (make)
- cmake (cmake-gitAUR) (make)
- ffnvcodec-headers (ffnvcodec-headers-gitAUR, ffnvcodec-headers-11-1AUR) (make)
- git (git-gitAUR, git-glAUR) (make)
- libfdk-aac (libfdk-aac-gitAUR) (make)
- libxcomposite (make)
- luajit (luajit-2.1-lua52-gitAUR, luajit-gitAUR, luajit-openrestyAUR) (make)
- nlohmann-json (nlohmann-json-gitAUR) (make)
- pipewire (pipewire-gitAUR, pipewire-full-gitAUR) (make)
- python (python37AUR, python311AUR, python310AUR) (make)
- qt6-wayland (make)
- swig (swig-gitAUR) (make)
- vlc (vlc-luajitAUR, vlc-gitAUR) (make)
- wayland (wayland-gitAUR, wayland-asan-gitAUR, wayland-chromiumAUR) (make)
- websocketpp (make)
- x264 (x264-tmod-gitAUR, x264-gitAUR) (make)
- xdg-desktop-portal (xdg-desktop-portal-gitAUR) (make)
- libfdk-aac (libfdk-aac-gitAUR) (optional) – FDK AAC codec support
- libva-intel-driver (libva-intel-driver-gitAUR, libva-intel-driver-hybridAUR, libva-intel-driver-g45-h264AUR) (optional) – hardware encoding
- libva-mesa-driver (mesa-minimal-gitAUR, mesa-gitAUR, mesa-wsl2-gitAUR, mesa) (optional) – hardware encoding
- libxcomposite (optional) – XComposite capture support
- luajit (luajit-2.1-lua52-gitAUR, luajit-gitAUR, luajit-openrestyAUR) (optional) – Lua scripting
- pipewire (pipewire-gitAUR, pipewire-full-gitAUR) (optional) – Pipewire capture
- pipewire-media-session (pipewire-media-session-gitAUR) (optional) – Pipewire capture
- python (python37AUR, python311AUR, python310AUR) (optional) – Python scripting
- v4l2loopback-dkms (v4l2loopback-dkms-gitAUR) (optional) – Virtual webcam
- vlc (vlc-luajitAUR, vlc-gitAUR) (optional) – VLC Media Source
- xdg-desktop-portal (xdg-desktop-portal-gitAUR) (optional) – Pipewire capture
Required by (143)
- distroav (requires obs-studio)
- distroav-git (requires obs-studio)
- droidcam-obs-plugin (requires obs-studio)
- droidcam-obs-plugin-bin (requires obs-studio)
- droidcam-obs-plugin-git (requires obs-studio)
- glava-git (requires obs-studio) (make)
- glava-git (requires obs-studio) (optional)
- glava-ridged (requires obs-studio) (optional)
- looking-glass (requires obs-studio) (make)
- looking-glass-git (requires obs-studio) (make)
- looking-glass-host (requires obs-studio) (make)
- looking-glass-host-git (requires obs-studio) (make)
- looking-glass-module-dkms (requires obs-studio) (make)
- looking-glass-module-dkms-git (requires obs-studio) (make)
- looking-glass-rc (requires obs-studio) (make)
- looking-glass-rc-host (requires obs-studio) (make)
- looking-glass-rc-module-dkms (requires obs-studio) (make)
- lyrica (requires obs-studio) (optional)
- nudgis-obs-plugin (requires obs-studio)
- obs-3d-effect (requires obs-studio)
- Show 123 more...
Sources (3)
Latest Comments
« First ‹ Previous 1 2 3 4 5 6 7 8 9 10 11 .. 35 Next › Last »
dingodoppelt commented on 2024-03-17 00:32 (UTC)
no-prophet commented on 2024-03-16 06:59 (UTC)
Fails to build (libajantv2 is installed)
CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message): Could NOT find LibAJANTV2 (missing: AJA_LIBRARIES_INCLUDE_DIR) Call Stack (most recent call first): /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE) cmake/Modules/FindLibAJANTV2.cmake:98 (find_package_handle_standard_args) plugins/aja/cmake/legacy.cmake:17 (find_package) cmake/Modules/ObsHelpers.cmake:473 (include) plugins/aja/CMakeLists.txt:3 (legacy_check)
-- Configuring incomplete, errors occurred! ==> ERROR: A failure occurred in build(). Aborting... -> error making: obs-studio-git-exit status 4
Davidyz commented on 2024-03-11 20:20 (UTC)
At the moment the official build instruction included the cmake option -DENABLE_AJA=0
. The building failed for me until I added this option to the cmake
command in the build
function of this PKGBUILD
. I don't know enough about obs (or cpp in general) but if your build fails please consider this. Here's my complete build
function:
build() {
cmake -B build -S $pkgname \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_BROWSER=ON \
-DCEF_ROOT_DIR="/opt/cef-obs" \
-DENABLE_LIBFDK=ON \
-DENABLE_AJA=0 \
-Wno-dev
cmake --build build
}
seo.disparate commented on 2024-01-28 01:40 (UTC) (edited on 2024-01-28 01:44 (UTC) by seo.disparate)
@zangoku
1 Take the patch text and save it into a file "obs_libdatachannel_fix.patch" and place it in the same directory as the PKGBUILD.
2 Add the patch filename to the "source" array in the PKGBUILD:
source=("$pkgname::git+https://github.com/obsproject/obs-studio.git#branch=master"
"git+https://github.com/Mixer/ftl-sdk.git"
"git+https://github.com/obsproject/obs-browser.git"
"git+https://github.com/obsproject/obs-websocket.git"
"obs_libdatachannel_fix.patch"
)
3 Add the md5sum of the patch to the "md5sums" array in the PKGBUILD (use the output of md5sum obs_libdatachannel_fix.patch
:
md5sums=("SKIP" "SKIP" "SKIP" "SKIP" "024f5214faf840efa736bbd42386b540")
4 Add the patch command in "prepare" function to apply the patch in the PKGBUILD:
prepare() {
cd $pkgname
gitconf="protocol.file.allow=always"
git config submodule.plugins/obs-outputs/ftl-sdk.url $srcdir/ftl-sdk
git config submodule.plugins/obs-browser.url $srcdir/obs-browser
git config submodule.plugins/obs-websocket.url $srcdir/obs-websocket
git -c $gitconf submodule update
patch -p1 < "$srcdir/obs_libdatachannel_fix.patch"
}
5 Build the package. It should apply the patch during the prepare step as specified.
EDIT: Oh they updated. Well I'm leaving this comment anyway for those who want to have an example of patching the source.
zangoku commented on 2024-01-27 20:42 (UTC)
@seo.disparate how do I apply your patch?
seo.disparate commented on 2024-01-21 09:09 (UTC) (edited on 2024-01-21 12:25 (UTC) by seo.disparate)
Fails to build due to updated libdatachannel
. I made a patch that seems to fix the compiler errors:
--- a/plugins/obs-webrtc/whip-output.cpp
+++ b/plugins/obs-webrtc/whip-output.cpp
@@ -112,16 +112,14 @@ void WHIPOutput::ConfigureAudioTrack(std::string media_stream_id,
auto rtp_config = std::make_shared<rtc::RtpPacketizationConfig>(
ssrc, cname, audio_payload_type,
- rtc::OpusRtpPacketizer::defaultClockRate);
- auto packetizer = std::make_shared<rtc::OpusRtpPacketizer>(rtp_config);
+ rtc::OpusRtpPacketizer::DefaultClockRate);
+ auto opus_packetizer = std::make_shared<rtc::OpusRtpPacketizer>(rtp_config);
audio_sr_reporter = std::make_shared<rtc::RtcpSrReporter>(rtp_config);
auto nack_responder = std::make_shared<rtc::RtcpNackResponder>();
- auto opus_handler =
- std::make_shared<rtc::OpusPacketizationHandler>(packetizer);
- opus_handler->addToChain(audio_sr_reporter);
- opus_handler->addToChain(nack_responder);
- audio_track->setMediaHandler(opus_handler);
+ opus_packetizer->addToChain(audio_sr_reporter);
+ opus_packetizer->addToChain(nack_responder);
+ audio_track->setMediaHandler(opus_packetizer);
}
void WHIPOutput::ConfigureVideoTrack(std::string media_stream_id,
@@ -142,17 +140,15 @@ void WHIPOutput::ConfigureVideoTrack(std::string media_stream_id,
auto rtp_config = std::make_shared<rtc::RtpPacketizationConfig>(
ssrc, cname, video_payload_type,
rtc::H264RtpPacketizer::defaultClockRate);
- auto packetizer = std::make_shared<rtc::H264RtpPacketizer>(
+ auto h264_packetizer = std::make_shared<rtc::H264RtpPacketizer>(
rtc::H264RtpPacketizer::Separator::StartSequence, rtp_config,
MAX_VIDEO_FRAGMENT_SIZE);
video_sr_reporter = std::make_shared<rtc::RtcpSrReporter>(rtp_config);
auto nack_responder = std::make_shared<rtc::RtcpNackResponder>();
- auto h264_handler =
- std::make_shared<rtc::H264PacketizationHandler>(packetizer);
- h264_handler->addToChain(video_sr_reporter);
- h264_handler->addToChain(nack_responder);
- video_track->setMediaHandler(h264_handler);
+ h264_packetizer->addToChain(video_sr_reporter);
+ h264_packetizer->addToChain(nack_responder);
+ video_track->setMediaHandler(h264_packetizer);
}
/**
A quick test recording seems to indicate this works. Feel free to test it yourself.
Wait no, I didn't test webrtc, which this code belongs to...
EDIT: I tested a WHIP livestream session to myself using https://ossrs.io/lts/en-us/blog/Experience-Ultra-Low-Latency-Live-Streaming-with-OBS-WHIP . It appears to work with h264 video and opus audio, so I think this patch works properly.
seo.disparate commented on 2023-12-03 01:25 (UTC)
My PR got merged upstream, so this package should build now.
Pinned Comments
thotypous commented on 2021-02-05 14:12 (UTC)
If you don't want to build this package yourself, hourly builds are available at https://aur.chaotic.cx
benklett commented on 2016-02-06 23:11 (UTC) (edited on 2016-08-10 14:01 (UTC) by benklett)