Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ The OpenAPV supports the following features:
## APV codec
The APV codec is a professional video codec, which was developed in response to the need for professional level high quality video recording and post production. The primary purpose of the APV codec is for use in professional video recording and editing workflows for various types of content.

APV codec utilizes technologies known to be over 20 years to achieve a royalty free codec. APV builds a video codec using only conventional coding technologies, which consist of traditional methods published between the early 1980s and the end of the 1990s.
APV codec utilizes technologies known to be over 20 years old to achieve a royalty free codec. APV builds a video codec using only conventional coding technologies, which consist of traditional methods published between the early 1980s and the end of the 1990s.

The APV codec standard has the following features:

Expand All @@ -28,7 +28,7 @@ The APV codec standard has the following features:
- Support for various chroma sampling formats from 4:2:2 to 4:4:4, and bit-depths from 10 to 16
- Support for multiple decoding and re-encoding without severe visual quality degradation
- Support multi-view video and auxiliary video like depth, alpha, and preview
- Support various metadata including HDR10/10+ and user-definded format
- Support various metadata including HDR10/10+ and user-defined format

### Related specification
- APV Codec (bitstream): [https://datatracker.ietf.org/doc/draft-lim-apv/](https://datatracker.ietf.org/doc/draft-lim-apv/)
Expand Down Expand Up @@ -74,7 +74,7 @@ The APV codec standard has the following features:
## How to use applications
### Encoder

Encoder as input require raw YCbCr file (422, 444), 10-bit or more.
Encoder requires raw YCbCr file (422, 444), 10-bit or more, as input.

Displaying help:

Expand Down Expand Up @@ -119,8 +119,8 @@ For generating package ready for distribution (default deb) execute in build dir

## Versioning

This project is using folowing versioning scheme ``API-SET.MAJOR.MINOR.PATCH``. It's mostly based on Semantic Versioning with addition of ``API-SET`` on first place.
Project and library is following one common version number.
This project is using the following versioning scheme ``API-SET.MAJOR.MINOR.PATCH``. It's mostly based on Semantic Versioning with addition of ``API-SET`` on first place.
Project and library share a common version number.

## License

Expand Down
2 changes: 1 addition & 1 deletion app/oapv_app_dec.c
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ static const args_opt_t dec_args_opts[] = {
},
{
'm', "threads", ARGS_VAL_TYPE_STRING, 0, NULL,
"force to use a specific number of threads"
"force use of a specific number of threads\n"
" - 'auto' means that the value is internally determined"
},
{
Expand Down
4 changes: 2 additions & 2 deletions app/oapv_app_enc.c
Original file line number Diff line number Diff line change
Expand Up @@ -86,11 +86,11 @@ static const args_opt_t enc_args_opts[] = {
},
{
'z', "fps", ARGS_VAL_TYPE_STRING, 0, NULL,
"frame rate (frame per second))"
"frame rate (frames per second)"
},
{
'm', "threads", ARGS_VAL_TYPE_STRING, 0, NULL,
"force to use a specific number of threads\n"
"force use of a specific number of threads\n"
" - 'auto' means that the value is internally determined"
},
{
Expand Down
6 changes: 3 additions & 3 deletions app/oapv_app_util.h
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,7 @@ static __inline oapv_clk_t oapv_clk_sec(oapv_clk_t clk)
#define CLIP_VAL(n, min, max) (((n) > (max)) ? (max) : (((n) < (min)) ? (min) : (n)))
#define ALIGN_VAL(val, align) ((((val) + (align) - 1) / (align)) * (align))

/* Function for atomic increament:
/* Function for atomic increment:
This function might need to modify according to O/S or CPU platform
*/
static int atomic_inc(volatile int *pcnt)
Expand Down Expand Up @@ -421,7 +421,7 @@ static int imgb_read(FILE *fp, oapv_imgb_t *img, int width, int height, int is_y
f_h = height;
}
else {
logerr("not supported bit-depth (%d)\n", bit_depth);
logerr("unsupported bit-depth (%d)\n", bit_depth);
return -1;
}

Expand Down Expand Up @@ -734,7 +734,7 @@ static int write_data(char *fname, unsigned char *data, int size)

fp = fopen(fname, "ab");
if(fp == NULL) {
logerr("cannot open an writing file=%s\n", fname);
logerr("cannot open the output file=%s\n", fname);
return -1;
}
fwrite(data, 1, size, fp);
Expand Down
6 changes: 3 additions & 3 deletions app/oapv_app_y4m.h
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ static int y4m_parse_tags(y4m_params_t *y4m, char *tags)
}

if(!(found_w == 1 && found_h == 1)) {
logerr("Mandatory arugments are not found in y4m header");
logerr("Mandatory width and height values were not found in y4m header");
return OAPV_ERR;
}

Expand Down Expand Up @@ -266,7 +266,7 @@ static int write_y4m_header(char *fname, oapv_imgb_t *imgb)
}

if(strlen(c_buf) == 0) {
logerr("Color format is not suuported by y4m\n");
logerr("Color format is not supported by y4m\n");
return -1;
}

Expand Down Expand Up @@ -307,7 +307,7 @@ static int write_y4m_frame_header(char *fname)
// return
// - positive value : file name has y4m format name
// - zero : YUV format name
// - nogative value : unknown format name
// - negative value : unknown format name
static int check_file_name_type(char * fname)
{
char fext[16];
Expand Down
6 changes: 3 additions & 3 deletions inc/oapv.h
Original file line number Diff line number Diff line change
Expand Up @@ -328,8 +328,8 @@ struct oapv_imgb {
/* time-stamps */
oapv_mtime_t ts[4];

int ndata[4]; /* arbitrary data, if needs */
void *pdata[4]; /* arbitrary adedress if needs */
int ndata[4]; /* arbitrary data, if needed */
void *pdata[4]; /* arbitrary address if needed */

/* aligned width (in unit of pixel) */
int aw[OAPV_MAX_CC];
Expand Down Expand Up @@ -569,7 +569,7 @@ struct oapve_param {
unsigned char q_matrix[OAPV_MAX_CC][OAPV_BLK_D]; // raster-scan order
/* NOTE: tile_w and tile_h value can be changed internally,
if the values are not set properly.
the min and max values are defeind in APV specification */
the min and max values are defined in APV specification */
int tile_w; // width of tile MUST be N * MB width
int tile_h; // height of tile MUST be N * MB height

Expand Down
2 changes: 1 addition & 1 deletion src/oapv_bs.h
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ should set zero in that case. */
/*! Is bitstream byte aligned? */
#define BSR_IS_BYTE_ALIGN(bs) ((((bs)->leftbits & 0x7) == 0)? 1: 0)

/*! Is last byte of bitsteam? */
/*! Is last byte of bitstream? */
#define BSR_IS_LAST_BYTE(bs) \
(((bs)->cur >= (bs)->end && bs->leftbits > 0 && (bs)->leftbits <= 8)? 1: 0)

Expand Down
4 changes: 2 additions & 2 deletions src/oapv_def.h
Original file line number Diff line number Diff line change
Expand Up @@ -124,9 +124,9 @@ struct oapv_fh {
int matrix_coefficients; /* u( 8) */
int full_range_flag; /* u( 1) */
int use_q_matrix; /* u( 1) */
/* (start) quantization_matix */
/* (start) quantization_matrix */
int q_matrix[N_C][OAPV_BLK_H][OAPV_BLK_W]; /* u( 8) */
/* ( end ) quantization_matix */
/* ( end ) quantization_matrix */
/* (start) tile_info */
int tile_width_in_mbs; /* u(20) */
int tile_height_in_mbs; /* u(20) */
Expand Down
2 changes: 1 addition & 1 deletion src/oapv_metadata.h
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ struct oapv_md_t35 {
u8 *itu_t_t35_payload;
};

/* Mastering display colour volum metadata*/
/* Mastering display colour volume metadata*/
typedef struct oapv_md_mdcv oapv_md_mdcv_t;
struct oapv_md_mdcv {
u16 primary_chromaticity_x[3]; /* u(16) */
Expand Down
2 changes: 1 addition & 1 deletion test/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
| 7 | qp_B | Tile QP variation in a frame | 422-10 | 4.1 | 2 | 60 fps | 3840x2160 | 3 | c7cac366f29dc6571bc814923cadeb4b |
| 8 | qp_C | Set all the QPs in a frame equal to min. QP (=0) | 422-10 | 6 | 2 | 60 fps | 3840x2160 | 3 | 6e2928f315e1670b6842955b0e7b4ad8 |
| 9 | qp_D | Set all the QPs in a frame equal to max. QP (=51) | 422-10 | 4.1 | 2 | 60 fps | 3840x2160 | 3 | c7a3e5d7f1c987a064a7bdb08944901f |
| 10 | qp_E | Set different QP betwee luma and chroma | 422-10 | 4.1 | 2 | 60 fps | 3840x2160 | 3 | 7d626cea95f8d7a4b3f1f6e3d10e923c |
| 10 | qp_E | Set different QP between luma and chroma | 422-10 | 4.1 | 2 | 60 fps | 3840x2160 | 3 | 7d626cea95f8d7a4b3f1f6e3d10e923c |
| 11 | syn_A | Exercise a synthetic image with QP = 0 and QP = 51 | 422-10 | 4.1 | 2 | 60 fps | 1920x1080 | 2 | 7b0cc8fdffdfca860dcee9b69b051053 |
| 12 | syn_B | Exercise a synthetic image with Tile QP variation in Frame | 422-10 | 4.1 | 2 | 60 fps | 1920x1080 | 2 | b87a59443b009e9241393e6e1a927d61 |

Expand Down
2 changes: 1 addition & 1 deletion util/apv.hexpat
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ struct PbuBase {
}
*/

u32 pbu_size; // originally, this syntax is part of AuccessUnit
u32 pbu_size; // originally, this syntax is part of AccessUnit
u8 pbu_type;
u16 group_id;
u8 reserved_zero_8bits;
Expand Down