|
|
|
@ -153,39 +153,4 @@ const DVprofile* avpriv_dv_frame_profile(const DVprofile *sys, |
|
|
|
|
const uint8_t* frame, unsigned buf_size); |
|
|
|
|
const DVprofile* avpriv_dv_codec_profile(AVCodecContext* codec); |
|
|
|
|
|
|
|
|
|
static inline int dv_write_dif_id(enum dv_section_type t, uint8_t chan_num, |
|
|
|
|
uint8_t seq_num, uint8_t dif_num, |
|
|
|
|
uint8_t* buf) |
|
|
|
|
{ |
|
|
|
|
buf[0] = (uint8_t)t; /* Section type */ |
|
|
|
|
buf[1] = (seq_num << 4) | /* DIF seq number 0-9 for 525/60; 0-11 for 625/50 */ |
|
|
|
|
(chan_num << 3) | /* FSC: for 50Mb/s 0 - first channel; 1 - second */ |
|
|
|
|
7; /* reserved -- always 1 */ |
|
|
|
|
buf[2] = dif_num; /* DIF block number Video: 0-134, Audio: 0-8 */ |
|
|
|
|
return 3; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static inline int dv_write_ssyb_id(uint8_t syb_num, uint8_t fr, uint8_t* buf) |
|
|
|
|
{ |
|
|
|
|
if (syb_num == 0 || syb_num == 6) { |
|
|
|
|
buf[0] = (fr << 7) | /* FR ID 1 - first half of each channel; 0 - second */ |
|
|
|
|
(0 << 4) | /* AP3 (Subcode application ID) */ |
|
|
|
|
0x0f; /* reserved -- always 1 */ |
|
|
|
|
} |
|
|
|
|
else if (syb_num == 11) { |
|
|
|
|
buf[0] = (fr << 7) | /* FR ID 1 - first half of each channel; 0 - second */ |
|
|
|
|
0x7f; /* reserved -- always 1 */ |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
buf[0] = (fr << 7) | /* FR ID 1 - first half of each channel; 0 - second */ |
|
|
|
|
(0 << 4) | /* APT (Track application ID) */ |
|
|
|
|
0x0f; /* reserved -- always 1 */ |
|
|
|
|
} |
|
|
|
|
buf[1] = 0xf0 | /* reserved -- always 1 */ |
|
|
|
|
(syb_num & 0x0f); /* SSYB number 0 - 11 */ |
|
|
|
|
buf[2] = 0xff; /* reserved -- always 1 */ |
|
|
|
|
return 3; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#endif /* AVCODEC_DVDATA_H */ |
|
|
|
|