summaryrefslogtreecommitdiff
path: root/libavformat/dvenc.c
diff options
context:
space:
mode:
authorRoman Shaposhnik <roman@shaposhnik.org>2006-10-16 21:47:48 +0000
committerRoman Shaposhnik <roman@shaposhnik.org>2006-10-16 21:47:48 +0000
commitd1bc38f34aea6f3c2eeee3195f53ad79b6504029 (patch)
treea88364a54528777eb94d346b10f3f929643e3159 /libavformat/dvenc.c
parent8dda3e796b8615b183dc806fefe8ef983157aca2 (diff)
* Simplifying the setting of STYPE for AAUX AS
* Fixing a bug in how SPEED was encoded for AAUX ASC Originally committed as revision 6716 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/dvenc.c')
-rw-r--r--libavformat/dvenc.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/libavformat/dvenc.c b/libavformat/dvenc.c
index d4760e957a..555514428c 100644
--- a/libavformat/dvenc.c
+++ b/libavformat/dvenc.c
@@ -72,10 +72,6 @@ static int dv_write_pack(enum dv_pack_type pack_id, DVMuxContext *c, uint8_t* bu
time_t ct;
int ltc_frame;
- /* Its hard to tell what SMPTE requires w.r.t. APT, but Quicktime needs it.
- * We set it based on pix_fmt value but it really should be per DV profile */
- int apt = (c->sys->pix_fmt == PIX_FMT_YUV422P ? 1 : 0);
-
buf[0] = (uint8_t)pack_id;
switch (pack_id) {
case dv_timecode:
@@ -115,7 +111,7 @@ static int dv_write_pack(enum dv_pack_type pack_id, DVMuxContext *c, uint8_t* bu
buf[3] = (1 << 7) | /* res */
(1 << 6) | /* multi-language flag */
(c->sys->dsf << 5) | /* system: 60fields/50fields */
- (apt << 1);/* definition: 0 -- 25Mbps, 2 -- 50Mbps */
+ (c->sys->n_difchan & 2); /* definition: 0 -- 25Mbps, 2 -- 50Mbps */
buf[4] = (1 << 7) | /* emphasis: 1 -- off */
(0 << 6) | /* emphasis time constant: 0 -- reserved */
(0 << 3) | /* frequency: 0 -- 48Khz, 1 -- 44,1Khz, 2 -- 32Khz */
@@ -131,7 +127,8 @@ static int dv_write_pack(enum dv_pack_type pack_id, DVMuxContext *c, uint8_t* bu
(1 << 3) | /* recording mode: 1 -- original */
7;
buf[3] = (1 << 7) | /* direction: 1 -- forward */
- 0x20; /* speed */
+ (c->sys->pix_fmt == PIX_FMT_YUV420P ? 0x20 : /* speed */
+ c->sys->ltc_divisor*4);
buf[4] = (1 << 7) | /* reserved -- always 1 */
0x7f; /* genre category */
break;