[FFmpeg-cvslog] r15577 - in trunk: libavcodec/dv.c libavformat/dv.c
romansh
subversion
Tue Oct 7 17:49:46 CEST 2008
Author: romansh
Date: Tue Oct 7 17:49:45 2008
New Revision: 15577
Log:
simplifying the code as per Michael's suggestion
Modified:
trunk/libavcodec/dv.c
trunk/libavformat/dv.c
Modified: trunk/libavcodec/dv.c
==============================================================================
--- trunk/libavcodec/dv.c (original)
+++ trunk/libavcodec/dv.c Tue Oct 7 17:49:45 2008
@@ -492,7 +492,7 @@ static inline void dv_decode_video_segme
mb_x = v & 0xff;
mb_y = v >> 8;
/* We work with 720p frames split in half. The odd half-frame (chan==2,3) is displaced :-( */
- if (s->sys->height == 720 && ((s->buf[1]>>2)&0x3) == 0) {
+ if (s->sys->height == 720 && !(s->buf[1]&0x0C)) {
mb_y -= (mb_y>17)?18:-72; /* shifting the Y coordinate down by 72/2 macroblocks */
}
Modified: trunk/libavformat/dv.c
==============================================================================
--- trunk/libavformat/dv.c (original)
+++ trunk/libavformat/dv.c Tue Oct 7 17:49:45 2008
@@ -122,7 +122,7 @@ static int dv_extract_audio(uint8_t* fra
half_ch = sys->difseg_size/2;
/* We work with 720p frames split in half, thus even frames have channels 0,1 and odd 2,3 */
- ipcm = (sys->height == 720 && ((frame[1]>>2)&0x3) == 0)?2:0;
+ ipcm = (sys->height == 720 && !(frame[1]&0x0C))?2:0;
pcm = ppcm[ipcm++];
/* for each DIF channel */
@@ -339,7 +339,7 @@ int dv_produce_packet(DVDemuxContext *c,
/* We work with 720p frames split in half, thus even frames have channels 0,1 and odd 2,3 */
if (c->sys->height == 720) {
- if (((buf[1]>>2)&0x3))
+ if (buf[1]&0x0C)
c->audio_pkt[2].size = c->audio_pkt[3].size = 0;
else
c->audio_pkt[0].size = c->audio_pkt[1].size = 0;
More information about the ffmpeg-cvslog
mailing list