跳至正文
老丹的足迹 —— 代码写给机器,游记写给自己,感悟写给时间
老丹的足迹 老丹的足迹
老丹的足迹 老丹的足迹
  • 首页
  • 示例页面
  • 首页
  • 示例页面
老丹的足迹 老丹的足迹
老丹的足迹 老丹的足迹
  • 首页
  • 示例页面
  • 首页
  • 示例页面

Linux下USB摄像头性能查看与完整测试指南

前言

在Linux系统中,USB摄像头集成了视频和音频两大功能模块,分别由 V4L2(Video4Linux2)和 ALSA(Advanced Linux Sound Architecture)两个子系统管理。本文将以实战操作为主线,系统讲解如何全面评估一款USB摄像头的性能,并给出具体的测试方法和结果解读标准。

本文基于真实硬件测试数据,设备为 Sonix USB 2.0 Camera (720P Webcam),所有命令输出均来自实际运行结果。

一、基础识别——查看系统是否识别摄像头

1.1 列出所有视频设备

v4l2-ctl --list-devices

实际输出:

USB 2.0 Camera: HD 720P Webcam (usb-0000:03:00.0-2):
        /dev/video0
        /dev/video1
        /dev/media0

1.2 输出信息详解

设备节点用途说明
/dev/video0主视频流捕获节点绝大多数应用程序(FFmpeg、OpenCV、VLC)操作的对象
/dev/video1元数据或备用通道传输曝光、白平衡等调试信息;部分硬件H.264摄像头可能输出压缩流
/dev/media0媒体控制器节点用于查看和配置摄像头内部硬件拓扑结构

设备名称解读:

  • USB 2.0:接口版本为USB 2.0,理论带宽480 Mbps,实际有效带宽约35-40 MB/s
  • HD 720P Webcam:标称支持720p高清(1280×720)
  • usb-0000:03:00.0-2:物理连接路径,表示插在PCIe转USB控制器(03:00.0)的2号端口

二、视频性能查看

2.1 查看支持的分辨率、帧率和像素格式

这是评估视频性能最核心的命令:

v4l2-ctl -d /dev/video0 --list-formats-ext

实际输出:

ioctl: VIDIOC_ENUM_FMT
        Type: Video Capture

        [0]: 'YUYV' (YUYV 4:2:2)
                Size: Discrete 1280x720
                        Interval: Discrete 0.100s (10.000 fps)
                Size: Discrete 640x480
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 640x360
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 544x288
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 432x240
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 352x288
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 320x240
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 320x176
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 160x120
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 752x416
                        Interval: Discrete 0.050s (20.000 fps)
                        Interval: Discrete 0.100s (10.000 fps)
                Size: Discrete 800x448
                        Interval: Discrete 0.050s (20.000 fps)
                        Interval: Discrete 0.100s (10.000 fps)
                Size: Discrete 864x480
                        Interval: Discrete 0.050s (20.000 fps)
                        Interval: Discrete 0.100s (10.000 fps)
                Size: Discrete 800x600
                        Interval: Discrete 0.050s (20.000 fps)
                        Interval: Discrete 0.100s (10.000 fps)
                Size: Discrete 960x544
                        Interval: Discrete 0.050s (20.000 fps)
                        Interval: Discrete 0.100s (10.000 fps)
                Size: Discrete 1024x576
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 960x720
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 1184x656
                        Interval: Discrete 0.100s (10.000 fps)
        [1]: 'MJPG' (Motion-JPEG, compressed)
                Size: Discrete 1280x720
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 640x480
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 640x360
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 544x288
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 432x240
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 352x288
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 320x240
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 320x176
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 160x120
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 752x416
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 800x448
                        Interval: Discrete 0.033s (30.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 800x600
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 864x480
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 960x544
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 960x720
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 1024x576
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 1184x656
                        Interval: Discrete 0.030s (33.000 fps)
                        Interval: Discrete 0.067s (15.000 fps)

2.2 输出信息详解

像素格式(Pixel Format)

格式标识名称特点
YUYVYUYV 4:2:2未压缩格式,画质无损,数据量大
MJPGMotion-JPEG压缩格式,节省带宽,适合网络传输

性能分析:

在我们的实测中,两种格式表现差异显著:

  • MJPEG格式:在1280×720下达到33 fps(标称33.33fps ≈ 实际30fps),几乎所有分辨率下都能跑满33 fps
  • YUYV格式:在1280×720下仅10 fps,因为未压缩数据量巨大(720p@30fps ≈ 55 MB/s),超过USB 2.0实际带宽上限(约35-40 MB/s)

帧率表示方法

输出中的 Interval: Discrete 0.030s (33.000 fps) 含义:

  • 0.030s = 每帧间隔30毫秒
  • 33.000 fps = 1/0.030 ≈ 33.33 帧/秒(实际有效帧率通常为30fps)

分辨率覆盖分析

此摄像头支持 18种分辨率,覆盖极广:

分辨率宽高比典型用途
1280×72016:9高清视频(首选)
1024×57616:9宽屏标清
960×7204:3标清视频
864×48016:9YouTube 480p
800×6004:3SVGA标准
752×416≈16:9特殊宽比
640×4804:3VGA标准(兼容性最好)
640×36016:9宽屏标清
544×288≈16:9监控常用
432×24016:9低带宽传输
352×288≈4:3CIF标准(老旧设备兼容)
320×2404:3嵌入式系统
320×176≈16:9极低带宽
160×1204:3缩略图/预览
1184×656≈16:9超宽屏特殊用途
960×54416:9中间档
800×448≈16:9中间档
752×416≈16:9中间档

2.3 查看当前生效的参数

v4l2-ctl -d /dev/video0 --all

实际输出(关键部分):

Driver Info:
        Driver name      : uvcvideo
        Card type        : USB 2.0 Camera: HD 720P Webcam
        Bus info         : usb-0000:03:00.0-2
        Driver version   : 6.8.12
        Capabilities     : 0x84a00001
                Video Capture
                Metadata Capture
                Streaming
                Extended Pix Format
                Device Capabilities

Format Video Capture:
        Width/Height      : 1280/720
        Pixel Format      : 'MJPG' (Motion-JPEG)
        Field             : None
        Bytes per Line    : 0
        Size Image        : 1843789
        Colorspace        : sRGB
        Transfer Function : Rec. 709
        YCbCr/HSV Encoding: ITU-R 601
        Quantization      : Default (maps to Full Range)

Streaming Parameters Video Capture:
        Capabilities     : timeperframe
        Frames per second: 15.000 (15/1)

User Controls

                     brightness 0x00980900 (int)    : min=-64 max=64 step=1 default=0 value=0
                       contrast 0x00980901 (int)    : min=0 max=64 step=1 default=32 value=32
                     saturation 0x00980902 (int)    : min=1 max=128 step=1 default=64 value=64
                            hue 0x00980903 (int)    : min=-40 max=40 step=1 default=0 value=0
                          gamma 0x00980910 (int)    : min=72 max=500 step=1 default=100 value=100
                           gain 0x00980913 (int)    : min=0 max=100 step=1 default=0 value=0
           power_line_frequency 0x00980918 (menu)   : min=0 max=2 default=1 value=1 (50 Hz)
                                0: Disabled
                                1: 50 Hz
                                2: 60 Hz
                      sharpness 0x0098091b (int)    : min=0 max=6 step=1 default=3 value=3
         backlight_compensation 0x0098091c (int)    : min=0 max=2 step=1 default=1 value=1

2.4 输出信息详解

驱动层信息

字段值含义
Driver nameuvcvideoLinux标准免驱驱动
Driver version6.8.12与内核版本一致
CapabilitiesVideo Capture / Metadata Capture / Streaming支持视频捕获、元数据、流式传输

Metadata Capture 说明摄像头支持通过 /dev/video1 传输每帧的元数据(曝光、白平衡参数等)。

当前视频格式

字段值解读
Width/Height1280/720当前最高分辨率
Pixel Format‘MJPG’使用MJPEG压缩格式(正确选择)
Size Image1843789 字节单帧约1.76MB(压缩后)
ColorspacesRGB标准色彩空间,网页显示准确
QuantizationFull Range全色阶(0-255),画面更鲜亮

Quantization(量化范围)说明:

  • Full Range (0-255):全部色阶可用,画面更鲜亮
  • Limited Range (16-235):保留头尾用于信号同步,电视广播标准
  • 当前设置为Full Range,适合显示器观看

⚠️ 帧率警告

Frames per second: 15.000 (15/1)

重要发现: 虽然硬件支持720p@30fps(MJPEG格式),但当前实际工作帧率仅为15fps!

这可能是由于:

  1. 未主动设置帧率,使用了系统默认值
  2. 某个应用程序(浏览器、会议软件)设置了15fps

优化方法:

v4l2-ctl -d /dev/video0 --set-parm=30

用户控制参数详解

参数当前值范围作用调优建议
brightness0-64 ~ 64整体亮度室内暗光可调高到10~20
contrast320 ~ 64明暗对比度默认居中,可调高到40增强层次
saturation641 ~ 128色彩饱和度默认64(中点),喜欢鲜艳可调80~100
hue0-40 ~ 40色调偏移保持0(除非偏色)
gamma10072 ~ 500中间调亮度默认100,暗部不足可调150
gain00 ~ 100电子增益保持0(调高增加噪点)
power_line_frequency50 Hz0/1/2抗闪烁中国50Hz ✅
sharpness30 ~ 6图像锐度可调4~5让边缘更清晰
backlight_compensation10 ~ 2背光补偿逆光严重可调2

三、硬件拓扑查看(进阶)

3.1 查看内部处理流水线

media-ctl -d /dev/media0 --print-topology

实际输出:

Media controller API version 6.8.12

Media device information
------------------------
driver          uvcvideo
model           USB 2.0 Camera: HD 720P Webcam
serial
bus info        usb-0000:03:00.0-2
hw revision     0x0
driver version  6.8.12

Device topology
- entity 1: USB 2.0 Camera: HD 720P Webcam (1 pad, 1 link)
            type Node subtype V4L flags 1
            device node name /dev/video0
        pad0: Sink
                <- "Extension 4":1 [ENABLED,IMMUTABLE]

- entity 4: USB 2.0 Camera: HD 720P Webcam (0 pad, 0 link)
            type Node subtype V4L flags 0
            device node name /dev/video1

- entity 8: Extension 4 (2 pads, 2 links)
            type V4L2 subdev subtype Unknown flags 0
        pad0: Sink
                <- "Processing 3":1 [ENABLED,IMMUTABLE]
        pad1: Source
                -> "USB 2.0 Camera: HD 720P Webcam":0 [ENABLED,IMMUTABLE]

- entity 11: Processing 3 (2 pads, 2 links)
             type V4L2 subdev subtype Unknown flags 0
        pad0: Sink
                <- "Camera 1":0 [ENABLED,IMMUTABLE]
        pad1: Source
                -> "Extension 4":0 [ENABLED,IMMUTABLE]

- entity 14: Camera 1 (1 pad, 1 link)
             type V4L2 subdev subtype Sensor flags 0
        pad0: Source
                -> "Processing 3":0 [ENABLED,IMMUTABLE]

3.2 拓扑结构可视化

[Camera 1 (图像传感器)]
        │
        ▼ (Source Pad 0 → Sink Pad 0)
[Processing 3 (图像处理引擎/ISP)]
        │
        ▼ (Source Pad 1 → Sink Pad 0)
[Extension 4 (扩展处理单元)]
        │
        ▼ (Source Pad 1 → Sink Pad 0)
┌──────────────────┐
│  USB 2.0 Camera (主节点)          │
│  /dev/video0 (视频输出)           │
└──────────────────┘

独立节点:
[USB 2.0 Camera (元数据节点)]
/dev/video1 (元数据输出)

3.3 各实体功能详解

实体功能说明
Camera 1 (Entity 14)CMOS图像传感器光信号→数字信号,整个流水线的起点
Processing 3 (Entity 11)ISP核心处理器黑电平校正、去马赛克、白平衡、色彩校正、降噪
Extension 4 (Entity 8)后处理与编码缩放、锐化、MJPEG硬件编码、帧率控制
/dev/video0 (Entity 1)视频输出节点最终视频流输出(应用程序操作对象)
/dev/video1 (Entity 4)元数据输出节点曝光、白平衡等调试信息

硬件推断: 基于命名风格(Processing 3、Extension 4),主控芯片很可能为 Sonix SN9C263 系列,传感器为 OmniVision OV2710(200万像素,输出720p)。

四、音频性能查看与测试

摄像头的麦克风由ALSA音频子系统管理,需要使用独立的命令体系。

4.1 查看音频设备是否被识别

arecord -l

实际输出:

**** List of CAPTURE Hardware Devices ****
card 0: AudioPCI [Ensoniq AudioPCI], device 0: ES1371/1 [ES1371 DAC2/ADC]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Camera [USB 2.0 Camera], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

关键信息: card 1: Camera [USB 2.0 Camera] 说明麦克风已被系统正确识别。

4.2 查看音频性能参数(核心)

cat /proc/asound/card1/stream0

实际输出:

Sonix Technology Co., Ltd. USB 2.0 Camera at usb-0000:03:00.0-2, high speed : USB Audio

Capture:
  Status: Stop
  Interface 3
    Altset 1
    Format: S16_LE
    Channels: 1
    Endpoint: 0x84 (4 IN) (ASYNC)
    Rates: 8000, 11025, 16000, 22050, 24000, 44100, 48000
    Data packet interval: 1000 us
    Bits: 16
    Channel map: MONO

4.3 输出信息详解

基本信息

字段值含义
制造商Sonix Technology Co., Ltd.与视频部分同一芯片方案
USB速度high speedUSB 2.0 (480 Mbps)
Interface 3音频接口独立于视频接口(通常在Interface 0/1)
StatusStop当前空闲,无程序录音

采样格式与位深

参数值解读
FormatS16_LE16-bit有符号小端整数(最通用格式)
Bits1616-bit量化,动态范围96 dB

位深对比:

位深动态范围适用场景
8-bit48 dB老旧设备(不推荐)
16-bit96 dB语音通话、视频会议(标准) ✅
24-bit144 dB专业音乐制作

声道配置

参数值解读
Channels1单声道
Channel mapMONO单一音频通道

声道对比:

声道适用场景文件大小
单声道 (MONO)语音、会议、监控 ✅最小
立体声 (STEREO)音乐、访谈2倍大小

采样率支持(核心性能指标)

Rates: 8000, 11025, 16000, 22050, 24000, 44100, 48000

支持 7种采样率,覆盖全部常用档位:

采样率音质等级典型用途文件大小(每分钟)
8000 Hz电话音质VoIP极低带宽0.5 MB
11025 HzAM广播语音识别训练0.7 MB
16000 Hz宽带语音微信/钉钉/Skype1.0 MB
22050 HzFM广播网络电台(低码率)1.3 MB
24000 Hz准CD高质量语音转录1.5 MB
44100 HzCD标准音乐录制 ✅2.6 MB
48000 HzDVD标准视频制作 ✅2.9 MB

传输参数

参数值解读
Endpoint0x84 (4 IN)USB音频输入端点
传输类型ASYNC(异步)音频时钟由设备控制,减少抖动
数据包间隔1000 µs (1 ms)每1ms发送一个音频包,延迟极低

ASYNC异步模式是专业音频设备才采用的方式,说明此摄像头音频硬件有一定水准。廉价的同步模式设备更容易出现音频抖动(杂音)。

4.4 查看硬件音量控制

amixer -c 1 contents | grep -E "Capture|Mic|Boost|Volume" -A 3 -B 1

如果输出包含 Capture Volume 或 Mic Boost,说明硬件支持物理增益调节。

4.5 实际录音测试

录制5秒测试音频:

arecord -D hw:1,0 -f S16_LE -r 48000 -c 1 -d 5 test.wav

参数说明:

  • -D hw:1,0:声卡1(摄像头),设备0(麦克风)
  • -f S16_LE:16位采样格式
  • -r 48000:采样率48kHz(最高质量)
  • -c 1:单声道(匹配硬件)
  • -d 5:录制5秒

播放验证:

aplay test.wav

五、不同场景的最佳参数方案

5.1 视频参数配置

场景1:高清视频会议/直播(画质优先)

v4l2-ctl -d /dev/video0 \
  --set-fmt-video=width=1280,height=720,pixelformat=MJPEG \
  --set-parm=30 \
  --set-ctrl brightness=5,contrast=36,saturation=72,sharpness=4

场景2:AI图像识别(画质无损)

v4l2-ctl -d /dev/video0 \
  --set-fmt-video=width=640,height=480,pixelformat=YUYV \
  --set-parm=30

场景3:网络监控(带宽优先)

v4l2-ctl -d /dev/video0 \
  --set-fmt-video=width=640,height=360,pixelformat=MJPEG \
  --set-parm=15

场景4:多路摄像头同时使用

v4l2-ctl -d /dev/video0 \
  --set-fmt-video=width=320,height=240,pixelformat=MJPEG \
  --set-parm=15

5.2 音频参数配置

场景1:高清视频录制(最佳音质)

arecord -D hw:1,0 -f S16_LE -r 48000 -c 1 -d 60 recording.wav

场景2:视频会议(平衡质量与带宽)

arecord -D hw:1,0 -f S16_LE -r 16000 -c 1 -d 60 meeting.wav

场景3:语音识别(ASR标准)

arecord -D hw:1,0 -f S16_LE -r 16000 -c 1 -d 60 asr_training.wav

场景4:长时监控(节省存储)

arecord -D hw:1,0 -f S16_LE -r 8000 -c 1 -d 3600 surveillance.wav

每小时文件大小约30MB。

5.3 音视频同步录制

ffmpeg -f v4l2 -i /dev/video0 -f alsa -i hw:1,0 -t 10 -c:v libx264 -c:a aac output.mp4

六、性能评估汇总表

6.1 视频性能评分

维度实测数据评分
最高分辨率1280×720 (720p)⭐⭐⭐☆☆
MJPEG最高帧率720p@30fps⭐⭐⭐⭐☆
YUYV最高帧率720p@10fps⭐⭐☆☆☆
分辨率覆盖18种⭐⭐⭐⭐⭐
格式支持YUYV + MJPEG⭐⭐⭐⭐⭐
可调参数10项⭐⭐⭐⭐☆
综合评分⭐⭐⭐⭐☆

6.2 音频性能评分

维度实测数据评分
最高采样率48,000 Hz⭐⭐⭐⭐☆
采样位深16-bit⭐⭐⭐⭐☆
采样率覆盖7档⭐⭐⭐⭐⭐
声道支持单声道⭐⭐☆☆☆
传输模式异步 (ASYNC)⭐⭐⭐⭐⭐
数据包间隔1 ms⭐⭐⭐⭐⭐
综合评分⭐⭐⭐⭐☆

七、常见问题排查

问题1:摄像头被识别但无法出图

# 检查设备权限
ls -la /dev/video*
# 将当前用户加入video组
sudo usermod -a -G video $USER
# 重新登录后生效

问题2:视频帧率达不到标称值

  • 检查是否为USB 2.0(lsusb -t)
  • 切换到MJPEG格式(压缩格式带宽需求更低)
  • 降低分辨率或帧率测试

问题3:音频录制无声

# 检查是否被静音
alsamixer -c 1
# 按F4切换到Capture视图
# 确保不是"MM"(静音)状态
# 上下键调整增益

问题4:录音有持续底噪

# 检查增益是否过高
alsamixer -c 1
# 将Mic增益降低到50%以下

问题5:音视频不同步

# 使用FFmpeg强制同步
ffmpeg -f v4l2 -i /dev/video0 -f alsa -i hw:1,0 -async 1 -vsync cfr output.mp4

八、总结

通过上述系统化的测试流程,你可以全面掌握一款USB摄像头在Linux下的性能表现:

视频层面

  • 核心指标:分辨率、帧率、像素格式
  • 工具:v4l2-ctl 系列命令
  • 实测结果:720p@30fps(MJPEG),18种分辨率覆盖

音频层面

  • 核心指标:采样率、位深、声道数
  • 工具:/proc/asound/ 接口 + arecord
  • 实测结果:48kHz@16-bit单声道,7档采样率,异步传输

硬件架构

  • 主控:Sonix SN9C263(推测)
  • 传感器:720p CMOS
  • 流水线:Sensor → ISP → 后处理 → 输出
  • 音频:独立UAC接口,异步模式

综合定位

这是一款标准的720p入门级USB摄像头,适合:

  • 视频会议、在线教育
  • 网络直播(非专业级)
  • 安防监控
  • 轻量级AI视觉开发

主要限制:

  • 不支持1080p及以上分辨率
  • YUYV高分辨率下帧率严重不足
  • 音频为单声道

一句话总结: 满足95%日常视频需求的性价比之选。


本文基于Linux V4L2和ALSA子系统标准接口编写,适用于主流Linux发行版(Ubuntu/Debian/CentOS/Arch等)。所有命令和参数均经过实际硬件验证。

作者

老丹

关注我
其他文章
上一个

流媒体传输协议全景解析:从基础原理到前沿演进

下一个

UDP 打洞测试方案:从原理到实践

关于博主

    老丹是一名C/C++后台开发工程师,信奉“无抽象不设计,无性能不生产”。

  • 技术栈:Modern C++、Linux环境编程、多线程/并发、网络编程等。
  • 信条:能用constexpr解决的问题绝不拖到运行时,能靠RAII避免的泄漏绝不写析构。
  • 正在填坑:从解封装到渲染的C++全链路实现,正在驯服FFmpeg与H.264/H.265。
  • 输出原则:这里的每一段代码都经过-Wall -Wextra -Werror -O2的洗礼。

近期文章

  • Linux系统的安全基石:深入理解可插拔认证模块(PAM) 2026年7月27日
  • vsftpd 完全指南:从核心原理到Docker容器化部署 2026年7月27日
  • 互联网的”导航”安全卫士:深入解读DNSSEC 2026年7月27日
  • Ubuntu DNS 配置完全指南 2026年7月27日
  • 在 Ubuntu 中使用 Certbot 的操作指南 2026年7月27日

文章分类

  • C/C++开发 (13)
  • Docker容器 (3)
  • Linux工具包 (10)
  • Linux服务配置 (33)
  • Linux系统 (10)
  • OpenWrt路由 (2)
  • Shell脚本 (3)
  • 安防技术 (4)
  • 数据安全 (30)
  • 网络协议 (17)
  • 计算机理论 (22)
联系我们:📍 地址:中国·广东省深圳市   |   ✉️ 邮箱:support@tanglinux.com   |   💬 QQ:870866607
版权所有:老丹的足迹粤ICP备2026061170号-1       公安备案图标 粤公网安备44030002013274号