0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

ElfBoard技術貼|如何在ELF 1開發(fā)板上搭建流媒體服務器

ElfBoard ? 2024-08-20 14:48 ? 次閱讀
wKgaombELVOActtnAAiTWFXdZfk755.png(ELF1/ELF1S開發(fā)板及顯示屏)

流媒體服務器是一種專門用于傳輸實時數(shù)據(jù)流的服務器軟件,廣泛用于視頻直播、視頻會議、音頻播放等應用場景。在嵌入式開發(fā)領域,將流媒體服務器部署到開發(fā)板上可以實現(xiàn)諸如視頻監(jiān)控、實時數(shù)據(jù)傳輸?shù)裙δ堋1疚膶⒔榻B如何利用nginx和其rtmp流媒體模塊,在ELF 1開發(fā)板上搭建一個高效穩(wěn)定的流媒體服務器。

1、下載源碼

http://nginx.org/download/

nginx-rtmp-module模塊下載地址:
https://github.com/arut/nginx-rtmp-module.git

2、拷貝nginx-1.20.0.tar.gz和nginx-rtmp-module-master.zip到開發(fā)環(huán)境/home/elf/work目錄下解壓

elf@ubuntu:~/work$ tar -zxvf nginx-1.20.0.tar.gz elf@ubuntu:~/work$ unzip nginx-rtmp-module-master.zip elf@ubuntu:~/work$ cd nginx-1.20.0/

3、執(zhí)行環(huán)境變量

elf@ubuntu:~/work/nginx-1.20.0$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi

4、配置源碼

(1)修改auto/cc/name文件

elf@ubuntu:~/work/nginx-1.20.0$ vi auto/cc/name

將21行處的“exit 1”注釋掉,如下圖所示:

wKgZombELeOARJCzAAF2XSVrUo0617.png

(2)修改auto/types/sizeof文件

elf@ubuntu:~/work/nginx-1.20.0$ vi auto/types/sizeof

將15行處的“ngx_size=”修改為“ngx_size=4”

將36行處的“$CC”修改為“gcc”

將43行處的“ngx_size=`$NGX_AUTOTEST`”修改為“ngx_size=4”

wKgZombELi-AT4ZmAAE7zPH--7Y159.png

(3)執(zhí)行如下命令進行配置

elf@ubuntu:~/work/nginx-1.20.0$ ./configure --prefix=/home/elf/work/nginx-1.20.0/install --with-http_ssl_module --with-http_mp4_module --with-http_v2_module --with-http_v2_module --without-http_upstream_zone_module --add-module=/home/elf/work/nginx-rtmp-module-master

配置成功打印信息如下圖所示:

wKgZombELnGAPBHLAAUNEsaglwA915.png

(4)修改objs/ngx_auto_config.h文件

elf@ubuntu:~/work/nginx-1.20.0$ vi objs/ngx_auto_config.h

添加如下內(nèi)容:

#ifndef NGX_HAVE_SYSVSHM #define NGX_HAVE_SYSVSHM 1 #endif

如下圖所示:

wKgaombELr2AJxvKAAKU0d2guWY811.png

5、編譯源碼

elf@ubuntu:~/work/nginx-1.20.0$ make

編譯成功如下圖所示:

wKgZombELvmAGdJDAAX-bNGWi7A620.png

6、安裝

elf@ubuntu:~/work/nginx-1.20.0$ make install elf@ubuntu:~/work/nginx-1.20.0$ ls install/ conf html logs sbin

7、拷貝install安裝目錄下的文件到ELF 1開發(fā)板

(1)拷貝sbin下的nginx到ELF 1開發(fā)板的/home/root路徑下

root@ELF1:~# cp /run/media/sda1/sbin/nginx .

(2)在ELF 1開發(fā)板/etc目錄下新建nginx目錄

root@ELF1:~# mkdir /etc/nginx

(3)拷貝conf、html、logs目錄到開發(fā)板/etc/nginx目錄

root@ELF1:~# cp -r /run/media/sda1/conf/ /etc/nginx/ root@ELF1:~# cp -r /run/media/sda1/html/ /etc/nginx/ root@ELF1:~# cp -r /run/media/sda1/logs/ /etc/nginx/ root@ELF1:~# ls /etc/nginx/ conf html logs

8、修改/etc/nginx/conf/nginx.conf文件

將2行處的“#user nobody”修改為“user root”,如下圖所示:

wKgaombEL5CACNYEAAINW6fO1Ik348.png

9、測試

(1)查看版本信息和幫助信息

root@ELF1:~# ./nginx -V root@ELF1:~# ./nginx -h

wKgZombEL72AEDPKAANoofmtVaU777.png

(2)啟動nginx

root@ELF1:~# ./nginx -p /etc/nginx/ root@ELF1:~# ps -aux

wKgZombEL--AOFObAARyQWR3CE8788.png

(3)打開電腦瀏覽器,輸入開發(fā)板的IP地址,如下圖所示:

wKgZombEO-KAO3qmAAC5oJCqIgY075.png

通過以上步驟就已經(jīng)完成了流媒體服務器的搭建。希望本篇指南能成為您在探索嵌入式技術旅程中的得力助手。如果您在實踐中遇到任何問題,歡迎隨時留言交流。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5052

    文章

    18908

    瀏覽量

    300702
  • 服務器
    +關注

    關注

    12

    文章

    8843

    瀏覽量

    84946
  • 流媒體技術
    +關注

    關注

    0

    文章

    3

    瀏覽量

    5416
  • 流媒體
    +關注

    關注

    1

    文章

    192

    瀏覽量

    16639
  • 開發(fā)板
    +關注

    關注

    25

    文章

    4834

    瀏覽量

    96821
收藏 人收藏

    評論

    相關推薦

    ELF 1技術|在NXP源碼基礎適配開發(fā)板的按鍵功能

    ELF1開發(fā)板。接下來,我們將詳細闡述適配過程中關于按鍵功能實現(xiàn)的完整步驟。值得一提的是,ELF1開發(fā)板預置了標識為K
    的頭像 發(fā)表于 03-08 16:58 ?878次閱讀
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>技術</b><b class='flag-5'>貼</b>|在NXP源碼基礎<b class='flag-5'>上</b>適配<b class='flag-5'>開發(fā)板</b>的按鍵功能

    ElfBoard技術|如何在NXP源碼基礎適配ELF 1開發(fā)板的UART功能

    UART即通用異步收發(fā),是一種支持全雙工串行通信協(xié)議的接口。在i.MX6ULL處理平臺上,該處理原生支持多達8路的UART接口,提供了豐富的串行通信能力。 針對ELF
    的頭像 發(fā)表于 09-25 13:56 ?2153次閱讀
    <b class='flag-5'>ElfBoard</b><b class='flag-5'>技術</b><b class='flag-5'>貼</b>|如<b class='flag-5'>何在</b>NXP源碼基礎<b class='flag-5'>上</b>適配<b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>開發(fā)板</b>的UART功能

    飛凌ElfBoard ELF 1板卡-如何在ELF 1開發(fā)板實現(xiàn)對java的支持

    /mergesort# java MergeDemo其他測試例程方法類似。 完成上述一系列步驟,即可在ELF 1開發(fā)板上成功實現(xiàn)Java環(huán)境的搭建與運行,我們衷心希望這篇教程指南能成為
    發(fā)表于 03-20 09:51

    飛凌嵌入式-ElfBoard-項目分享|基于ELF 1S開發(fā)板完成的物聯(lián)網(wǎng)開源項目

    方提供的移植文檔。 在涂鴉云服務器建立好產(chǎn)品,完成功能定義,完成設備交互面板設計,移植完Tuya Link SDK,等一系列操作后,就可以讓ELF 1S
    發(fā)表于 05-16 09:12

    Linux下視頻流媒體直播服務器搭建詳解

    下面給大家介紹如何在Linux下搭建流媒體服務器系統(tǒng)(以八百里流媒體直播系統(tǒng)為例) 第一步:安裝前1
    發(fā)表于 06-02 14:35

    什么是流媒體服務器?

    服務器就是MPEG4等壓縮格式,會遵循一定的技術指示然后進行壓縮編碼,從而可以進行數(shù)據(jù)傳輸和存儲。  它們主要的區(qū)別在于:  流媒體它是邊傳邊揪的一種格式,在互聯(lián)網(wǎng)中,它可以傳著音頻,媒體
    發(fā)表于 06-30 09:28

    webrtc流媒體轉(zhuǎn)發(fā)服務器是如何定義的

    webrtc流媒體轉(zhuǎn)發(fā)服務器定義難點建立連接如何轉(zhuǎn)發(fā)媒體流如何高效轉(zhuǎn)發(fā)媒體流轉(zhuǎn)發(fā)后如何保證視頻質(zhì)量定義由于webrtc是基于P2P技術的一個
    發(fā)表于 02-11 06:16

    i.MX6ULL——ElfBoard ELF1板卡 TFTP網(wǎng)絡服務搭建的方法來啦

    在網(wǎng)絡服務搭建和測試時,ubuntu的網(wǎng)絡模式需要設置為橋接模式,電腦主機、ubuntu主機、開發(fā)板三者的ip要處于同一網(wǎng)段,并且ubuntu主機要能上外網(wǎng)。關閉ubuntu和windows防火墻
    發(fā)表于 11-23 09:56

    技術分享】如何在嵌入式Linux平臺上使用Nginx搭建RTMP流媒體服務器?

    RTMP作為目前主流的流媒體傳輸協(xié)議,廣泛應用于音視頻領域。那么我們?nèi)绾慰焖僭谇度胧桨遄?b class='flag-5'>上搭建起自己的rtmp流媒體服務器?本篇文章將帶大家
    的頭像 發(fā)表于 01-05 15:15 ?595次閱讀

    瑞芯為RK3568開發(fā)板搭建NFS服務器

    瑞芯為RK3568開發(fā)板搭建NFS服務器
    的頭像 發(fā)表于 05-24 14:10 ?1124次閱讀
    瑞芯為RK3568<b class='flag-5'>開發(fā)板</b><b class='flag-5'>搭建</b>NFS<b class='flag-5'>服務器</b>

    技術分享】如何在嵌入式Linux平臺上使用Nginx搭建RTMP流媒體服務器?

    RTMP作為目前主流的流媒體傳輸協(xié)議,廣泛應用于音視頻領域。那么我們?nèi)绾慰焖僭谇度胧桨遄?b class='flag-5'>上搭建起自己的rtmp流媒體服務器?本篇文章將帶大家
    的頭像 發(fā)表于 01-13 09:27 ?1199次閱讀
    【<b class='flag-5'>技術</b>分享】如<b class='flag-5'>何在</b>嵌入式Linux平臺上使用Nginx<b class='flag-5'>搭建</b>RTMP<b class='flag-5'>流媒體</b><b class='flag-5'>服務器</b>?

    使用英特爾開發(fā)者套件搭建RTMP流媒體服務器

    本文將會介紹如何使用英特爾 開發(fā)者套件——愛克斯開發(fā)板快速搭建 RTMP 流媒體服務器,并利用 FFmpeg* 實現(xiàn)視頻推流的功能。由于 F
    的頭像 發(fā)表于 07-18 15:58 ?705次閱讀
    使用英特爾<b class='flag-5'>開發(fā)</b>者套件<b class='flag-5'>搭建</b>RTMP<b class='flag-5'>流媒體</b><b class='flag-5'>服務器</b>

    ELF 1技術|如何將Python3.6.9移植到開發(fā)板

    如何進行交叉編譯并移植到ELF1開發(fā)板。在網(wǎng)址:https://www.python.org/ftp/python/下載Python-3.6.9.tar.xz壓縮
    的頭像 發(fā)表于 02-22 14:06 ?369次閱讀
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>技術</b><b class='flag-5'>貼</b>|如何將Python3.6.9移植到<b class='flag-5'>開發(fā)板</b><b class='flag-5'>上</b>

    ELF技術|如何在開發(fā)板實現(xiàn)對Java的支持

    Java作為一種功能強大且廣泛應用的編程語言,具有廣泛的適應性和實用性。在ELF1開發(fā)板上集成Java支持,無疑將賦予嵌入式開發(fā)者更廣闊的選擇空間,今天就為各位小伙伴詳細解析如何在
    的頭像 發(fā)表于 03-13 16:47 ?436次閱讀
    <b class='flag-5'>ELF</b><b class='flag-5'>技術</b><b class='flag-5'>貼</b>|如<b class='flag-5'>何在</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>上</b>實現(xiàn)對Java的支持

    ElfBoard技術|在NXP源碼基礎適配ELF 1開發(fā)板的按鍵功能

    本次源碼適配工作是在NXPi.MX6ULLEVK評估的Linux內(nèi)核源碼(特定版本:Linux-imx_4.1.15)基礎上進行的。主要目標是調(diào)整功能接口引腳配置,以適應ELF1開發(fā)板。接下來
    的頭像 發(fā)表于 07-10 09:54 ?484次閱讀
    <b class='flag-5'>ElfBoard</b><b class='flag-5'>技術</b><b class='flag-5'>貼</b>|在NXP源碼基礎<b class='flag-5'>上</b>適配<b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>開發(fā)板</b>的按鍵功能