This avoids having to concatenate them into one buffer before writing them as AMF. Signed-off-by: Martin Storsjö <martin@martin.st>tags/n1.1
| @@ -47,6 +47,19 @@ void ff_amf_write_string(uint8_t **dst, const char *str) | |||||
| bytestream_put_buffer(dst, str, strlen(str)); | bytestream_put_buffer(dst, str, strlen(str)); | ||||
| } | } | ||||
| void ff_amf_write_string2(uint8_t **dst, const char *str1, const char *str2) | |||||
| { | |||||
| int len1 = 0, len2 = 0; | |||||
| if (str1) | |||||
| len1 = strlen(str1); | |||||
| if (str2) | |||||
| len2 = strlen(str2); | |||||
| bytestream_put_byte(dst, AMF_DATA_TYPE_STRING); | |||||
| bytestream_put_be16(dst, len1 + len2); | |||||
| bytestream_put_buffer(dst, str1, len1); | |||||
| bytestream_put_buffer(dst, str2, len2); | |||||
| } | |||||
| void ff_amf_write_null(uint8_t **dst) | void ff_amf_write_null(uint8_t **dst) | ||||
| { | { | ||||
| bytestream_put_byte(dst, AMF_DATA_TYPE_NULL); | bytestream_put_byte(dst, AMF_DATA_TYPE_NULL); | ||||
| @@ -203,6 +203,15 @@ void ff_amf_write_number(uint8_t **dst, double num); | |||||
| */ | */ | ||||
| void ff_amf_write_string(uint8_t **dst, const char *str); | void ff_amf_write_string(uint8_t **dst, const char *str); | ||||
| /** | |||||
| * Write a string consisting of two parts in AMF format to a buffer. | |||||
| * | |||||
| * @param dst pointer to the input buffer (will be modified) | |||||
| * @param str1 first string to write, may be null | |||||
| * @param str2 second string to write, may be null | |||||
| */ | |||||
| void ff_amf_write_string2(uint8_t **dst, const char *str1, const char *str2); | |||||
| /** | /** | ||||
| * Write AMF NULL value to buffer. | * Write AMF NULL value to buffer. | ||||
| * | * | ||||