swapyv12buffer.c revision f71323e297a928af368937089d3ed71239786f86
190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber/* 2f71323e297a928af368937089d3ed71239786f86Andreas Huber * Copyright (c) 2010 The WebM project authors. All Rights Reserved. 390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * 4f71323e297a928af368937089d3ed71239786f86Andreas Huber * Use of this source code is governed by a BSD-style license 5f71323e297a928af368937089d3ed71239786f86Andreas Huber * that can be found in the LICENSE file in the root of the source 6f71323e297a928af368937089d3ed71239786f86Andreas Huber * tree. An additional intellectual property rights grant can be found 7f71323e297a928af368937089d3ed71239786f86Andreas Huber * in the file PATENTS. All contributing project authors may 8f71323e297a928af368937089d3ed71239786f86Andreas Huber * be found in the AUTHORS file in the root of the source tree. 990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber */ 1090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber 1190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber 1290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber#include "swapyv12buffer.h" 1390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber 1490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Hubervoid vp8_swap_yv12_buffer(YV12_BUFFER_CONFIG *new_frame, YV12_BUFFER_CONFIG *last_frame) 1590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber{ 1690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber unsigned char *temp; 1790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber 1890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber temp = last_frame->buffer_alloc; 1990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber last_frame->buffer_alloc = new_frame->buffer_alloc; 2090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber new_frame->buffer_alloc = temp; 2190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber 2290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber temp = last_frame->y_buffer; 2390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber last_frame->y_buffer = new_frame->y_buffer; 2490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber new_frame->y_buffer = temp; 2590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber 2690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber temp = last_frame->u_buffer; 2790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber last_frame->u_buffer = new_frame->u_buffer; 2890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber new_frame->u_buffer = temp; 2990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber 3090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber temp = last_frame->v_buffer; 3190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber last_frame->v_buffer = new_frame->v_buffer; 3290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber new_frame->v_buffer = temp; 3390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber 3490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber} 35