You are not logged in.
ffpoth takes still images at a constant interval from video files.
These images are then scaled and written as PPM (Portable Pixmap) to standard output.
That makes ffpoth quite different.
The use of imagemagick or graphicsmagick makes it easy to put the still images together.
Examples:
$ ffpoth big_buck_bunny_720p_stereo.avi | montage - -geometry +1+1 -tile 4x -quality 90 big_buck_bunny.jpg
$ ffpoth -b2 -e-100 -w200 -n24 big_buck_bunny_720p_stereo.avi | montage - -geometry +1+1 -tile 4x -quality 90 big_buck_bunny-a.jpg
This is a tiny tool and i am quite happy how it works right now.
Maybe i add a proper makefile and manpage if the current ones are too bad !?
ffpoth at AURffpoth at code.google.com
I have abandoned this project.
Last edited by dlz (2012-07-24 16:13:28)
Offline
Hey! I find it really interesting here's no comments around yet. Sometimes, in the past years I have been thinking how to do something like this (especially) without a GUI. I'll be testing this today and see what it has to offer, also thanks for your contribution
Offline
This looks very nice. Will give it a try at home.
Offline
I added a new feature to the latest version:
The PPM now includes the timestamp as a comment.
That means, that you can draw the timestamp on each thumbnail.
So, now you can achieve similar results like other movie thumbnailers.
The difference, of course, you have full control over the result with your very own script.
Please see the ffpoth wiki with examples for how to get a result like this:
NOTE: There is a bug in imagemagick, that adds a additional newline to PPM comment readout. This will be fixed in next imagemagick release.
Offline
I can't seem to build ffpoth.
==> Making package: ffpoth 0.1202-1 (Thu Jan 12 17:56:33 CET 2012)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving Sources...
-> Found ffpoth-0.1202.tar.gz
==> Validating source files with md5sums...
ffpoth-0.1202.tar.gz ... Passed
==> Extracting Sources...
-> Extracting ffpoth-0.1202.tar.gz with bsdtar
==> Removing existing pkg/ directory...
==> Entering fakeroot environment...
==> Starting build()...
gcc -Wall -Wextra -pedantic -lavformat -lavutil -lavcodec -lswscale -offpoth main.c media.c
/tmp/ccdNNZu0.o: In function `media_seekf':
media.c:(.text+0x3f): undefined reference to `av_seek_frame'
/tmp/ccdNNZu0.o: In function `media_read':
media.c:(.text+0x126): undefined reference to `avcodec_decode_video2'
media.c:(.text+0x132): undefined reference to `av_free_packet'
media.c:(.text+0x162): undefined reference to `av_read_frame'
/tmp/ccdNNZu0.o: In function `media_thumbnail_set':
media.c:(.text+0x1fd): undefined reference to `sws_getCachedContext'
media.c:(.text+0x235): undefined reference to `avpicture_alloc'
media.c:(.text+0x25b): undefined reference to `avpicture_get_size'
/tmp/ccdNNZu0.o: In function `media_thumbnail_get':
media.c:(.text+0x2a9): undefined reference to `avcodec_alloc_frame'
media.c:(.text+0x404): undefined reference to `sws_scale'
media.c:(.text+0x438): undefined reference to `avpicture_layout'
media.c:(.text+0x44f): undefined reference to `av_free'
/tmp/ccdNNZu0.o: In function `media_open':
media.c:(.text+0x4a1): undefined reference to `av_log_set_level'
media.c:(.text+0x4a6): undefined reference to `av_register_all'
media.c:(.text+0x4c1): undefined reference to `avformat_open_input'
media.c:(.text+0x507): undefined reference to `avformat_find_stream_info'
media.c:(.text+0x564): undefined reference to `av_find_best_stream'
media.c:(.text+0x5d5): undefined reference to `avcodec_open2'
/tmp/ccdNNZu0.o: In function `media_close':
media.c:(.text+0x62d): undefined reference to `sws_freeContext'
media.c:(.text+0x637): undefined reference to `avpicture_free'
media.c:(.text+0x64d): undefined reference to `avformat_close_input'
collect2: ld returned 1 exit status
make: *** [ffpoth] Error 1
==> ERROR: A failure occurred in build().
Aborting...
The build failed.
I use ffmpeg-git.
Offline
I can't seem to build ffpoth.
I use ffmpeg-git.
The line
collect2: ld returned 1 exit status
says, that the linker could not find the needed libraries.
Please check if you have all needed ffmpeg libs installed:
$ ld -lavformat -lavutil -lavcodec -lswscale
Offline
Edit
Looks like ffpoth does not work with the Git versions of ffmpeg and x264.
Last edited by FSX (2012-01-12 19:50:49)
Offline
Edit
Looks like ffpoth does not work with the Git versions of ffmpeg and x264.
configure ffmpeg-git with
--enable-shared
Offline
new version ffpoth-20120117 now successfully builds on debian/ubuntu with official packages
that means you can use it now on servers running debian/ubuntu
read the wiki page for how to install on debian/ubuntu
Last edited by dlz (2012-01-18 06:43:22)
Offline
heya, cool package. But the code.google links do not work for this project and all the above links are dead and I am unable to find an offical site. What's the status of this project and is there a replacement wiki site? thanks
Offline
heya, cool package. But the code.google links do not work for this project and all the above links are dead and I am unable to find an offical site. What's the status of this project and is there a replacement wiki site? thanks
I have abandoned this project. The main reason for this is that I am unhappy with the ffmpeg API. Not only that it is poorly documented, it is also changing every few weeks.
Offline
Not only that it is poorly documented, it is also changing every few weeks.
Those bastards! They should have called it xyne-ffmpeg!
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline