mirror of https://git.ffmpeg.org/ffmpeg.git
Store aspect ratio in avis.
Originally committed as revision 12290 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
1f3d74d39b
commit
5b08754912
|
@ -283,6 +283,38 @@ static int avi_write_header(AVFormatContext *s)
|
|||
end_tag(pb, avi->indexes[i].indx_start);
|
||||
}
|
||||
|
||||
if( stream->codec_type == CODEC_TYPE_VIDEO
|
||||
&& stream->sample_aspect_ratio.num>0
|
||||
&& stream->sample_aspect_ratio.den>0){
|
||||
int vprp= start_tag(pb, "vprp");
|
||||
AVRational dar = av_mul_q(stream->sample_aspect_ratio,
|
||||
(AVRational){stream->width, stream->height});
|
||||
int num, den;
|
||||
av_reduce(&num, &den, dar.num, dar.den, 0xFFFF);
|
||||
|
||||
put_le32(pb, 0); //video format = unknown
|
||||
put_le32(pb, 0); //video standard= unknown
|
||||
put_le32(pb, lrintf(1.0/av_q2d(stream->time_base)));
|
||||
put_le32(pb, stream->width );
|
||||
put_le32(pb, stream->height);
|
||||
put_le16(pb, num);
|
||||
put_le16(pb, den);
|
||||
put_le32(pb, stream->width );
|
||||
put_le32(pb, stream->height);
|
||||
put_le32(pb, 1); //progressive FIXME
|
||||
|
||||
put_le32(pb, stream->height);
|
||||
put_le32(pb, stream->width );
|
||||
put_le32(pb, stream->height);
|
||||
put_le32(pb, stream->width );
|
||||
put_le32(pb, 0);
|
||||
put_le32(pb, 0);
|
||||
|
||||
put_le32(pb, 0);
|
||||
put_le32(pb, 0);
|
||||
end_tag(pb, vprp);
|
||||
}
|
||||
|
||||
end_tag(pb, list2);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue