Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion app/oapv_app_dec.c
Original file line number Diff line number Diff line change
Expand Up @@ -378,7 +378,7 @@ int main(int argc, const char **argv)

// print logo
logv2(" ____ ___ ___ _ __\n");
logv2(" / __ \\___ ___ ___ / _ | / _ \\ | / / Decoder (v%s)\n", OAPV_VERSION_2_STRING(oapv_version()));
logv2(" / __ \\___ ___ ___ / _ | / _ \\ | / / Decoder (v%s)\n", ver_num_2_ver_str(oapv_version()));
logv2("/ /_/ / _ \\/ -_) _ \\/ __ |/ ___/ |/ / \n");
logv2("\\____/ .__/\\__/_//_/_/ |_/_/ |___/ \n");
logv2(" /_/ \n");
Expand Down
2 changes: 1 addition & 1 deletion app/oapv_app_enc.c
Original file line number Diff line number Diff line change
Expand Up @@ -599,7 +599,7 @@ int main(int argc, const char **argv)

// print logo
logv2(" ____ ___ ___ _ __\n");
logv2(" / __ \\___ ___ ___ / _ | / _ \\ | / / Encoder (v%s)\n", OAPV_VERSION_2_STRING(oapv_version()));
logv2(" / __ \\___ ___ ___ / _ | / _ \\ | / / Encoder (v%s)\n", ver_num_2_ver_str(oapv_version()));
logv2("/ /_/ / _ \\/ -_) _ \\/ __ |/ ___/ |/ / \n");
logv2("\\____/ .__/\\__/_//_/_/ |_/_/ |___/ \n");
logv2(" /_/ \n");
Expand Down
12 changes: 12 additions & 0 deletions app/oapv_app_util.h
Original file line number Diff line number Diff line change
Expand Up @@ -789,4 +789,16 @@ static unsigned char char_to_hex(char a)
return ret;
}

/* get version string */
char * ver_num_2_ver_str(unsigned int ver_num)
{
static char oapv_app_ver_str[16];
snprintf(oapv_app_ver_str, sizeof(oapv_app_ver_str), "%d.%d.%d.%d",
OAPV_VER_GET_APISET(ver_num),
OAPV_VER_GET_MAJOR(ver_num),
OAPV_VER_GET_MINOR(ver_num),
OAPV_VER_GET_PATCH(ver_num));
return (char*)oapv_app_ver_str;
}

#endif /* _OAPV_APP_UTIL_H_ */
29 changes: 10 additions & 19 deletions inc/oapv.h
Original file line number Diff line number Diff line change
Expand Up @@ -41,29 +41,20 @@ extern "C" {
#else
#include <oapv/oapv_exports.h>
#endif
#if !defined(ANDROID)

#if !defined(ANDROID)
#include <oapv/oapv_version.h>
#endif

/* macro for version */
#define OAPV_GET_VERSION(apiset, major, minor, patch) ((apiset << 24) | (major << 16) | (minor << 8) | patch)

#define OAPV_GET_APISET(v) (((v) >> 24) & 0xFF)
#define OAPV_GET_MAJOR(v) (((v) >> 16) & 0xFF)
#define OAPV_GET_MINOR(v) (((v) >> 8) & 0xFF)
#define OAPV_GET_PATCH(v) ( (v) & 0xFF)

#define OAPV_VERSION_2_STRING(version) \
({ \
static char buffer[16]; \
snprintf(buffer, sizeof(buffer), "%d.%d.%d.%d", \
(version >> 24) & 0xFF, \
(version >> 16) & 0xFF, \
(version >> 8) & 0xFF, \
version & 0xFF); \
buffer; \
})
/* the version string follows the rule of API_SET.MAJOR.MINOR.PATCH */
#define OAPV_VER_SET(apiset, major, minor, patch) \
(((apiset & 0xFF) << 24)|((major & 0xFF) << 16)|((minor & 0xFF) << 8)|\
(patch & 0xFF))
#define OAPV_VER_GET_APISET(v) (((v) >> 24) & 0xFF)
#define OAPV_VER_GET_MAJOR(v) (((v) >> 16) & 0xFF)
#define OAPV_VER_GET_MINOR(v) (((v) >> 8) & 0xFF)
#define OAPV_VER_GET_PATCH(v) (((v) >> 0) & 0xFF)

/* size of macroblock */
#define OAPV_LOG2_MB (4)
Expand Down
21 changes: 11 additions & 10 deletions src/oapv.c
Original file line number Diff line number Diff line change
Expand Up @@ -2153,21 +2153,22 @@ int oapvd_info(void *au, int au_size, oapv_au_info_t *aui)
#endif // ENABLE_DECODER
///////////////////////////////////////////////////////////////////////////////

#if defined(ANDROID)

unsigned int oapv_version() {
#if defined(ANDROID)
// For Android, the library version is hardcoded,
// because the configuration process does not generate the oapv_version.h
// header file containing the definitions for OAPV_VERSION_APISET,
// OAPV_VERSION_MAJOR, OAPV_VERSION_MINOR, and OAPV_VERSION_PATCH
// that specify the version numbers.
return OAPV_GET_VERSION(0, 1, 13, 1);
}

const int OAPV_VERSION_APISET = 0;
const int OAPV_VERSION_MAJOR = 1;
const int OAPV_VERSION_MINOR = 13;
const int OAPV_VERSION_PATCH = 1;
#else

unsigned int oapv_version() {
return OAPV_GET_VERSION(OAPV_VERSION_APISET, OAPV_VERSION_MAJOR, OAPV_VERSION_MINOR, OAPV_VERSION_PATCH);
#if !defined(OAPV_VERSION_APISET) || !defined(OAPV_VERSION_MAJOR) || \
!defined(OAPV_VERSION_MINOR) || !defined(OAPV_VERSION_PATCH)
#pragma message("Error: version numbers are not defined!")
#endif
#endif
return OAPV_VER_SET(OAPV_VERSION_APISET, OAPV_VERSION_MAJOR, OAPV_VERSION_MINOR, OAPV_VERSION_PATCH);
}

#endif