mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2026-01-29 00:51:53 +08:00
refactor(hwcodec): 精简FFmpeg编译配置并移除解码器
- 优化FFmpeg编译选项,禁用不需要的库(avformat/swscale/swresample/avfilter等) - 禁用所有解码器和大部分编码器,只保留实际使用的H264/H265/VP8/VP9编码器 - 移除hwcodec解码器模块,MJPEG解码改用libyuv实现 - 移除MJPEG编码器支持 - x86_64添加libmfx支持QSV编码器 - 修复H265 RKMPP编码器支持YUYV直接输入
This commit is contained in:
@@ -5,10 +5,6 @@
|
||||
|
||||
#define AV_NUM_DATA_POINTERS 8
|
||||
|
||||
typedef void (*RamDecodeCallback)(const void *obj, int width, int height,
|
||||
int pixfmt,
|
||||
int linesize[AV_NUM_DATA_POINTERS],
|
||||
uint8_t *data[AV_NUM_DATA_POINTERS], int key);
|
||||
typedef void (*RamEncodeCallback)(const uint8_t *data, int len, int64_t pts,
|
||||
int key, const void *obj);
|
||||
|
||||
@@ -18,18 +14,13 @@ void *ffmpeg_ram_new_encoder(const char *name, const char *mc_name, int width,
|
||||
int thread_count, int gpu, int *linesize,
|
||||
int *offset, int *length,
|
||||
RamEncodeCallback callback);
|
||||
void *ffmpeg_ram_new_decoder(const char *name, int device_type,
|
||||
int thread_count, RamDecodeCallback callback);
|
||||
int ffmpeg_ram_encode(void *encoder, const uint8_t *data, int length,
|
||||
const void *obj, int64_t ms);
|
||||
int ffmpeg_ram_decode(void *decoder, const uint8_t *data, int length,
|
||||
const void *obj);
|
||||
void ffmpeg_ram_free_encoder(void *encoder);
|
||||
void ffmpeg_ram_free_decoder(void *decoder);
|
||||
int ffmpeg_ram_get_linesize_offset_length(int pix_fmt, int width, int height,
|
||||
int align, int *linesize, int *offset,
|
||||
int *length);
|
||||
int ffmpeg_ram_set_bitrate(void *encoder, int kbs);
|
||||
void ffmpeg_ram_request_keyframe(void *encoder);
|
||||
|
||||
#endif // FFMPEG_RAM_FFI_H
|
||||
#endif // FFMPEG_RAM_FFI_H
|
||||
|
||||
Reference in New Issue
Block a user