在linux Mint下架设流媒体服务器的经验

本文分享了在Linux Mint环境下搭建流媒体服务器的经验,涉及FFmpeg与Libav的对比与选择,以及如何解决MP4播放问题和非MP4文件转码,提供了一站式的解决方案。

在linux Mint下架设流媒体服务器的经验

ffmpeg与Libav之争

定位都是音视频解码。libav是从ffmpeg分支而来,主要是有一小撮程序员不满ffmpeg的开发管理架构,照他们的说法,不满于ffmpeg的独裁管理方式,对代码有写权限的人太少,导致很多程序员觉得不够自由,详情可以参考链接。在ubuntu14.04时,repository里用libav替代了ffmpeg。如果想使用ffmpeg的话,可能需要使用第三方ppa或自己下载源码编译。这对ffmpeg来说是个不小的打击,因为ubuntu目前在linux发行版中处于前三的位置。但是在ubuntu 15时,会将ffmpeg重新纳入进来。从使用的角度来说,libav的发布周期非常短,会非常及时把一些新的更新包含进来,但是如果真要实用的话,个人还是持保留意见;并且它会包含一些API break的东西。libav给开发者带来了足够的自由度与发挥空间,但是一定程度上忽略了用户的感受。ffmpeg经过这次纷争,态度也慢慢变得开放,可以说是一件好事。

gstreamer

定位是多媒体开发框架,其自身提供了一个多媒体文件处理的管道架构,通过提供插件机制来处理多媒体文件。也就是说它本身不能对文件进行处理,但是可以通过插件方式支持各种需求。因此其社区非常强大。如果是想做二次开发,还是gstreamer会比较合适。如果直接上ffmpeg/libav的话,可能学习曲线略高。

Darwin Streaming Server

目前需要自己手动编译,需要打2个patch:dss-6.0.3.patch,dss-hh-20080728-1.patch。
DarwinStreamingServer:流媒体服务器
streamingadminserver.pl:web管理服务器
/usr/local/movies:多媒体文件目录
/var/streaming:web管理服务器目录,日志目录,playlist
web管理界面

问题

如果mp4不包含hint信息,不能通过rtsp协议播放;
可以通过MP4Box置入hint信息
sudo apt-get install gpac
MP4Box -hint input.mp4

对于非mp4的文件,怎么转码
使用avconv转码

Linux Mint 22.2 上建立 Samba 服务器并让 Windows 10 作为客户端使用是可行的,以下是具体步骤: #### 安装 Samba 及相关工具 在 Linux Mint 22.2 中,默认可能不识别 `system-config-samba` 命令,需要先安装相关软件包。打开终端,执行以下命令: ```bash sudo apt-get install system-config-samba samba ``` #### 配置 Samba - **编辑 Samba 配置文件**:使用文本编辑器(如 `nano` 或 `vim`)打开 Samba 配置文件 `/etc/samba/smb.conf`。 ```bash sudo nano /etc/samba/smb.conf ``` - **添加共享目录**:在文件末尾添加共享目录的配置信息,示例如下: ```plaintext [shared_folder] comment = Shared Folder path = /home/user/shared # 替换为实际的共享目录路径 browsable = yes read only = no guest ok = no create mask = 0775 directory mask = 0775 ``` - **保存并退出**:按 `Ctrl + X`,然后按 `Y` 确认保存,最后按 `Enter` 退出。 #### 创建 Samba 用户 ```bash sudo smbpasswd -a username # 替换为实际的用户名 ``` #### 重启 Samba 服务 ```bash sudo systemctl restart smbd nmbd ``` #### 配置 Windows 10 客户端 - **打开文件资源管理器**:在地址栏输入 `\\server_ip_address`(替换为 Linux Mint 22.2 的 IP 地址)。 - **输入用户名和密码**:使用之前创建的 Samba 用户名和密码登录。 #### 防火墙设置 由于 Windows 系统默认可能会有软件防火墙阻止 Samba,在使用前需确保目标系统允许文件共享。在 Linux Mint 22.2 上,需要开放 Samba 相关端口(TCP 139、445,UDP 137、138),可以使用以下命令: ```bash sudo ufw allow samba ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值