Getting Started with RTSP and AP1302 using GStreamer

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Getting Started with RTSP and AP1302 using GStreamer

Getting Started with RTSP and AP1302 using GStreamer

Introduction.

i.MX processors are featured in multimedia applications, usually using cameras and/or displays. There are customers interested in streaming capabilities, their environment can provide network access and that's when streaming protocols come in handy.

There are different protocols that offer distinct requirements and benefits, in this article we will explore RTSP (Real Time Streaming Protocol) which was developed for audio/video transport and works over RTP. RTSP is adopted by amongst many applications, for surveillance cameras.

We will review RTSP use cases in a flexible setup, for customers exploring client and server capabilities, using latest camera release AP1302 and libcamera pipelines.

1. Hardware Setup.

  • iMX95 19x19 EVK. Power supply connected to J5, USB type-C debug cable to J31, AP1302 XRPI-CAM-MINISAS to J13, Ethernet cable to J11.
  • FRDM-IMX8MPLUS. Power supply connected to J2, USB type-C debug cable to J19, HDMI cable to J16, Ethernet cable to J5.
  • Ethernet cables must be connected to network router or switch that can assign them IP.
  • SD/eMMC flashed with Yocto Linux Factory LF_6.12.20-2.0.0 images.
IMG_2901.jpeg

Board selection can vary depending on customer's inventory, if there are plans for different processors, please create a support ticket.

Camera setup is done as follows

IMG_2902.jpeg

2. Software setup.

It's advised to add the following line to your config file so the RTSP server plug-in of gstreamer is built and deployed.

$ nano conf/local.conf

IMAGE_INSTALL:append = " gstreamer1.0-rtsp-server"

We can confirm that our gstreamer has RTSP server capabilities with the following command.

$ gst-inspect-1.0 | grep rtsp
pcapparse: irtspparse: IRTSPParse
rtsp: rtpdec: RTP Decoder
rtsp: rtspsrc: RTSP packet receiver
rtspclientsink: rtspclientsink: RTSP RECORD client

Server will use example binaries from gstreamer, with the following patch test-uri and test-launch tools are built, the mentioned patch is included in the next release, future releases won't need it.

$ bitbake imx-image-multimedia
$ mkdir ../sources/meta-imx/meta-imx-bsp/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server/
$ cp ~/Public/0001-YOCIMX-9113-rtsp-examples-install-test-launch-and-te.patch ../sources/meta-imx/meta-imx-bsp/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server/
$ nano ../sources/meta-imx/meta-imx-bsp/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.0.bb

FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz \
file://0001-rtsp-examples-install-test-launch-and-te.patch \
"

…

-Dexamples=enabled \

$ bitbake imx-image-multimedia

You can deploy them as you prefer, this document uses scp.

$ find tmp/ -iname test-launch
$ scp tmp/work/armv8a-poky-linux/gstreamer1.0-rtsp-server/1.26.0/build/examples/test-launch root@<Server IP>:~
$ scp tmp/work/armv8a-poky-linux/gstreamer1.0-rtsp-server/1.26.0/build/examples/test-uri root@<Server IP>:~

3. Streaming MP4.

In this document, we use scp to copy a downloaded MP4 from host.

$ scp NXP.MP4 root@<Server IP>:~

Server board will be the one with the camera connected, it needs to change the execution permissions of the example binaries.

root@server $ chmod a+x test-*

Start server, there are three '/' due to URL path and root path. test-uri tool is used for serving saved files.

root@server $ ./test-uri file:///root/nxp.mp4

Client server will be the one streaming in the display/monitor, start streaming MP4 file on client. playbin is used for its simplicity and solution for audio and video playback, URI is defined by gstreamer example binaries, port 8554 is designated from standard.

root@client $ SERVERIP=<Server IP>
root@client $ gst-launch-1.0 playbin uri=rtsp://$SERVERIP:8554/test

4. Stream video test.

SMPTE Color Bars will be streamed as part of the video test. Video streaming is achieved using test-launch tool, it supports gstreamer pipelines between (" - "), notice that inserts spaces and requires a stream name.

root@server $ ./test-launch "( videotestsrc ! v4l2h264enc ! rtph264pay name=pay0 pt=96 )"
root@client $ gst-launch-1.0 playbin uri=rtsp://$SERVERIP:8554/test
IMG_2903.jpg

5. Stream AP1302 camera.

i.MX95EVK will stream frames captured by AP1302, we use a gstreamer pipeline based on libcamera library, encoded to H264 and packetizing them to RTSP with default name.

root@server $ ./test-launch "( libcamerasrc camera-name="${CAMERA0}" ! video/x-raw, width=1280, height=800, format=YUY2 ! queue ! v4l2h264enc ! rtph264pay name=pay0 pt=96 )"

FRDM-i.MX8M-Plus will stream the frames from the server URI, depacketizing and decoding the frames.

root@client $ gst-launch-1.0 rtspsrc location=rtsp://$SERVERIP:8554/test latency=100 ! rtph264depay ! h264parse ! v4l2h264dec ! autovideosink

Conclusion.

Multimedia use cases can be explored with example binaries from gstreamer rtsp server plug-ins, video test output, camera pipelines, and MP4 files, customer are encouraged to explore both client and server capabilities upon their applications.

Then explore other streaming option like HTTP, for instance. Also using the secure version RTSPS.

References.

[1] https://www.nxp.com/docs/en/user-guide/UG10163.pdf 
[2] https://imxdev.gitlab.io/tutorial/i.MX_6Q_RTSP_video_and_camera_stream/ 

Patch was provided by SW development team. Remember that the patches below are provided as is, they were developed under LF6.12.20. When using them you are subject to the record of acceptance and legal compliance from EULA agreement in your Yocto build.

标签 (2)
附件
%3CLINGO-SUB%20id%3D%22lingo-sub-2178448%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E4%BD%BF%E7%94%A8GStreamer%EF%BC%8C%E5%AE%9E%E7%8E%B0RTSP%E5%92%8CAP1302%E5%BF%AB%E9%80%9F%E5%85%A5%E9%97%A8%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2178448%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%0A%3CP%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3E%E4%BB%8B%E7%BB%8D%E3%80%82%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3Ei.MX%20%E5%A4%84%E7%90%86%E5%99%A8%E5%9C%A8%E5%A4%9A%E5%AA%92%E4%BD%93%E5%BA%94%E7%94%A8%E4%B8%AD%E5%BE%88%E5%B8%B8%E8%A7%81%EF%BC%8C%E9%80%9A%E5%B8%B8%E4%BD%BF%E7%94%A8%E7%9B%B8%E6%9C%BA%E5%92%8C%2F%E6%88%96%E6%98%BE%E7%A4%BA%E5%99%A8%E3%80%82%E6%9C%89%E4%BA%9B%E5%AE%A2%E6%88%B7%E5%AF%B9%E6%B5%81%E5%AA%92%E4%BD%93%E5%8A%9F%E8%83%BD%E6%84%9F%E5%85%B4%E8%B6%A3%EF%BC%8C%E4%BB%96%E4%BB%AC%E7%9A%84%E7%8E%AF%E5%A2%83%E5%8F%AF%E4%BB%A5%E6%8F%90%E4%BE%9B%E7%BD%91%E7%BB%9C%E8%AE%BF%E9%97%AE%EF%BC%8C%E8%BF%99%E6%97%B6%E6%B5%81%E5%AA%92%E4%BD%93%E5%8D%8F%E8%AE%AE%E5%B0%B1%E6%B4%BE%E4%B8%8A%E7%94%A8%E5%9C%BA%E3%80%82%3C%2FP%3E%0A%3CP%3E%E4%B8%8D%E5%90%8C%E7%9A%84%E5%8D%8F%E8%AE%AE%E5%85%B7%E6%9C%89%E4%B8%8D%E5%90%8C%E7%9A%84%E8%A6%81%E6%B1%82%E5%92%8C%E4%BC%98%E7%82%B9%EF%BC%8C%E5%9C%A8%E6%9C%AC%E6%96%87%E4%B8%AD%EF%BC%8C%E6%88%91%E4%BB%AC%E5%B0%86%E6%8E%A2%E8%AE%A8RTSP%EF%BC%88%E5%AE%9E%E6%97%B6%E6%B5%81%E5%8D%8F%E8%AE%AE%EF%BC%89%EF%BC%8C%E8%AF%A5%E5%8D%8F%E8%AE%AE%E6%98%AF%E4%B8%BA%E9%9F%B3%E9%A2%91%2F%E8%A7%86%E9%A2%91%E4%BC%A0%E8%BE%93%E8%80%8C%E5%BC%80%E5%8F%91%E7%9A%84%EF%BC%8C%E5%8F%AF%E5%9C%A8RTP%E4%B8%8A%E8%BF%90%E8%A1%8C%E3%80%82RTSP%E8%A2%AB%E8%AE%B8%E5%A4%9A%E5%BA%94%E7%94%A8%E6%89%80%E9%87%87%E7%94%A8%EF%BC%8C%E5%A6%82%E7%9B%91%E6%8E%A7%E6%91%84%E5%83%8F%E5%A4%B4%E3%80%82%3C%2FP%3E%0A%3CP%3E%E6%88%91%E4%BB%AC%E5%B0%86%E5%9C%A8%E7%81%B5%E6%B4%BB%E7%9A%84%E9%85%8D%E7%BD%AE%E4%B8%AD%E8%AF%84%E4%BC%B0RTSP%E7%9A%84%E7%94%A8%E4%BE%8B%EF%BC%8C%E5%B8%AE%E5%8A%A9%E5%AE%A2%E6%88%B7%E6%8E%A2%E7%B4%A2%E5%AE%A2%E6%88%B7%E7%AB%AF%E5%92%8C%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%83%BD%E5%8A%9B%EF%BC%8C%E4%BD%BF%E7%94%A8%E6%9C%80%E6%96%B0%E7%9A%84%E6%91%84%E5%83%8F%E5%A4%B4%E7%89%88%E6%9C%ACAP1302%E5%92%8Clibcamera%E6%B5%81%E6%B0%B4%E7%BA%BF%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3E1.%20%E7%A1%AC%E4%BB%B6%E8%AE%BE%E7%BD%AE%E3%80%82%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3E%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fc-pwmxy87654%2FiMX95%2Fpd-p%2FiMX95%22%20class%3D%22lia-product-mention%22%20data-product%3D%22523-1%22%20target%3D%22_blank%22%3EiMX95%3C%2FA%3E%26nbsp%3B19x19%20EVK%E3%80%82%E7%94%B5%E6%BA%90%E8%BF%9E%E6%8E%A5%E8%87%B3J5%EF%BC%8CUSB%20Type-C%E8%B0%83%E8%AF%95%E7%94%B5%E7%BC%86%E8%BF%9E%E6%8E%A5%E8%87%B3J31%EF%BC%8CAP1302%20XRPI-CAM-MINISAS%E8%BF%9E%E6%8E%A5%E8%87%B3J13%EF%BC%8C%E4%BB%A5%E5%A4%AA%E7%BD%91%E7%94%B5%E7%BC%86%E8%BF%9E%E6%8E%A5%E8%87%B3J11%E3%80%82%3C%2FLI%3E%0A%3CLI%3E%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fc-pwmxy87654%2FFRDM-IMX8MPLUS%2Fpd-p%2FFRDM-IMX8MPLUS%22%20class%3D%22lia-product-mention%22%20data-product%3D%223713-1%22%20target%3D%22_blank%22%3EFRDM-IMX8MPLUS%3C%2FA%3E%E3%80%82%E7%94%B5%E6%BA%90%E8%BF%9E%E6%8E%A5%E8%87%B3%20J2%EF%BC%8CUSB%20Type-C%20%E8%B0%83%E8%AF%95%E7%94%B5%E7%BC%86%E8%BF%9E%E6%8E%A5%E8%87%B3%20J19%EF%BC%8CHDMI%20%E7%94%B5%E7%BC%86%E8%BF%9E%E6%8E%A5%E8%87%B3%20J16%EF%BC%8C%E4%BB%A5%E5%A4%AA%E7%BD%91%E7%94%B5%E7%BC%86%E8%BF%9E%E6%8E%A5%E8%87%B3%20J5%E3%80%82%3C%2FLI%3E%0A%3CLI%3E%E4%BB%A5%E5%A4%AA%E7%BD%91%E7%BA%BF%E5%BF%85%E9%A1%BB%E8%BF%9E%E6%8E%A5%E5%88%B0%E8%83%BD%E5%A4%9F%E5%88%86%E9%85%8DIP%E5%9C%B0%E5%9D%80%E7%9A%84%E7%BD%91%E7%BB%9C%E8%B7%AF%E7%94%B1%E5%99%A8%E6%88%96%E4%BA%A4%E6%8D%A2%E6%9C%BA%E3%80%82%3C%2FLI%3E%0A%3CLI%3ESD%2FeMMC%E5%B7%B2%E5%88%B7%E5%85%A5Yocto%20Linux%20Factory%20LF_6.12.20-2.0.0%E9%95%9C%E5%83%8F%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22IMG_2901.jpeg%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22IMG_2901.jpeg%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F359111iF37391F39C3D0DB2%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22IMG_2901.jpeg%22%20alt%3D%22IMG_2901.jpeg%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%0A%3CP%3E%3CEM%3E%E7%94%B5%E8%B7%AF%E6%9D%BF%E7%9A%84%E9%80%89%E6%8B%A9%E5%8F%AF%E8%83%BD%E4%BC%9A%E5%9B%A0%E5%AE%A2%E6%88%B7%E7%9A%84%E5%AD%98%E8%B4%A7%E8%80%8C%E5%BC%82%EF%BC%8C%E5%A6%82%E6%9E%9C%E8%AE%A1%E5%88%92%E4%BD%BF%E7%94%A8%E4%B8%8D%E5%90%8C%E7%9A%84%E5%A4%84%E7%90%86%E5%99%A8%EF%BC%8C%E8%AF%B7%E5%88%9B%E5%BB%BA%E6%94%AF%E6%8C%81%E5%B7%A5%E5%8D%95%E3%80%82%3C%2FEM%3E%3C%2FP%3E%0A%3CP%3E%E6%91%84%E5%83%8F%E6%9C%BA%E7%9A%84%E8%AE%BE%E7%BD%AE%E5%A6%82%E4%B8%8B%3C%2FP%3E%0A%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22IMG_2902.jpeg%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22IMG_2902.jpeg%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F359110iE33BB6ACE03C33D8%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22IMG_2902.jpeg%22%20alt%3D%22IMG_2902.jpeg%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%0A%3CP%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3E2.%20%E8%BD%AF%E4%BB%B6%E8%AE%BE%E7%BD%AE%E3%80%82%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3E%E5%BB%BA%E8%AE%AE%E5%9C%A8%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E4%B8%AD%E6%B7%BB%E5%8A%A0%E4%BB%A5%E4%B8%8B%E4%B8%80%E8%A1%8C%EF%BC%8C%E4%BB%A5%E4%BE%BF%E6%9E%84%E5%BB%BA%E5%92%8C%E9%83%A8%E7%BD%B2gstreamer%E7%9A%84RTSP%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%8F%92%E4%BB%B6%E3%80%82%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3E%24%20nano%20conf%2Flocal.conf%0A%0AIMAGE_INSTALL%3Aappend%20%3D%20%22%20gstreamer1.0-rtsp-server%22%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%E6%88%91%E4%BB%AC%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%E4%BB%A5%E4%B8%8B%E5%91%BD%E4%BB%A4%E7%A1%AE%E8%AE%A4%E6%88%91%E4%BB%AC%E7%9A%84%20gstreamer%20%E5%85%B7%E6%9C%89%20RTSP%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%8A%9F%E8%83%BD%E3%80%82%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3E%24%20gst-inspect-1.0%20%7C%20grep%20rtsp%0Apcapparse%3A%20irtspparse%3A%20IRTSPParse%0Artsp%3A%20rtpdec%3A%20RTP%20Decoder%0Artsp%3A%20rtspsrc%3A%20RTSP%20packet%20receiver%0Artspclientsink%3A%20rtspclientsink%3A%20RTSP%20RECORD%20client%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%B0%86%E4%BD%BF%E7%94%A8gstreamer%E7%9A%84%E7%A4%BA%E4%BE%8B%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%EF%BC%8C%E9%80%9A%E8%BF%87%E4%BB%A5%E4%B8%8B%E8%A1%A5%E4%B8%81%E6%9E%84%E5%BB%BAtest-uri%E5%92%8Ctest-launch%E5%B7%A5%E5%85%B7%EF%BC%8C%E6%89%80%E8%BF%B0%E8%A1%A5%E4%B8%81%E5%B7%B2%E5%8C%85%E5%90%AB%E5%9C%A8%E4%B8%8B%E4%B8%80%E4%B8%AA%E7%89%88%E6%9C%AC%E4%B8%AD%EF%BC%8C%E6%9C%AA%E6%9D%A5%E7%89%88%E6%9C%AC%E5%B0%86%E4%B8%8D%E5%86%8D%E9%9C%80%E8%A6%81%E8%AF%A5%E8%A1%A5%E4%B8%81%E3%80%82%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3E%24%20bitbake%20imx-image-multimedia%0A%24%20mkdir%20..%2Fsources%2Fmeta-imx%2Fmeta-imx-bsp%2Frecipes-multimedia%2Fgstreamer%2Fgstreamer1.0-rtsp-server%2F%0A%24%20cp%20~%2FPublic%2F0001-YOCIMX-9113-rtsp-examples-install-test-launch-and-te.patch%20..%2Fsources%2Fmeta-imx%2Fmeta-imx-bsp%2Frecipes-multimedia%2Fgstreamer%2Fgstreamer1.0-rtsp-server%2F%0A%24%20nano%20..%2Fsources%2Fmeta-imx%2Fmeta-imx-bsp%2Frecipes-multimedia%2Fgstreamer%2Fgstreamer1.0-rtsp-server_1.26.0.bb%0A%0AFILESEXTRAPATHS%3Aprepend%20%3A%3D%20%22%24%7BTHISDIR%7D%2F%24%7BPN%7D%3A%22%0A%0ASRC_URI%20%3D%20%22https%3A%2F%2Fgstreamer.freedesktop.org%2Fsrc%2F%24%7BPNREAL%7D%2F%24%7BPNREAL%7D-%24%7BPV%7D.tar.xz%20%5C%0Afile%3A%2F%2F0001-rtsp-examples-install-test-launch-and-te.patch%20%5C%0A%22%0A%0A%E2%80%A6%0A%0A-Dexamples%3Denabled%20%5C%0A%0A%24%20bitbake%20imx-image-multimedia%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%E6%82%A8%E5%8F%AF%E4%BB%A5%E6%A0%B9%E6%8D%AE%E8%87%AA%E5%B7%B1%E7%9A%84%E5%96%9C%E5%A5%BD%E8%BF%9B%E8%A1%8C%E9%83%A8%E7%BD%B2%EF%BC%8C%E6%9C%AC%E6%96%87%E6%A1%A3%E4%BD%BF%E7%94%A8%20scp%E3%80%82%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3E%24%20find%20tmp%2F%20-iname%20test-launch%0A%24%20scp%20tmp%2Fwork%2Farmv8a-poky-linux%2Fgstreamer1.0-rtsp-server%2F1.26.0%2Fbuild%2Fexamples%2Ftest-launch%20root%40%3CSERVER%20ip%3D%22%22%3E%3A~%0A%24%20scp%20tmp%2Fwork%2Farmv8a-poky-linux%2Fgstreamer1.0-rtsp-server%2F1.26.0%2Fbuild%2Fexamples%2Ftest-uri%20root%40%3CSERVER%20ip%3D%22%22%3E%3A~%3C%2FSERVER%3E%3C%2FSERVER%3E%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3E3.%20%E6%B5%81%E5%BC%8F%E4%BC%A0%E8%BE%93MP4%E3%80%82%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3E%E5%9C%A8%E6%9C%AC%E6%96%87%E6%A1%A3%E4%B8%AD%EF%BC%8C%E6%88%91%E4%BB%AC%E4%BD%BF%E7%94%A8%20scp%20%E4%BB%8E%E4%B8%BB%E6%9C%BA%E5%A4%8D%E5%88%B6%E4%B8%8B%E8%BD%BD%E7%9A%84%20MP4%20%E6%96%87%E4%BB%B6%E3%80%82%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3E%24%20scp%20NXP.MP4%20root%40%3CSERVER%20ip%3D%22%22%3E%3A~%3C%2FSERVER%3E%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%9D%BF%E6%98%AF%E8%BF%9E%E6%8E%A5%E6%91%84%E5%83%8F%E5%A4%B4%E7%9A%84%E6%9D%BF%EF%BC%8C%E9%9C%80%E8%A6%81%E6%9B%B4%E6%94%B9%E7%A4%BA%E4%BE%8B%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%E7%9A%84%E6%89%A7%E8%A1%8C%E6%9D%83%E9%99%90%E3%80%82%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3Eroot%40server%20%24%20chmod%20a%2Bx%20test-*%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%E5%90%AF%E5%8A%A8%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%8C%E7%94%B1%E4%BA%8EURL%E8%B7%AF%E5%BE%84%E5%92%8C%E6%A0%B9%E8%B7%AF%E5%BE%84%E7%9A%84%E5%8E%9F%E5%9B%A0%EF%BC%8C%E4%BC%9A%E5%87%BA%E7%8E%B0%E4%B8%89%E4%B8%AA%E2%80%9C%2F%E2%80%9D%E3%80%82test-uri%E5%B7%A5%E5%85%B7%E7%94%A8%E4%BA%8E%E6%8F%90%E4%BE%9B%E5%B7%B2%E4%BF%9D%E5%AD%98%E7%9A%84%E6%96%87%E4%BB%B6%E3%80%82%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3Eroot%40server%20%24%20.%2Ftest-uri%20file%3A%2F%2F%2Froot%2Fnxp.mp4%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%E5%AE%A2%E6%88%B7%E7%AB%AF%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%B0%86%E5%9C%A8%E6%98%BE%E7%A4%BA%E5%B1%8F%2F%E7%9B%91%E8%A7%86%E5%99%A8%E4%B8%8A%E8%BF%9B%E8%A1%8C%E6%B5%81%E5%BC%8F%E4%BC%A0%E8%BE%93%EF%BC%8C%E5%9C%A8%E5%AE%A2%E6%88%B7%E7%AB%AF%E5%BC%80%E5%A7%8B%E6%B5%81%E5%BC%8F%E4%BC%A0%E8%BE%93MP4%E6%96%87%E4%BB%B6%E3%80%82playbin%E5%9B%A0%E5%85%B6%E7%AE%80%E6%B4%81%E6%80%A7%E5%92%8C%E9%9F%B3%E9%A2%91%E8%A7%86%E9%A2%91%E6%92%AD%E6%94%BE%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88%E8%80%8C%E8%A2%AB%E4%BD%BF%E7%94%A8%EF%BC%8CURI%E7%94%B1gstreamer%E7%A4%BA%E4%BE%8B%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%E5%AE%9A%E4%B9%89%EF%BC%8C%E7%AB%AF%E5%8F%A38554%E7%94%B1%E6%A0%87%E5%87%86%E6%8C%87%E5%AE%9A%E3%80%82%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3Eroot%40client%20%24%20SERVERIP%3D%3CSERVER%20ip%3D%22%22%3E%0Aroot%40client%20%24%20gst-launch-1.0%20playbin%20uri%3Drtsp%3A%2F%2F%24SERVERIP%3A8554%2Ftest%3C%2FSERVER%3E%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3E4.%20%E6%B5%81%E5%BC%8F%E4%BC%A0%E8%BE%93%E8%A7%86%E9%A2%91%E6%B5%8B%E8%AF%95%E3%80%82%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3ESMPTE%E9%A2%9C%E8%89%B2%E6%9D%A1%E5%B0%86%E4%BD%9C%E4%B8%BA%E8%A7%86%E9%A2%91%E6%B5%8B%E8%AF%95%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86%E8%BF%9B%E8%A1%8C%E6%B5%81%E5%BC%8F%E4%BC%A0%E8%BE%93%E3%80%82%E8%A7%86%E9%A2%91%E6%B5%81%E5%BC%8F%E4%BC%A0%E8%BE%93%E6%98%AF%E9%80%9A%E8%BF%87test-launch%E5%B7%A5%E5%85%B7%E5%AE%9E%E7%8E%B0%E7%9A%84%EF%BC%8C%E5%AE%83%E6%94%AF%E6%8C%81(%22%20-%22)%E4%B9%8B%E9%97%B4%E7%9A%84gstreamer%E7%AE%A1%E9%81%93%EF%BC%8C%E8%AF%B7%E6%B3%A8%E6%84%8F%E6%8F%92%E5%85%A5%E7%A9%BA%E6%A0%BC%E5%B9%B6%E9%9C%80%E8%A6%81%E6%8F%90%E4%BE%9B%E6%B5%81%E5%90%8D%E7%A7%B0%E3%80%82%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3Eroot%40server%20%24%20.%2Ftest-launch%20%22(%20videotestsrc%20!%20v4l2h264enc%20!%20rtph264pay%20name%3Dpay0%20pt%3D96%20)%22%0Aroot%40client%20%24%20gst-launch-1.0%20playbin%20uri%3Drtsp%3A%2F%2F%24SERVERIP%3A8554%2Ftest%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22IMG_2903.jpg%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22IMG_2903.jpg%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F359112i583B5283A7C2C148%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22IMG_2903.jpg%22%20alt%3D%22IMG_2903.jpg%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%0A%3CP%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3E5.%20%E6%B5%81%E5%BC%8F%E4%BC%A0%E8%BE%93AP1302%E6%91%84%E5%83%8F%E5%A4%B4%E3%80%82%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3Ei.MX95EVK%E5%B0%86%E6%B5%81%E5%BC%8F%E4%BC%A0%E8%BE%93%E7%94%B1AP1302%E6%8D%95%E8%8E%B7%E7%9A%84%E5%B8%A7%EF%BC%8C%E6%88%91%E4%BB%AC%E4%BD%BF%E7%94%A8%E5%9F%BA%E4%BA%8Elibcamera%E5%BA%93%E7%9A%84gstreamer%E7%AE%A1%E9%81%93%EF%BC%8C%E5%B0%86%E5%85%B6%E7%BC%96%E7%A0%81%E4%B8%BAH264%EF%BC%8C%E5%B9%B6%E4%BB%A5%E9%BB%98%E8%AE%A4%E5%90%8D%E7%A7%B0%E5%B0%86%E5%85%B6%E6%89%93%E5%8C%85%E5%88%B0RTSP%E4%B8%AD%E3%80%82%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3Eroot%40server%20%24%20.%2Ftest-launch%20%22(%20libcamerasrc%20camera-name%3D%22%24%7BCAMERA0%7D%22%20!%20video%2Fx-raw%2C%20width%3D1280%2C%20height%3D800%2C%20format%3DYUY2%20!%20queue%20!%20v4l2h264enc%20!%20rtph264pay%20name%3Dpay0%20pt%3D96%20)%22%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3EFRDM-i.MX8M-Plus%20%E5%B0%86%E4%BB%8E%E6%9C%8D%E5%8A%A1%E5%99%A8%20URI%20%E6%B5%81%E5%BC%8F%E4%BC%A0%E8%BE%93%E5%B8%A7%EF%BC%8C%E5%B9%B6%E5%AF%B9%E5%B8%A7%E8%BF%9B%E8%A1%8C%E8%A7%A3%E5%8C%85%E5%92%8C%E8%A7%A3%E7%A0%81%E3%80%82%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3Eroot%40client%20%24%20gst-launch-1.0%20rtspsrc%20location%3Drtsp%3A%2F%2F%24SERVERIP%3A8554%2Ftest%20latency%3D100%20!%20rtph264depay%20!%20h264parse%20!%20v4l2h264dec%20!%20autovideosink%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3E%E7%BB%93%E8%AF%AD%E3%80%82%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3E%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8gstreamer%20rtsp%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%8F%92%E4%BB%B6%E3%80%81%E8%A7%86%E9%A2%91%E6%B5%8B%E8%AF%95%E8%BE%93%E5%87%BA%E3%80%81%E6%91%84%E5%83%8F%E5%A4%B4%E7%AE%A1%E9%81%93%E5%92%8CMP4%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E7%A4%BA%E4%BE%8B%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%E6%9D%A5%E6%8E%A2%E7%B4%A2%E5%A4%9A%E5%AA%92%E4%BD%93%E7%94%A8%E4%BE%8B%EF%BC%8C%E9%BC%93%E5%8A%B1%E5%AE%A2%E6%88%B7%E5%9C%A8%E5%85%B6%E5%BA%94%E7%94%A8%E4%B8%AD%E6%8E%A2%E7%B4%A2%E5%AE%A2%E6%88%B7%E7%AB%AF%E5%92%8C%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%E5%8A%9F%E8%83%BD%E3%80%82%3C%2FP%3E%0A%3CP%3E%E7%84%B6%E5%90%8E%E6%8E%A2%E7%B4%A2%E5%85%B6%E4%BB%96%E6%B5%81%E5%AA%92%E4%BD%93%E9%80%89%E9%A1%B9%EF%BC%8C%E6%AF%94%E5%A6%82HTTP%E3%80%82%E5%90%8C%E6%97%B6%E4%BD%BF%E7%94%A8%E5%AE%89%E5%85%A8%E7%89%88%E6%9C%ACRTSPS%E3%80%82%3C%2FP%3E%0A%3CP%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3E%E5%8F%82%E8%80%83%E8%B5%84%E6%96%99%E3%80%82%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3E%5B1%5D%20%3CA%20href%3D%22https%3A%2F%2Fwww.nxp.com%2Fdocs%2Fen%2Fuser-guide%2FUG10163.pdf%22%20target%3D%22_blank%22%20rel%3D%22noopener%20nofollow%20noreferrer%22%3Ehttps%3A%2F%2Fwww.nxp.com%2Fdocs%2Fen%2Fuser-guide%2FUG10163.pdf%3C%2FA%3E%26nbsp%3B%3CBR%20%2F%3E%5B2%5D%20%3CA%20href%3D%22https%3A%2F%2Fimxdev.gitlab.io%2Ftutorial%2Fi.MX_6Q_RTSP_video_and_camera_stream%2F%22%20target%3D%22_blank%22%20rel%3D%22noopener%20nofollow%20noreferrer%22%3Ehttps%3A%2F%2Fimxdev.gitlab.io%2Ftutorial%2Fi.MX_6Q_RTSP_video_and_camera_stream%2F%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CEM%3E%E8%A1%A5%E4%B8%81%E7%94%B1SW%E5%BC%80%E5%8F%91%E5%9B%A2%E9%98%9F%E6%8F%90%E4%BE%9B%E3%80%82%E8%AF%B7%E8%AE%B0%E4%BD%8F%EF%BC%8C%E4%BB%A5%E4%B8%8B%E8%A1%A5%E4%B8%81%E6%8C%89%E5%8E%9F%E6%A0%B7%E6%8F%90%E4%BE%9B%EF%BC%8C%E5%AE%83%E4%BB%AC%E6%98%AF%E5%9C%A8LF6.12.20%E4%B8%8B%E5%BC%80%E5%8F%91%E7%9A%84%E3%80%82%E4%BD%BF%E7%94%A8%E5%AE%83%E4%BB%AC%E6%97%B6%EF%BC%8C%E6%82%A8%E5%BF%85%E9%A1%BB%E9%81%B5%E5%AE%88Yocto%E7%89%88%E6%9C%AC%E4%B8%ADEULA%E5%8D%8F%E8%AE%AE%E7%9A%84%E6%8E%A5%E5%8F%97%E8%AE%B0%E5%BD%95%E5%92%8C%E6%B3%95%E5%BE%8B%E5%90%88%E8%A7%84%E6%80%A7%E8%A7%84%E5%AE%9A%E3%80%82%3C%2FEM%3E%3C%2FP%3E%0A%3C%2FLINGO-BODY%3E%3CLINGO-TEASER%20id%3D%22lingo-teaser-2178448%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E5%9C%A8i.MX%2095%E5%92%8Ci.MX%208M%20Plus%20LF-6.12.20%E4%B9%8B%E9%97%B4%E4%B8%B2%E6%B5%81%E4%B8%8D%E5%90%8C%E7%94%A8%E4%BE%8B%E7%AE%A1%E9%81%93%3C%2FP%3E%3C%2FLINGO-TEASER%3E%3CLINGO-LABS%20id%3D%22lingo-labs-2178448%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3EIMX8MPLUSEVK%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EIMX95EVK%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
无评分
版本历史
最后更新:
‎10-07-2025 12:36 PM
更新人: