当前位置:网站首页>Raspberry pie CM4 -- using metartc3.0 to integrate ffmpeg to realize webrtc push-pull streaming
Raspberry pie CM4 -- using metartc3.0 to integrate ffmpeg to realize webrtc push-pull streaming
2022-07-28 20:18:00 【K.L.Zous】
One 、 Preface
Because the project needs real-time voice communication , It integrates the domestic gods MetaRTC3.0 function
The text is as follows :
https://blog.csdn.net/m0_56595685/article/details/124366760?spm=1001.2014.3001.5502

1、 This article belongs to the novice to , Mainly about the compilation process ;
2、 The article is too long , Lots of pictures , And the compilation process is very time-consuming ;
3、 Please do it in order , Free play is easy to go wrong , Don't ask me how I know ......
Two 、 Environmental Science
1、 Hardware preparation
(1) What I have in my hand is CM4 belt emmc Version of (lite Direct brush of SD Just put it on the card )
(2) Taobao bought IO plate
2、 Brush system
(1) Insert these two jumper caps before brushing the system 
(2)win10 Install this driver on
(3) The installation directory opens this rpiboot.exe
The status after opening is as follows :
(4) And then use type-c Wire will be connected IO On the board type-c Mouth and win10 Of usb Mouth connection

(5) The successful connection shows the following ( The window will close automatically )
(6) And then you can win10 It is recognized as u Dish up 
(7) Download address of official burning tool Select this operating system after installation 
Tips :emmc Burning the system is slow , Please be patient
This tool also has a new function , It is to write the settings automatically when burning the system , Save a lot of trouble , Strongly recommend !
3、 Ready to power on
After burning the system , power failure , Pull off both jumper caps , Power on again
3、 ... and 、 Compilation and installation NASM
1、 download :
2、 install :
tar xvf nasm-2.15.05.tar.bz2
cd nasm-2.15.05
./configure
make
sudo make install
Four 、 Compilation and installation X264
1、 download :
2、 install :
tar xvf x264-master.tar.bz2
cd x264-master
./configure --host=arm-linux --cross-prefix=/usr/bin/aarch64-linux-gnu- --disable-asm --enable-shared
make
sudo make install
sudo cp _install/include /usr/ -rf
sudo cp _install/lib /usr/ -rf
5、 ... and 、 The installation integrates metaRTC Of ffmpeg
explain : This one contains ffmpeg and metaRTC
1、 download :
2、 Compile third-party packages
unzip ffmpeg-metartc-main.zip
cd ffmpeg-metartc-main/FFmpeg-n4.3.3/metartc3
The folder contains this 3 A package , All need to be compiled 
(1) srtp2
tar xvf libsrtp-2-fit.tar.gz
cd libsrtp-2-fit
./configure
Find this file 
In the 82 Row insertion static
After modifying the effect 
After modifying the above file, compile ( Otherwise, the report will be wrong , Try it )
make
make The success is as follows 
sudo make install
(2) openssl-1.1-fit
tar xvf openssl-1.1-fit.tar.gz
cd openssl-1.1-fit/
export CC=/usr/bin/aarch64-linux-gnu-gcc
./Configure linux-aarch64
make
sudo make install
(3) SpeexDSP
sudo apt-get install -y autoconf automake libtool
You read that right , You really need to install this first ......
tar xvf speexdsp-SpeexDSP-1.2.0.tar.gz
cd speexdsp-SpeexDSP-1.2.0/
sh autogen.sh
./configure
make
sudo make install
Can't bear to see this ???
It's not over yet , Let's move on !!!
(4) metaRTC-3.0release
1) download :
2) compile :
sudo apt-get install cmake
You read that right , You really need to install this first ......
unzip metaRTC-3.0release.zip
cd metaRTC-3.0release/libmetartccore3
sh cmake_arm.sh
cd build
ls
Confirm whether there is this file 
sudo cp libmetartccore3.a /usr/local/lib
3、 Everything is available. , Protagonist on stage :
(1) Go back to the home directory
cd ~/mateRTC3/ffmpeg-metartc-main/FFmpeg-n4.3.3/
Let's take a photo first 
(2) The east wind rises and the clouds fly !
This is why I have been tossing about for a long time ......
./configure --enable-shared --enable-libx264 --enable-gpl --extra-libs='-L/path/metartc3 -lmetartccore3 -lspeexdsp -lpthread -lsrtp2 -lssl -lcrypto -ldl'

When you see this picture, it means success 





Then there is a long make, Probably 30 Minutes! …Orz
make
sudo make install
边栏推荐
- WUST-CTF2021-re校赛wp
- Find the memory occupied by the structure
- In the second half of 2022, the system integration project management engineer certification starts on August 20
- Using Lex (Flex) to generate lexical analyzer of PL language
- C language implementation of strncpy
- Basic knowledge of communication network 01
- Advanced notes (Part 2)
- C language array and bubble sort
- C+ + core programming
- C language - data storage
猜你喜欢

C语言数据 3(1)

Array out of bounds

2. Floating point number, the difference between float and double in C language and how to choose them

Implementation of strstr in C language

9. Pointer of C language (5) how many bytes does the pointer variable occupy
![[C language] function](/img/81/c185e2bb5eccc13433483f9558f52a.png)
[C language] function

JS preventdefault() keyboard input limit onmousewheel stoppropagation stop event propagation

KubeEdge发布云原生边缘计算威胁模型及安全防护技术白皮书

Theoretical knowledge of digital image (I) (personal analysis)

Why is customer support important to SaaS?
随机推荐
8. Compilation errors of C language and Chinese explanation
Digital filter design matlab
[C language] Pointer advanced knowledge points
【实验分享】CCIE—BGP反射器实验
[C language] step jumping problem [recursion]
Basic knowledge of communication network 01
Stories of Party members | Li qingai uses cartoons to drive farmers to increase income and become rich
Deploy ZABBIX automatically with saltstack
Maximum exchange [greedy thought & monotonic stack implementation]
mmo及时战斗游戏中的场景线程分配
ssm中项目异常处理
Deploy LNMP automatically with saltstack
C语言数据 3(2)
Read how to deploy highly available k3s with external database
Quick sort template
C language - data storage
Solve the cookie splitting problem (DP)
Method number problem for solving sum of numbers (knapsack problem)
Richpedia: A Large-Scale, Comprehensive Multi-Modal Knowledge Graph
[C language] scanf format input and modifier summary