OBS环境搭建以及MeeGo 1.2.0 导入

本文详细介绍了如何在openSUSE 11.4上搭建并配置OBS(开放构建服务)环境,包括安装操作系统、配置网络服务、安装OBS相关组件等步骤,并提供了导入Meego项目的具体方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开始整理这几天搭建OBS的问题

obs 搭建相关参考链接:

http://wiki.meego.com/User:Stskeeps/10_easy_steps_to_a_local_OBS

http://blog.youkuaiyun.com/anewhuahua/article/details/6115430

http://wiki.meego.com/Build_Infrastructure/Sysadmin_Distro/OBS_setup_openSUSE114

http://blog.chinaunix.net/space.php?uid=25153965&do=blog&id=160777

可以去wiki.meego.com搜索obs获取更多有用的信息


obs及osc命令使用相关链接:

http://en.opensuse.org//openSUSE:Build_Service_Tutorial

http://jianlee.ylinux.org/Computer/Server/index.html 


步骤及细节:

1 在 http://www.opensuse.org/zh-cn/ 下载opensuse操作系统,当前稳定版本为11.4

2 安装opensuse至服务器,按照提示进行操作即可,保持服务器内存大于1G,否则可能安装不成功。

3 安装成功后,为了便于操作,安装启动SAMBA,SSH等工具。

zypper ref
zypper in samba
特别注意关闭opensuse防火墙或者修改防火墙配置添加端口号。

关闭防火墙

rcSuSEfirewall2 stop
或者修改配置
vi /ete/sysconfig/Susefirewall2
FW_SERVICES_EXT_TCP="ssh 445 139 389 telnet 80 81 82 "
FW_SERVICES_EXT_UDP="137 138 "
rcSuSEfirewall2 restart
rcsshd start
rcsmb start
chkconfig --add sshd
chkconfig --add smb

在opensuse下有BUG,rcsmb start不成功,报错可以查看log。

解决方法:

https://bugzilla.novell.com/show_bug.cgi?id=666450

关闭Novoll AppArmor,或更新/etc/apparmor.d/下关于samba的配置,或者从面板设置。

/usr/sbin/smbd (flags=complain) {
...
}
4 可以从其他电脑登陆服务器了,进入ssh后,如果要获取root权限,请使用su - ,使用su可能存在环境变量不对的问题。

5 开始构建obs环境。

cd /etc/zypp/repos.d/;
wget http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.4/openSUSE:Tools.repo
zypper ref
加入工具源并且更新

细节步骤可参考http://blog.chinaunix.net/space.php?uid=25153965&do=blog&id=160561,配合其他参考链接.注意相关127.0.0.1改成我们的服务器IP。可能需要关闭防火墙,OBS好像还用到了类似5232等端口号。

http://IP/ - the web interface for your own OBS :)

http://IP:81/ - API interface, used in 'osc' commands - and also to make new users and change your administrator password

http://IP:82/ - repository, used for downloading final packages

可以通过浏览器访问各个端口。访问http://IP:82/ 如果返回404

mkdir /srv/obs/repos
chown -R obsrun:obsrun /srv/obs/repos

404 while trying to see the package repository

Check, if the /srv/obs/repos directory is owned by obsrun.obsrun - if not, chown it. Failing to do so will prevent publisher from publishing your repositories in repository directory, and when you try accessing them you will get the 404.


6 搭建好环境后,安装obs-worker。

参考http://blog.chinaunix.net/space.php?uid=25153965&do=blog&id=160777启动obs-worker

7 导入meego数据

mkdir -p /obs/imports
mkdir -p /obs/build
ln -s /obs/build /srv/obs/build
注意最后一句不能漏掉 /srv/obs/build是obs的一个默认目录,可以查看/etc/sysconfig/BSConfig.m

可以在网上找到一个脚本进行快速下载导入。

wget http://stskeeps.subnetmask.net/meego/import-meego-release.sh
注意改脚本对于meego 1.2和 armvh7l的版本需要进行相应的修改。

armvh7对应调度器为armv8el。首先打开OBS架构选项。

 # vi /etc/sysconfig/obs-server
      OBS_SCHEDULER_ARCHITECTURES="i586 armv5el armv8el"
使用脚本还需要下载Meego1.2的prjconf

git clone http://git.gitorious.org/meego-developer-tools/obs-project-config.git
ls obs-project-config
使用脚本命令

mv import-meego-release.sh /usr/sbin
import-meego-release.sh 1.2.0 rsync://mirrors.kernel.org/meego/releases /home/linj/obs-project-config/MeeGo_1.2
如果遇到认证失败的问题,第一次使用osc的时候,配置usr和passwd。譬如使用
osc meta prj -e m
此时会要求你配置用户和密码。OBS的默认账户:Admin ,密码是opensuse

也可以修改.oscrc添加

 vi /root/.oscrc
[http://192.168.129.171:81]
user=Admin
pass=opensuse
这样就完成了MeeGo 1.2 的仓库导入。














### 如何使用 OBS 和 NDI 搭建直播或推流环境 为了通过 OBS 使用 NDI 协议搭建直播或推流环境,可以按照以下方法完成配置: #### 配置 OBS 支持 NDI 输入输出 OBS 是一款功能强大的开源直播软件,支持多种输入和输出方式。要启用 NDI 功能,需先安装 **OBS-NDI 插件**[^1]。插件安装完成后,可以在 OBS 的源列表中找到 “NDI Source” 或者在输出设置中看到 NDI 输出选项。 以下是具体操作流程: 1. 下载并安装最新版本的 OBS Studio 软件。 2. 安装 OBS-NDI 插件,该插件可以从 GitHub 页面获取[^1]。 3. 打开 OBS 后,在左侧的场景面板点击“+”,选择 “NDI Source”。这允许 OBS 接收来自其他设备(如摄像头或其他运行 NDI 应用程序的计算机)的信号。 4. 如果需要将 OBS 导播画面发送给另一台设备,则可在混音器界面右下角找到 NDI 输出开关,并将其开启[^1]。 #### 利用 NDI 实现多机位拍摄 当多个设备都具备 NDI 发送能力时,可利用它们构建复杂的多机位导播系统。例如,智能手机可以通过下载第三方应用程序成为兼容 NDI 的摄像机,并连接到运行 OBS 的主机上[^1]。这样做的好处在于能够灵活调整镜头角度而不受物理位置限制,同时减少传统 SDI/HDMI 连接带来的布线麻烦。 对于更高规格的应用场合,像博冠8K摄像机G1这样的专业级产品也完全适配此类工作流。它不仅内置了丰富的网络协议支持(包括但不限于 TCP/IP, UDP, DHCP, RTSP, RTMP 等),还特别强调了对 SRT 及 NDI 的良好集成[^3]。这意味着即使是在资源有限的小型团队里,也能借助简单的硬件组合——即一部高性能摄像机加上一台预装 OBS 的笔记本电脑——来达成高质量的内容创作目标[^4]。 ```python import obspython as obs def script_properties(): props = obs.obs_properties_create() # 添加一个用于选择 NDI 源的属性项 p = obs.obs_properties_add_list( props, "ndi_source", "Select an NDI source:", obs.OBS_COMBO_TYPE_LIST, obs.OBS_COMBO_FORMAT_STRING ) ndi_sources = get_ndi_sources() # 假设此函数返回可用的 NDI 源名称列表 for src in ndi_sources: obs.obs_property_list_add_string(p, src, src) return props def get_ndi_sources(): """模拟获取当前可用的 NDI 源""" import ntplib.client # 此处仅为示意用途,请替换为实际调用库 client = ntplib.NTPClient() sources = ["Camera1", "ScreenCapture"] try: response = client.request('pool.ntp.org') if int(response.offset * 1e9) % 2 == 0: # 条件判断仅作演示之用 sources.append("VirtualCam") except Exception as e: pass return sources ``` 以上脚本片段展示了如何扩展 OBS 的 Python API 来动态加载 NDI 源的选择菜单。虽然这里使用的 `ntplib` 并不直接关联于 NDI 技术栈,但它说明了开发者可以根据特定需求定制化自己的工具链[^2]。 --- ####
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值