xiph / daala

Modern video compression for the internet

Home Page:https://xiph.org/daala/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Error in reading y4m files

JoshuaEbenezer opened this issue · comments

y4m_input.c in daala/tools has an error in reading the headers of y4m files. Line 565 reads the header for 80 characters or until "\n" is reached:

 /*Read until newline, or 80 cols, whichever happens first.*/
  for(i=0;i<79;i++)


The problem is that there is no reason why a y4m header should be less than 80 characters (afaik). I have a y4m file with a long header (more than 80 characters). A quick fix would be increasing this limit to 256.

char buffer[100];
int  ret;
int  i;
int  xstride;
/*Read until newline, or 100 cols, whichever happens first.*/
for(i=0;i<99;i++){ 
  ret=fread(buffer+i,1,1,_fin);
  if(ret<1)return -1;
  if(buffer[i]=='\n')break;
}

See Netflix/vmaf#889 and Netflix/vmaf#890.

Submitted PR #233 to fix this.