17.设备选项

libavdevice库提供与libavformat相同的接口。 即,输入设备被视为分路器,输出设备如复用器,接口和通用设备选项与libavformat相同(参见ffmpeg-formats手册)。

此外,每个输入或输出设备可以支持所谓的私有选项,其特定于该组件。

可以通过在FFmpeg工具中指定-option值,或通过在设备AVFormatContext选项中显式设置值或使用libavutil / opt.h``API进行编程来设置选项。

18.输入设备

输入设备是FFmpeg中配置的元素,可以访问来自连接到系统的多媒体设备的数据。

配置FFmpeg构建时,默认情况下会启用所有支持的输入设备。 您可以使用配置选项-list-indevs列出所有可用的列表。

您可以使用configure选项-disable-indevs禁用所有输入设备,并使用选项-enable-indev = INDEV选择性地启用输入设备,或者可以使用选项-disable禁用特定输入设备-indev= INDEV

ff *工具的选项-devices将显示支持的输入设备列表。

下面是对当前可用输入设备的描述。

18.1 alsa

ALSA(高级Linux声音架构)输入设备。

要在配置期间启用此输入设备,您需要在系统上安装libasound

该设备允许从ALSA设备捕获。 要捕获的设备的名称必须是ALSA卡标识符。

ALSA标识符具有以下语法:

hw:CARD[,DEV[,SUBDEV]]

DEVSUBDEV组件是可选的。

三个参数(按顺序:CARD,DEV,SUBDEV)指定卡号或标识符,设备号和子设备号(-1表示任意)。

要查看系统当前识别的卡列表,请检查文件/ proc / asound / cards/ proc / asound / devices

例如,要使用卡ID0ALSA设备从ffmpeg捕获,可以运行以下命令:

ffmpeg -f alsa -i hw:0 alsaout.wav

学习地址:音视频新手快速入门必备系列-FFmpeg+SDL播放器开发实现-学习视频教程-腾讯课堂

【文章福利】免费领取更多音视频学习资料包、大厂面试题、技术视频和学习路线图,资料包括(C/C++,Linux,FFmpeg webRTC rtmp hls rtsp ffplay srs 等等)有需要的可以点击1079654574加群领取哦~

18.1.1 选项

sample_rate

Hz为单位设置采样率。 默认值为48000

channels

设置通道数。 默认值为2

18.2 android_camera

Android相机输入设备。

此输入设备使用Android Camera2 NDK API,该API可在API级别为24+的设备上使用。 在配置期间自动检测android_camera的可用性。

该设备允许从Android设备上的所有摄像头进行捕获,这些摄像头集成在Camera2 NDK API中。

可用的摄像机在内部枚举,可以使用camera_index参数进行选择。 输入文件字符串将被丢弃。

通常,后置摄像头的索引为0,而前置摄像头的索引为1

18.2.1 选项

video_size

将视频大小设置为字符串,例如640x480hd720。 如果请求的视频大小不可用或默认情况下,则回退到Android报告的第一个可用配置。

framerate

设置视频帧率。 如果请求的帧速率不可用或默认情况下(-1),则回退到Android报告的第一个可用配置。

camera_index

设置要使用的摄像机的索引。 默认值为0

input_queue_size

设置要缓冲的最大帧数。 默认值为5

18.3 avfoundation

AVFoundation输入设备。

AVFoundationApple目前推荐的用于在OSX> = 10.7以及iOS上进行流式处理的框架。

输入文件名必须使用以下语法给出:

-i "[[VIDEO]:[AUDIO]]"

第一个条目选择视频输入,而后者选择音频输入。 流必须由设备名称或设备索引指定,如设备列表所示。 或者,可以使用-video_device_index <INDEX>'/-audio_device_index <INDEX>通过索引选择视频和/或音频输入设备,覆盖输入文件名中给出的任何设备名称或索引。

可以使用-list_devices true枚举所有可用设备,列出所有设备名称和相应的索引。

有两个设备名称别名:

default

选择相应类型的AVFoundation默认设备。

none

不记录相应的媒体类型。 这相当于指定空设备名称或索引。

18.3.1 选项

AVFoundation支持以下选项:

-list_devices <TRUE | FALSE>

如果设置为true,则会显示所有可用输入设备的列表,其中显示所有设备名称和索引。

-video_device_index <INDEX>

按索引指定视频设备。覆盖输入文件名中给出的任何内容。

-audio_device_index <INDEX>

按索引指定音频设备。覆盖输入文件名中给出的任何内容。

-pixel_format <FORMAT>

请求视频设备使用特定的像素格式。如果不支持指定的格式,则会给出可用格式列表,而是使用此列表中的第一个格式。可用像素格式包括:monob,rgb555be,rgb555le,rgb565be,rgb565le,RGB24,bgr24,0rgb,BGR0,0bgr,rgb0,bgr48be,uyvy422,yuva444p,yuva444p16le,yuv444p,yuv422p16,yuv422p10,yuv444p10,YUV420P,NV12,yuyv422,gray

-framerate

设置抓取帧率。默认值为ntsc,对应帧速率30000/1001

-video_size

设置视频帧大小。

-capture_cursor

捕获鼠标指针。默认值为0

-capture_mouse_clicks

捕获屏幕鼠标点击。默认值为0

18.3.2 示例

  • 打印AVFoundation支持的设备列表并退出:

      $ ffmpeg -f avfoundation -list_devices true -i ""
    
  • 将视频设备0的视频和音频设备0的音频录制到out.avi

      $ ffmpeg -f avfoundation -i "0:0" out.avi
    
  • 将视频设备2的视频和音频设备1的音频录制到out.avi

      $ ffmpeg -f avfoundation -video_device_index 2 -i ":1" out.avi
    
  • 使用像素格式bgr0从系统默认视频设备录制视频,不要将任何音频录制到out.avi

      $ ffmpeg -f avfoundation -pixel_format bgr0 -i "default:none" out.avi
    

18.4 bktr

BSD视频输入设备。

18.4.1 选项

framerate

设置帧速率。

video_size

设置视频帧大小。 默认是vga

standard

可用值如下所示:

pal
ntsc
secam
paln
palm
ntscj

18.5 decklink

decklink输入设备为Blackmagic DeckLink设备提供捕获功能。

要启用此输入设备,您需要使用Blackmagic DeckLink SDK,并且需要使用相应的--extra-cflags--extra-ldflags进行配置。 在Windows上,您需要通过widl运行IDL文件。

DeckLink对它支持的格式非常挑剔。 可以使用raw_format设置输入的像素格式。 必须使用-list_formats确定设备的帧速率和视频大小1.音频采样率始终为48 kHz,通道数可以是2,816。请注意,所有音频通道都捆绑在一个音轨中。

18.5.1 选项

list_devices

如果设置为true,则打印设备列表并退出。默认为false

list_formats

如果设置为true,则打印支持的格式列表并退出。默认为false

format_code <FourCC>

这将输入视频格式设置为FourCC给出的格式。要查看设备支持的值,请使用list_formats。请注意,有一个FourCC``pal也可以用作pal(3个字母)。默认行为是输入视频格式的自动检测,如果硬件支持它。

bm_v210

这是一个已弃用的选项,您可以使用raw_format代替。如果设置为1,则视频将以10v210而非uyvy422捕获。并非所有Blackmagic设备都支持此选项。

raw_format

设置捕获视频的像素格式。可用值包括:

uyvy422
yuv422p10
ARGB
BGRA
rgb10
teletext_lines

如果设置为非零,则将从垂直辅助数据中捕获另外的图文电视流。支持SD PAL(576i)HD(1080i或1080p)信号源。在HD源的情况下,OP47分组被解码。

此选项是捕获的SD PAL VBI线的位掩码,特别是第622行,第318335行。第6行是掩码中的LSB。将忽略不包含图文电视信息的选定行。您可以使用特殊的all常量来选择所有可能的行,或者使用“标准”来跳过与所有接收器不兼容的第6,318319行。

对于SD源,需要使用--enable-libzvbi编译ffmpeg。对于高清信号源,在旧的(4K之前)DeckLink卡型号上,必须以10位模式捕获。

channels

定义要捕获的音频通道数。必须是2816。默认为2

duplex_mode

设置decklink设备双工模式。必须是unsethalffull。默认为unset

video_input

设置视频输入源。必须是unsetsdihdmioptical_sdicomponentcomposites_video。默认为unset

audio_input

设置音频输入源。必须是unsetembeddedaes_ebuanaloganalog_xlranalog_rcamicrophone。默认为unset

video_pts

设置视频数据包时间戳源。必须是videoaudioreference, wallclock 或者abs_wallclock。默认是video

audio_pts

设置音频数据包时间戳源。必须是 videoaudioreferencewallclock 或者 abs_wallclock。默认值是:audio

draw_bars

如果设置为true,则在信号丢失的情况下绘制颜色条。默认为true

queue_size

设置最大输入缓冲区大小(字节)。如果缓冲达到此值,则将丢弃传入帧。默认为1073741824

audio_depth

设置音频采样位深度。必须是1632。默认为16

decklink_copyts

如果设置为true,则时间戳将按原样转发,而不会删除初始偏移量。默认为false

18.5.2 示例

  • 列出输入设备:

      ffmpeg -f decklink -list_devices 1 -i dummy
    
  • 列出支持的格式:

       ffmpeg -f decklink -list_formats 1 -i 'Intensity Pro'
    
  • 1080i50捕获视频剪辑:

      ffmpeg -format_code Hi50 -f decklink -i 'Intensity Pro' -c:a copy -c:v copy output.avi
    
  • 1080i50 10位捕获视频片段:

      ffmpeg -bm_v210 1 -format_code Hi50 -f decklink -i 'UltraStudio Mini Recorder' -c:a copy -c:v copy output.avi
    
  • 使用16个音频通道捕获1080i50的视频片段:

      ffmpeg -channels 16 -format_code Hi50 -f decklink -i 'UltraStudio Mini Recorder' -c:a copy -c:v copy output.avi
    

18.6 kmsgrab

KMS视频输入设备。

捕获与指定的CRTC或平面关联的KMS扫描输出帧缓冲区作为可以传递给其他硬件功能的DRM对象。

需要DRM主服务器或CAP_SYS_ADMIN才能运行。

如果您不明白所有这些意味着什么,您可能不希望这样。 请改为x11grab

18.6.1 选项

device

要捕获的DRM设备。 默认为/dev/dri/card0

format

帧缓冲区的像素格式。 默认为bgr0

format_modifier

格式修饰符以在输出帧上发出信号。 这是正确导入某些API所必需的,但无法自动检测。 有关可能的值,请参阅libdrm文档。

crtc_id

KMS CRTC ID用于定义捕获源。 将使用给定CRTC上的第一个活动平面。

plane_id

KMS平面ID用于定义捕获源。 如果既未指定crtc_id也未指定plane_id,则默认为找到的第一个活动平面。

framerate

帧率捕获。 这不会与任何页面翻转或帧缓冲区更改同步 - 它只是定义帧缓冲区的采样间隔。 比帧缓冲更新速率更快的采样将生成具有相同内容的独立帧。 默认为30

18.6.2 示例

从第一个活动平面捕获,将结果下载到普通帧并进行编码。 这仅在帧缓冲区既线性又可映射时才有效 - 如果不是,则结果可能会被扰乱或无法下载。

ffmpeg -f kmsgrab -i - -vf 'hwdownload,format=bgr0' output.mp4

60fpsCRTC ID 42捕获,将结果映射到VAAPI,转换为NV12并编码为H.264

ffmpeg -crtc_id 42 -framerate 60 -f kmsgrab -i - -vf 'hwmap=derive_device=vaapi,scale_vaapi=w=1920:h=1080:format=nv12' -c:v h264_vaapi output.mp4

18.7 libndi_newtek

libndi_newtek输入设备提供使用NDI(网络设备接口,NewTek创建的标准)的捕获功能。

输入文件名是一个NDI源名称,可以通过将-find_sources 1发送到命令行来找到它 - 它没有特定的语法,但是人类可读格式化。

要启用此输入设备,需要NDI SDK,并且需要使用相应的--extra-cflags--extra-ldflags进行配置。

18.7.1 选项

find_sources

如果设置为true,则打印已找到/可用的NDI源列表并退出。 默认为false

wait_sources

覆盖等待在线源数量发生变化的时间。 默认为0.5

allow_video_fields

当此标志为false时,您收到的所有视频都将是渐进式的。 默认为true

18.7.2 示例

  • 列出输入设备:

      ffmpeg -f libndi_newtek -find_sources 1 -i dummy
    
  • 重新流向NDI

      ffmpeg -f libndi_newtek -i "DEV-5.INTERNAL.M1STEREO.TV (NDI_SOURCE_NAME_1)" -f libndi_newtek -y NDI_SOURCE_NAME_2
    

18.8 dshow

Windows DirectShow输入设备。

使用mingw-w64项目构建FFmpeg时,将启用DirectShow支持。 目前仅支持音频和视频设备。

可以将多个设备作为单独的输入打开,但也可以在同一输入上打开它们,这可以改善它们之间的同步。

输入名称应采用以下格式:

TYPE=NAME[:TYPE=NAME]

其中TYPE可以是音频或视频,NAME是设备的名称或替代名称。

18.8.1 选项

如果未指定任何选项,则使用设备的默认值。 如果设备不支持所请求的选项,则无法打开。

video_size

在捕获的视频中设置视频大小。

framerate

在捕获的视频中设置帧速率。

sample_rate

设置捕获的音频的采样率(以Hz为单位)。

sample_size

设置捕获的音频的样本大小(以位为单位)。

channels

设置捕获的音频中的通道数。

list_devices

如果设置为true,则打印设备列表并退出。

list_options

如果设置为true,则打印所选设备选项的列表并退出。

video_device_number

为具有相同名称的设备设置视频设备编号(从0开始,默认为0)。

audio_device_number

为具有相同名称的设备设置音频设备编号(从0开始,默认为0)。

pixel_format

选择DirectShow使用的像素格式。仅当视频编解码器未设置或设置为rawvideo时,才可以设置此项。

audio_buffer_size

设置音频设备缓冲区大小(以毫秒为单位)(可能会直接影响延迟,具体取决于设备)。默认使用音频设备的默认缓冲区大小(通常为500ms的倍数)。将此值设置得太低会降低性能。

video_pin_name

选择要按名称或替代名称使用的视频捕获引脚。

audio_pin_name

选择要按名称或替代名称使用的音频捕获引脚。

crossbar_video_input_pin_number

为纵横制设备选择视频输入引脚编号。这将被路由到交叉开关设备的视频解码器输出引脚。请注意,更改此值可能会影响将来的调用(设置新的默认值),直到系统重新启动为止。

crossbar_audio_input_pin_number

选择横杆设备的音频输入引脚编号。这将被路由到交叉开关设备的音频解码器输出引脚。请注意,更改此值可能会影响将来的调用(设置新的默认值),直到系统重新启动为止。

show_video_device_dialog

如果设置为true,则在捕获开始之前,向最终用户弹出显示对话框,允许他们手动更改视频过滤器属性和配置。请注意,对于纵横制设备,可能需要在此对话框中调整值,以便在PAL(25 fps)NTSC(29.97)输入帧速率,大小,隔行扫描等之间切换。更改这些值可以启用不同的扫描速率/帧速率并避免底部的绿色条,闪烁的扫描线等。请注意,对于某些设备,更改这些属性也会影响将来的调用(设置新的默认值),直到系统重新启动。

show_audio_device_dialog

如果设置为true,则在捕获开始之前,向最终用户弹出显示对话框,允许他们手动更改音频过滤器属性和配置。

show_video_crossbar_connection_dialog

如果设置为true,则在捕获开始之前,向最终用户弹出一个显示对话框,允许他们在打开视频设备时手动修改纵横针引脚路由。

 show_audio_crossbar_connection_dialog

如果设置为true,则在捕获开始之前,向最终用户弹出一个显示对话框,允许他们在打开音频设备时手动修改纵横针脚路由。

show_analog_tv_tuner_dialog

如果设置为true,则在捕获开始之前,向最终用户弹出一个显示对话框,允许他们手动修改电视频道和频率。

show_analog_tv_tuner_audio_dialog

如果设置为true,则在捕获开始之前,向最终用户弹出一个显示对话框,允许他们手动修改电视音频(如单声道与立体声,语言ABC)。

audio_device_load

从文件加载音频捕获过滤器设备,而不是按名称搜索。如果过滤器支持其属性的序列化,它也可能加载其他参数。要使用它,必须指定音频捕获源,但它甚至可以是假的。

audio_device_save

将当前使用的音频捕获过滤器设备及其参数(如果过滤器支持)保存到文件中。如果存在具有相同名称的文件,则将覆盖该文件。

video_device_load

从文件加载视频捕获过滤器设备,而不是按名称搜索它。如果过滤器支持其属性的序列化,它也可能加载其他参数。要使用它,必须指定视频捕获源,但它甚至可以是假的。

video_device_save

将当前使用的视频捕获过滤器设备及其参数(如果过滤器支持)保存到文件中。如果存在具有相同名称的文件,则将覆盖该文件。

18.8.2 示例

  • 打印DirectShow支持的设备列表并退出:

      $ ffmpeg -list_devices true -f dshow -i dummy
    
  • 打开视频设备相机:

      $ ffmpeg -f dshow -i video="Camera"
    
  • 打开名为Camera的第二个视频设备:

      $ ffmpeg -f dshow -video_device_number 1 -i video="Camera"
    
  • 打开视频设备摄像头和音频设备麦克风:

      $ ffmpeg -f dshow -i video="Camera":audio="Microphone"
    
  • 打印所选设备中支持的选项列表并退出:

      $ ffmpeg -list_options true -f dshow -i video="Camera"
    
  • 指定要按名称或替代名称捕获的引脚名称,指定备用设备名称:

      $ ffmpeg -f dshow -audio_pin_name "Audio Out" -video_pin_name 2 -i video=video="@device_pnp_\\?\pci#ven_1a0a&dev_6200&subsys_62021461&rev_01#4&e2c7dd6&0&00e1#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{ca465100-deb0-4d59-818f-8c477184adf6}":audio="Microphone"
    
  • 配置交叉开关设备,指定交叉开关引脚,允许用户在启动时调整视频捕获属性:

      $ ffmpeg -f dshow -show_video_device_dialog true -crossbar_video_input_pin_number 0-crossbar_audio_input_pin_number 3 -i video="AVerMedia BDA Analog Capture":audio="AVerMedia BDA Analog Capture"
    

18.9 fbdev

Linux framebuffer输入设备。

Linux framebuffer是一个独立于图形硬件的抽象层,用于在计算机显示器上显示图形,通常在控制台上。 它通过文件设备节点访问,通常是/dev/fb0

有关更多详细信息,请阅读Linux源代码树中包含的文档Documentation/fb/framebuffer.txt

使用ffmpeg从帧缓冲设备/ dev / fb0录制:

ffmpeg -f fbdev -framerate 10 -i /dev/fb0 out.avi

您可以使用以下命令获取单个屏幕截图图像:

ffmpeg -f fbdev -framerate 1 -i /dev/fb0 -frames:v 1 screenshot.jpeg

18.9.1 选项

framerate

设置帧速率。 默认值为25

18.10 gdigrab

基于Win32 GDI的屏幕捕获设备。

此设备允许您捕获Windows上的显示区域。

输入文件名有两个选项:

desktop

或者

title=window_title

第一个选项将捕获整个桌面或桌面的固定区域。 第二个选项将捕获单个窗口的内容,而不管它在屏幕上的位置。

例如,要使用ffmpeg获取整个桌面:

ffmpeg -f gdigrab -framerate 6 -i desktop out.mpg

10,20位置抓住640x480区域:

ffmpeg -f gdigrab -framerate 6 -offset_x 10 -offset_y 20 -video_size vga -i desktop out.mpg

抓取名为Calculator的窗口的内容。

ffmpeg -f gdigrab -framerate 6 -i title=Calculator out.mpg

18.10.1 选项

draw_mouse

指定是否绘制鼠标指针。 使用值0不绘制指针。 默认值为1

framerate

设置抓取帧率。 默认值为ntsc,对应帧速率30000/1001

show_region

在屏幕上显示抓取的区域。

如果show_region指定为1,则将在屏幕上指示抓取区域。 使用此选项,如果仅抓取屏幕的一部分,则很容易知道抓取的内容。

请注意,show_region与抓取单个窗口的内容不兼容。

例如:

ffmpeg -f gdigrab -show_region 1 -framerate 6 -video_size cif -offset_x 10 -offset_y 20 -i desktop out.mpg

video_size

设置视频帧大小。 如果选择desktop,则默认为捕获全屏;如果选择title = window_title,则选择完整窗口大小。

offset_x

使用video_size捕获区域时,请设置距屏幕或桌面左边缘的距离。

请注意,偏移计算来自Windows上主监视器的左上角。 如果您的主监视器左侧有一个监视器,则需要使用负的offset_x值将该区域移动到该监视器。

offset_y

使用video_size捕获区域时,请设置距屏幕或桌面顶部边缘的距离。

请注意,偏移计算来自Windows上主监视器的左上角。 如果显示器位于主显示器上方,则需要使用负offset_y值将区域移动到该显示器。

FFplay文档解读-13-设备选项,输入设备一相关推荐

  1. FFplay文档解读-5-编解码器选项二

    设置sub pel me比较功能. 可能的取值如下: 值 解释 sad 绝对差值之和,fast(默认) sse 平方误差之和 satd 绝对Hadamard的总和改变了差异 dct 绝对DCT转换差异 ...

  2. FFplay文档解读-46-视频源,视频接收器

    30. 视频源 以下是当前可用视频源的说明. 30.1 buffer 缓冲视频帧,并使其可用于过滤器链. 该源主要用于编程用途,特别是通过'libavfilter/vsrc_buffer.h'中定义的 ...

  3. FFplay文档解读-22-音频过滤器七

    26.60 loudnorm EBU R128响度归一化.包括动态和线性归一化模式.支持单通道(直播,文件)和双通(文件)模式.该算法可以针对IL,LRA和最大真实峰值.为了准确地检测真实峰值,音频流 ...

  4. FFplay文档解读-41-视频过滤器十六

    29.150 selectivecolor 将青色,品红色,黄色和黑色(CMYK)调整为特定颜色范围(例如"reds","yellows","gree ...

  5. FFplay文档解读-7-比特流过滤器

    11.比特流过滤器 配置FFmpeg构建时,默认情况下会启用所有支持的比特流过滤器. 您可以使用configure选项--list-bsfs列出所有可用的列表. 可以使用configure选项--di ...

  6. FFplay文档解读-20-音频过滤器五

    26.41 chorus 为音频添加合唱效果. 可以使单个声音听起来像合唱,但也可以应用于乐器. 合唱类似于具有短延迟的回声效果,但是对于回声,延迟是恒定的,伴随合唱,使用正弦或三角调制来改变它. 调 ...

  7. FFplay文档解读-25-音频源,音频接收器

    27. 音频源 以下是当前可用音频源的说明. 27.1 abuffer 缓冲音频帧,并使其可用于过滤器链. 该源主要用于编程用途,特别是通过'libavfilter / asrc_abuffer.h' ...

  8. FFplay文档解读-48-多媒体过滤器二

    32.8 ebur128 EBU R128扫描仪滤光片.此过滤器将音频流作为输入并以不变的方式输出.默认情况下,它以10Hz的频率记录消息,具有瞬时响度(由M标识),短期响度(S),集成响度(I)和响 ...

  9. FFplay文档解读-33-视频过滤器八

    29.70 gblur 应用高斯模糊滤镜. 过滤器接受以下选项: sigma 设置水平西格玛,高斯模糊的标准偏差. 默认值为0.5. steps 设置高斯近似的步数. 默认值是1. planes 设置 ...

最新文章

  1. eclipse删除perspective
  2. windows上报错:Could not find a version that satisfies the requirement torch==0.4.1
  3. 【控制】《鲁棒控制-线性矩阵不等式处理方法》-俞立老师-附录-LMI工具箱介绍
  4. 只下载pycharm不安装python可以用吗_pycharm下怎么配置python
  5. linux shell删除归档_linux打怪技能方向规划,送给迷茫学习的你
  6. LeetCode Python实现 二叉树简单部分
  7. 非常好用的模糊pid温度控制算法_高度集成高速多点温度PID控制方案
  8. 中兴捧月2020年比赛CV方向思路
  9. 微信昵称 mysql_MySQL数据库之解决微信昵称含特殊表情或字符无法存入数据库的异常问题...
  10. python数据挖掘14讲_python/pandas数据挖掘(十四)-groupby,聚合,分组级运算
  11. PAT乙级1068 万绿丛中一点红(测试点3、测试点5)
  12. request获取登录用户名
  13. mysql capi函数详解_CAPI函数描述(G-N)
  14. 平庸和优秀的距离,我要得不仅仅是土豆
  15. 上海大学计算机专业与通信哪个好,选不选上海大学,上大计算机大四提供点信息...
  16. python gbk、utf-8、gb18030都在读取文件时候报错怎么办
  17. 剖析冲击式破碎机破碎矿石和解离纤维
  18. 安防监控实训平台-安防监控实训装置
  19. 【运维面试】k8s的监控指标
  20. SteamVR使用Curved UI实现与UI的交互

热门文章

  1. qt的icon程序图标下载工具
  2. html5 图片绘画-美女
  3. 程序员找老婆 -- 相亲节目引发的一点思绪
  4. 浅析EasyCVR安防视频能力在智慧小区建设场景中的应用及意义
  5. windows 7 boot loader
  6. 全国计算机一级wps考试大纲,计算机一级WPS Office考试大纲(2021年版)
  7. Mac book pro快捷键壁纸
  8. 一位营销老总创业失败的故事
  9. Android 查看pdf文档——PDFView
  10. 【三维重建】【深度学习】windows10下NeRF代码Pytorch实现