Browse Source

mac-videotoolbox: Rename functions to remove "h264"

gxalpha 3 năm trước cách đây
mục cha
commit
182906d412
1 tập tin đã thay đổi với 54 bổ sung54 xóa
  1. 54 54
      plugins/mac-videotoolbox/encoder.c

+ 54 - 54
plugins/mac-videotoolbox/encoder.c

@@ -19,14 +19,14 @@
 #define VT_BLOG(level, format, ...) \
 	VT_LOG_ENCODER(enc->encoder, level, format, ##__VA_ARGS__)
 
-static DARRAY(struct vt_encoder {
+static DARRAY(struct vt_encoder_list_item {
 	const char *name;
 	const char *disp_name;
 	const char *id;
 	const char *codec_name;
-}) vt_encoders;
+}) vt_encoder_list;
 
-struct vt_h264_encoder {
+struct vt_encoder {
 	obs_encoder_t *encoder;
 
 	const char *vt_encoder_id;
@@ -54,7 +54,7 @@ struct vt_h264_encoder {
 	DARRAY(uint8_t) extra_data;
 };
 
-static void log_osstatus(int log_level, struct vt_h264_encoder *enc,
+static void log_osstatus(int log_level, struct vt_encoder *enc,
 			 const char *context, OSStatus code)
 {
 	char *c_str = NULL;
@@ -250,8 +250,7 @@ create_encoder_spec(const char *vt_encoder_id)
 #undef REQUIRE_HW_ACCEL
 #undef ENABLE_HW_ACCEL
 
-static inline CFMutableDictionaryRef
-create_pixbuf_spec(struct vt_h264_encoder *enc)
+static inline CFMutableDictionaryRef create_pixbuf_spec(struct vt_encoder *enc)
 {
 	CFMutableDictionaryRef pixbuf_spec = CFDictionaryCreateMutable(
 		kCFAllocatorDefault, 3, &kCFTypeDictionaryKeyCallBacks,
@@ -273,7 +272,7 @@ create_pixbuf_spec(struct vt_h264_encoder *enc)
 	return pixbuf_spec;
 }
 
-static bool create_encoder(struct vt_h264_encoder *enc)
+static bool create_encoder(struct vt_encoder *enc)
 {
 	OSStatus code;
 
@@ -351,9 +350,9 @@ fail:
 	return false;
 }
 
-static void vt_h264_destroy(void *data)
+static void vt_destroy(void *data)
 {
-	struct vt_h264_encoder *enc = data;
+	struct vt_encoder *enc = data;
 
 	if (enc) {
 		if (enc->session != NULL) {
@@ -366,7 +365,7 @@ static void vt_h264_destroy(void *data)
 	}
 }
 
-static void dump_encoder_info(struct vt_h264_encoder *enc)
+static void dump_encoder_info(struct vt_encoder *enc)
 {
 	VT_BLOG(LOG_INFO,
 		"settings:\n"
@@ -390,9 +389,9 @@ static void dump_encoder_info(struct vt_h264_encoder *enc)
 								 : "default");
 }
 
-static void vt_h264_video_info(void *data, struct video_scale_info *info)
+static void vt_video_info(void *data, struct video_scale_info *info)
 {
-	struct vt_h264_encoder *enc = data;
+	struct vt_encoder *enc = data;
 
 	if (info->format == VIDEO_FORMAT_I420) {
 		enc->obs_pix_fmt = info->format;
@@ -416,7 +415,7 @@ static void vt_h264_video_info(void *data, struct video_scale_info *info)
 	info->format = enc->obs_pix_fmt;
 }
 
-static void update_params(struct vt_h264_encoder *enc, obs_data_t *settings)
+static void update_params(struct vt_encoder *enc, obs_data_t *settings)
 {
 	video_t *video = obs_encoder_video(enc->encoder);
 	const struct video_output_info *voi = video_output_get_info(video);
@@ -426,7 +425,7 @@ static void update_params(struct vt_h264_encoder *enc, obs_data_t *settings)
 	enc->fullrange = voi->range == VIDEO_RANGE_FULL;
 
 	// also sets the enc->vt_pix_fmt
-	vt_h264_video_info(enc, &info);
+	vt_video_info(enc, &info);
 
 	enc->colorspace = voi->colorspace;
 
@@ -444,9 +443,9 @@ static void update_params(struct vt_h264_encoder *enc, obs_data_t *settings)
 	enc->bframes = obs_data_get_bool(settings, "bframes");
 }
 
-static bool vt_h264_update(void *data, obs_data_t *settings)
+static bool vt_update(void *data, obs_data_t *settings)
 {
-	struct vt_h264_encoder *enc = data;
+	struct vt_encoder *enc = data;
 
 	uint32_t old_bitrate = enc->bitrate;
 	bool old_limit_bitrate = enc->limit_bitrate;
@@ -484,9 +483,9 @@ static bool vt_h264_update(void *data, obs_data_t *settings)
 	return true;
 }
 
-static void *vt_h264_create(obs_data_t *settings, obs_encoder_t *encoder)
+static void *vt_create(obs_data_t *settings, obs_encoder_t *encoder)
 {
-	struct vt_h264_encoder *enc = bzalloc(sizeof(struct vt_h264_encoder));
+	struct vt_encoder *enc = bzalloc(sizeof(struct vt_encoder));
 
 	OSStatus code;
 
@@ -505,7 +504,7 @@ static void *vt_h264_create(obs_data_t *settings, obs_encoder_t *encoder)
 	return enc;
 
 fail:
-	vt_h264_destroy(enc);
+	vt_destroy(enc);
 	return NULL;
 }
 
@@ -523,7 +522,7 @@ static void packet_put_startcode(struct darray *packet, int size)
 	packet_put(packet, &annexb_startcode[4 - size], size);
 }
 
-static void convert_block_nals_to_annexb(struct vt_h264_encoder *enc,
+static void convert_block_nals_to_annexb(struct vt_encoder *enc,
 					 struct darray *packet,
 					 CMBlockBufferRef block,
 					 int nal_length_bytes)
@@ -565,7 +564,7 @@ static void convert_block_nals_to_annexb(struct vt_h264_encoder *enc,
 	}
 }
 
-static bool handle_keyframe(struct vt_h264_encoder *enc,
+static bool handle_keyframe(struct vt_encoder *enc,
 			    CMFormatDescriptionRef format_desc,
 			    size_t param_count, struct darray *packet,
 			    struct darray *extra_data)
@@ -597,7 +596,7 @@ static bool handle_keyframe(struct vt_h264_encoder *enc,
 	return true;
 }
 
-static bool convert_sample_to_annexb(struct vt_h264_encoder *enc,
+static bool convert_sample_to_annexb(struct vt_encoder *enc,
 				     struct darray *packet,
 				     struct darray *extra_data,
 				     CMSampleBufferRef buffer, bool keyframe)
@@ -652,7 +651,7 @@ static bool is_sample_keyframe(CMSampleBufferRef buffer)
 	return false;
 }
 
-static bool parse_sample(struct vt_h264_encoder *enc, CMSampleBufferRef buffer,
+static bool parse_sample(struct vt_encoder *enc, CMSampleBufferRef buffer,
 			 struct encoder_packet *packet, CMTime off)
 {
 	int type;
@@ -728,7 +727,7 @@ fail:
 	return false;
 }
 
-bool get_cached_pixel_buffer(struct vt_h264_encoder *enc, CVPixelBufferRef *buf)
+bool get_cached_pixel_buffer(struct vt_encoder *enc, CVPixelBufferRef *buf)
 {
 	OSStatus code;
 	CVPixelBufferPoolRef pool =
@@ -761,10 +760,10 @@ fail:
 	return false;
 }
 
-static bool vt_h264_encode(void *data, struct encoder_frame *frame,
-			   struct encoder_packet *packet, bool *received_packet)
+static bool vt_encode(void *data, struct encoder_frame *frame,
+		      struct encoder_packet *packet, bool *received_packet)
 {
-	struct vt_h264_encoder *enc = data;
+	struct vt_encoder *enc = data;
 
 	OSStatus code;
 
@@ -820,18 +819,19 @@ fail:
 #undef STATUS_CHECK
 #undef CFNUM_INT
 
-static bool vt_h264_extra_data(void *data, uint8_t **extra_data, size_t *size)
+static bool vt_extra_data(void *data, uint8_t **extra_data, size_t *size)
 {
-	struct vt_h264_encoder *enc = (struct vt_h264_encoder *)data;
+	struct vt_encoder *enc = (struct vt_encoder *)data;
 	*extra_data = enc->extra_data.array;
 	*size = enc->extra_data.num;
 	return true;
 }
 
-static const char *vt_h264_getname(void *data)
+static const char *vt_getname(void *data)
 {
 	uintptr_t encoder_id = (uintptr_t)data;
-	const char *disp_name = vt_encoders.array[(int)encoder_id].disp_name;
+	const char *disp_name =
+		vt_encoder_list.array[(int)encoder_id].disp_name;
 
 	if (strcmp("Apple H.264 (HW)", disp_name) == 0) {
 		return obs_module_text("VTH264EncHW");
@@ -863,7 +863,7 @@ static bool limit_bitrate_modified(obs_properties_t *ppts, obs_property_t *p,
 	return true;
 }
 
-static obs_properties_t *vt_h264_properties(void *unused)
+static obs_properties_t *vt_properties(void *unused)
 {
 	UNUSED_PARAMETER(unused);
 
@@ -900,7 +900,7 @@ static obs_properties_t *vt_h264_properties(void *unused)
 	return props;
 }
 
-static void vt_h264_defaults(obs_data_t *settings)
+static void vt_defaults(obs_data_t *settings)
 {
 	obs_data_set_default_int(settings, "bitrate", 2500);
 	obs_data_set_default_bool(settings, "limit_bitrate", false);
@@ -912,7 +912,7 @@ static void vt_h264_defaults(obs_data_t *settings)
 }
 
 OBS_DECLARE_MODULE()
-OBS_MODULE_USE_DEFAULT_LOCALE("mac-h264", "en-US")
+OBS_MODULE_USE_DEFAULT_LOCALE("mac-videotoolbox", "en-US")
 
 void encoder_list_create()
 {
@@ -938,13 +938,13 @@ void encoder_list_create()
 		VT_DICTSTR(kVTVideoEncoderList_EncoderName, name);
 		VT_DICTSTR(kVTVideoEncoderList_EncoderID, id);
 		VT_DICTSTR(kVTVideoEncoderList_DisplayName, disp_name);
-		struct vt_encoder enc = {
+		struct vt_encoder_list_item enc = {
 			.name = name,
 			.id = id,
 			.disp_name = disp_name,
 			.codec_name = codec_name,
 		};
-		da_push_back(vt_encoders, &enc);
+		da_push_back(vt_encoder_list, &enc);
 #undef VT_DICTSTR
 	}
 
@@ -953,13 +953,13 @@ void encoder_list_create()
 
 void encoder_list_destroy()
 {
-	for (size_t i = 0; i < vt_encoders.num; i++) {
-		bfree((char *)vt_encoders.array[i].name);
-		bfree((char *)vt_encoders.array[i].id);
-		bfree((char *)vt_encoders.array[i].codec_name);
-		bfree((char *)vt_encoders.array[i].disp_name);
+	for (size_t i = 0; i < vt_encoder_list.num; i++) {
+		bfree((char *)vt_encoder_list.array[i].name);
+		bfree((char *)vt_encoder_list.array[i].id);
+		bfree((char *)vt_encoder_list.array[i].codec_name);
+		bfree((char *)vt_encoder_list.array[i].disp_name);
 	}
-	da_free(vt_encoders);
+	da_free(vt_encoder_list);
 }
 
 void register_encoders()
@@ -967,21 +967,21 @@ void register_encoders()
 	struct obs_encoder_info info = {
 		.type = OBS_ENCODER_VIDEO,
 		.codec = "h264",
-		.destroy = vt_h264_destroy,
-		.encode = vt_h264_encode,
-		.update = vt_h264_update,
-		.get_properties = vt_h264_properties,
-		.get_defaults = vt_h264_defaults,
-		.get_video_info = vt_h264_video_info,
-		.get_extra_data = vt_h264_extra_data,
+		.get_name = vt_getname,
+		.create = vt_create,
+		.destroy = vt_destroy,
+		.encode = vt_encode,
+		.update = vt_update,
+		.get_properties = vt_properties,
+		.get_defaults = vt_defaults,
+		.get_video_info = vt_video_info,
+		.get_extra_data = vt_extra_data,
 		.caps = OBS_ENCODER_CAP_DYN_BITRATE,
 	};
 
-	for (size_t i = 0; i < vt_encoders.num; i++) {
-		info.id = vt_encoders.array[i].id;
+	for (size_t i = 0; i < vt_encoder_list.num; i++) {
+		info.id = vt_encoder_list.array[i].id;
 		info.type_data = (void *)i;
-		info.get_name = vt_h264_getname;
-		info.create = vt_h264_create;
 		obs_register_encoder(&info);
 	}
 }
@@ -991,7 +991,7 @@ bool obs_module_load(void)
 	encoder_list_create();
 	register_encoders();
 
-	VT_LOG(LOG_INFO, "Adding VideoToolbox H264 encoders");
+	VT_LOG(LOG_INFO, "Adding VideoToolbox encoders");
 
 	return true;
 }