printf("fps: %d\n", 1000000/head.dwMicroSecPerFrame);
printf("frames: %d\n", head.dwTotalFrames);
printf("streams: %d\n", head.dwStreams);
- printf("width: %d\n", head.dwWidth);
- printf("height: %d\n", head.dwHeight);
+ printf("width: %d\n", abs(head.dwWidth));
+ printf("height: %d\n", abs(head.dwHeight));
printf("sound: %u samples (%f seconds)\n", i->astream->GetEndPos(), i->astream->GetEndTime());
- v->width = head.dwWidth;
- v->height = head.dwHeight;
+ v->width = abs(head.dwWidth);
+ v->height = abs(head.dwHeight);
dwMicroSecPerFrame = head.dwMicroSecPerFrame;
samplesperframe = astream->GetEndPos()/astream->GetEndTime()*head.dwMicroSecPerFrame/1000000;
v->samplerate = (int)(astream->GetEndPos()/astream->GetEndTime());
{
StreamInfo*videoinfo;
videoinfo = i->vstream->GetStreamInfo();
- v->width = videoinfo->GetVideoWidth();
- v->height = videoinfo->GetVideoHeight();
+ v->width = abs(videoinfo->GetVideoWidth());
+ v->height = abs(videoinfo->GetVideoHeight());
v->fps = (double)(videoinfo->GetFps());
}
if(i->do_audio)
ULONG*dest = (ULONG*)buffer;
- int width = bi->biWidth;
- int height = bi->biHeight;
+ int width = abs(bi->biWidth);
+ int height = abs(bi->biHeight);
if(dest_width != width || dest_height != height) {
/* TODO: size conversion */
fprintf(stderr, "size mismatch: %dx%d != %dx%d\n", width, height, dest_width, dest_height);
if(1) {
i->bitmap = bitmap;
i->vs = stream;
- i->width = bitmap.biWidth;
- i->height = bitmap.biHeight;
+ i->width = abs(bitmap.biWidth);
+ i->height = abs(bitmap.biHeight);
} else {
fprintf(stderr, "Ignoring video stream: %dx%d compression=%d planes=%d\n",
- bitmap.biWidth, bitmap.biHeight,
+ abs(bitmap.biWidth), abs(bitmap.biHeight),
bitmap.biCompression,bitmap.biPlanes);
}
}