Commit ad252daf authored by John Koleszar's avatar John Koleszar

ivfdec: webm reader support

This patch enables ivfdec to decode WebM files. WebM demuxing is
provided by the Matthew Gregan's Nestegg library.

This patch also makes minor changes to the timebase->framerate
handling when doing Y4M output. For WebM files, the framerate is
guessed by looking at the first second of video. For IVF files,
the timebase=1/(2*fps) hack is still in place, but is only used
if the timebase denominator is less than 1000. This is in anticipation
of change I8d25b5b, which introduces the distinction between
framerate and timebase to ivfenc. In the case of high resolution
timebases, like 100ns, we would have to guess the framerate
like we do for WebM, but since WebM support in ivfenc will
deprecate IVF output, we just assume 30fps rather than writing the
lookahead code.

Change-Id: I1dd8600f13bf6071533d2816f005da9ede4f60a2
parent 28d191ad
......@@ -17,6 +17,13 @@ ivfdec.SRCS += md5_utils.c md5_utils.h
ivfdec.SRCS += vpx_ports/vpx_timer.h
ivfdec.SRCS += vpx/vpx_integer.h
ivfdec.SRCS += args.c args.h vpx_ports/config.h
ivfdec.SRCS += nestegg/halloc/halloc.h
ivfdec.SRCS += nestegg/halloc/src/align.h
ivfdec.SRCS += nestegg/halloc/src/halloc.c
ivfdec.SRCS += nestegg/halloc/src/hlist.h
ivfdec.SRCS += nestegg/halloc/src/macros.h
ivfdec.SRCS += nestegg/include/nestegg/nestegg.h
ivfdec.SRCS += nestegg/src/nestegg.c
ivfdec.GUID = BA5FE66F-38DD-E034-F542-B1578C5FB950
ivfdec.DESCRIPTION = Full featured decoder
UTILS-$(CONFIG_ENCODERS) += ivfenc.c
......
This diff is collapsed.
......@@ -15,7 +15,7 @@
#include <stdlib.h> /* realloc */
#include <string.h> /* memset & co */
#include "halloc.h"
#include "../halloc.h"
#include "align.h"
#include "hlist.h"
......
......@@ -7,7 +7,7 @@
#ifndef NESTEGG_671cac2a_365d_ed69_d7a3_4491d3538d79
#define NESTEGG_671cac2a_365d_ed69_d7a3_4491d3538d79
#include <nestegg/nestegg-stdint.h>
#include "vpx/vpx_integer.h"
#ifdef __cplusplus
extern "C" {
......
......@@ -8,8 +8,8 @@
#include <stdlib.h>
#include <string.h>
#include "halloc.h"
#include "nestegg/nestegg.h"
#include "nestegg/halloc/halloc.h"
#include "nestegg/include/nestegg/nestegg.h"
/* EBML Elements */
#define ID_EBML 0x1a45dfa3
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment