qiyubing / gource

Automatically exported from code.google.com/p/gource
0 stars 0 forks source link

ffmpeg gets IO errors about 3/4 way through gource PPM file #228

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. gource -o /home/phild/gource.ppm -1280x720 -s 0.2 --max-file-lag 0.1 
/tmp/git.log
2. avconv -y -r 60 -f image2pipe -vcodec ppm -i /home/phild/gource.ppm -vcodec 
libx264 -preset ultrafast -pix_fmt yuv420p -crf 1 -threads 0 -bf 0 
/home/phild/gource.mov

What is the expected output? What do you see instead?

ffmpeg/avconv gets about 3/4 way through the PPM file then gets: 
"/home/phild/gource.ppm: Input/output error" and exits and the resulting video 
is missing the last year's of content that's in the PPM file.

What version of the product are you using? On what operating system?

gource 0.40
avconv (ffmpeg fork) 9.16-6:9.16-0ubuntu0:14.04.1

Please provide any additional information below.

Original issue reported on code.google.com by p...@ipom.com on 9 Oct 2014 at 11:13

GoogleCodeExporter commented 9 years ago
Hi,

If you can figure out what is wrong with the ppm (possibly not that easy to do) 
we'd know if its a problem with avconv or gource or something else.

It could be the disk partition filled up while making the recording causing the 
ppm file to be truncated.

Original comment by acaudw...@gmail.com on 12 Oct 2014 at 10:05

GoogleCodeExporter commented 9 years ago
Disk has plenty of room. I regenerated the file several times, and it pays all 
the way to the end in gource, but when I try to convert it to a movie file, it 
dies in the same place every time.

If you have a suggestion for debugging, I'm happy to try.

Original comment by p...@ipom.com on 12 Oct 2014 at 10:22

GoogleCodeExporter commented 9 years ago
Maybe try this:

Install the graphicsmagick ubuntu package and then run:

gm identify gource.ppm

It will list and describe all the ppms (assuming it can handle the huge number 
of ppms in this case) in gource.ppm and will hopefully identify which ppm is at 
fault if that's the problem.

Original comment by acaudw...@gmail.com on 13 Oct 2014 at 4:27

GoogleCodeExporter commented 9 years ago
$ gm identify ogource.ppm 
gm identify: Unexpected end-of-file (gource.ppm).
gm identify: Request did not return an image.

Original comment by p...@ipom.com on 13 Oct 2014 at 7:19

GoogleCodeExporter commented 9 years ago
Oh! I found a work around - if I pipe the output of gource directly into 
avconv, it works fine... it's only if I output a PPM file in the middle that it 
fails.

Original comment by p...@ipom.com on 13 Oct 2014 at 7:33

GoogleCodeExporter commented 9 years ago
Good to know that method works. Makes me wonder where the issue is.

Original comment by acaudw...@gmail.com on 16 Oct 2014 at 2:18

GoogleCodeExporter commented 9 years ago
Yeah... me too. :( But from the output of `gm` it looks like a stray EOF 
character?

Original comment by p...@ipom.com on 16 Oct 2014 at 4:03

GoogleCodeExporter commented 9 years ago
It might be the file is truncated for some reason, but it wont be an EOF as a 
file cant actually contain those.

Original comment by acaudw...@gmail.com on 16 Oct 2014 at 4:35