Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 268392 - ebuild for ffmpeg-mt
Summary: ebuild for ffmpeg-mt
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement
Assignee: Default Assignee for New Packages
URL: http://gitorious.org/projects/ffmpeg/...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-05-03 08:15 UTC by Stephan Kupfer
Modified: 2012-01-10 14:48 UTC (History)
14 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
ffmpeg-mt-9999.ebuild (ffmpeg-mt-9999.ebuild,6.26 KB, text/plain)
2009-06-13 19:59 UTC, Krzysztof Nowicki
Details
Diff to current =ffmpeg-9999-r1 ebuild (ffmpeg-mt-9999-r1.ebuild.diff,918 bytes, patch)
2009-07-12 13:11 UTC, Michał Górny
Details | Diff
working patch of the current ffmpeg-9999.ebuild (ffmpeg-9999.ebuild.patch,496 bytes, patch)
2011-03-09 12:40 UTC, Sylvain BERTRAND
Details | Diff
patch, works fine for me (ffmpeg-9999.ebuild_USE-ffmpeg-mt.patch,1.90 KB, patch)
2011-03-09 14:17 UTC, Nikoli
Details | Diff
updated patch (ffmpeg-9999.ebuild_USE-ffmpeg-mt.patch,1.65 KB, patch)
2011-03-22 07:30 UTC, Nikoli
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Stephan Kupfer 2009-05-03 08:15:42 UTC
Hi,

there is a multithreaded ffmpeg version out there: ffmpeg-mt
You can find it only under this git url:
http://gitorious.org/projects/ffmpeg/repos/ffmpeg-mt

Please add it to the portage, works very good for me.

Other Informations:
http://forum.doom9.org/showthread.php?p=1221445#post1221445
http://ubuntuforums.org/showthread.php?t=1049449

Reproducible: Always
Comment 1 Steve Dibb (RETIRED) gentoo-dev 2009-05-04 15:27:36 UTC
meh, pretty experimental ... if someone does add it, I'd recommend just a live SVN snapshot.
Comment 2 Steve Dibb (RETIRED) gentoo-dev 2009-05-04 15:27:56 UTC
(In reply to comment #1)
> meh, pretty experimental ... if someone does add it, I'd recommend just a live
> SVN snapshot.
> 

er, git.
Comment 3 Stephan Kupfer 2009-05-05 13:24:20 UTC
Yes of course a git snapshot.

Here is an other simple "howto" from the mplayer homepage
http://www.mplayerhq.hu/design7/news.html

--snip--
Second is to use MPlayer with the experimental multithreaded FFmpeg-mt branch, which allows you to use multiple cores/CPU. (all OS and CPU supported)

To install, copy and paste this line:
git clone git://repo.or.cz/mplayer && cd mplayer && git checkout origin/mt && git submodule init && git submodule update && ./configure && make && make install
To enable threading run mplayer -lavdopts threads=N file.mkv where N is the number of threads you want to use.
NOTE: FFmpeg-mt has problems with packed b-frames
--/snip--
Comment 4 Nikita Melnichenko 2009-05-21 20:45:09 UTC
I'm not sure if it's what you're looking for but check out ebuild from here:
http://nikita.melnichenko.name/blog.php?id=5&topic=gentoo-ebuild-mplayer-mt&lang=en
At least you can use it as a partial solution.
Comment 5 Krzysztof Nowicki 2009-06-13 19:59:09 UTC
Created attachment 194589 [details]
ffmpeg-mt-9999.ebuild

Ebuild for ffmpeg-mt based on ffmpeg-9999 ebuild.

Compiled and installed fine on amd64 (needed to remove original ffmpeg first). However since there is no virtual for ffmpeg, another option would be to add a USE flag to the ffmpeg-9999 ebuild to optionally fetch and build the -mt version instead of the mainline.

Quickly tested on a H.264 1080p video (3 threads) - noticeable improvement over single-threaded version was observed (no glitches).
Comment 6 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2009-07-12 13:11:06 UTC
Created attachment 197641 [details, diff]
Diff to current =ffmpeg-9999-r1 ebuild
Comment 7 Samuli Suominen (RETIRED) gentoo-dev 2009-07-12 13:27:42 UTC
I assume this branch will get merged into main ffmpeg when it's considered ready?
Comment 8 Nikos Chantziaras 2009-08-20 23:40:22 UTC
(In reply to comment #7)
> I assume this branch will get merged into main ffmpeg when it's considered
> ready?

ffmpeg-mt is a "Google Summer of Code" project of ffmpeg. So yes, it's upstream sponsored and the plan is to include it.
Comment 9 Nikoli 2010-07-12 21:01:20 UTC
Sonic, why you changed status to RESOLVED without any comment?
Comment 10 Stephan Kupfer 2010-07-13 08:53:49 UTC
Hi,
because of Comment #8.
When it will be included into main ffmpeg i think we dont need this bug anymore! ?!

If we need, reopen it please.

Thx
Comment 11 Steve Dibb (RETIRED) gentoo-dev 2010-07-14 17:20:15 UTC
reopened
Comment 12 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2010-07-15 15:41:17 UTC
What's the current state of the project? Was it finally included in mainstream ffmpeg?
Comment 13 H. Gabriel Máculus 2010-10-14 21:39:06 UTC
(In reply to comment #12)
> What's the current state of the project? Was it finally included in mainstream
> ffmpeg?
> 

yeah, i not need to write the ebuild, currently ffmpeg from the main line does not support multithread for h264, in my laptop this fork is the only way to reproduce h264 1080p.

tranks for the ebuild
Comment 14 Sylvain BERTRAND 2011-03-09 12:40:10 UTC
Created attachment 265283 [details, diff]
working patch of the current ffmpeg-9999.ebuild
Comment 15 Nikoli 2011-03-09 14:17:53 UTC
Created attachment 265311 [details, diff]
patch, works fine for me

ffmpeg-9999.ebuild with my patch is available in multimedia overlay. It builds fine, but fails tests, the problem is upstream.
Comment 16 Kete Tefid 2011-03-21 21:31:20 UTC
(In reply to comment #15)
> Created attachment 265311 [details, diff]
> patch, works fine for me
> 
> ffmpeg-9999.ebuild with my patch is available in multimedia overlay. It builds
> fine, but fails tests, the problem is upstream.

Thanks for your overlay but it doesn't even start to compile. I'm stuck with this error at the fetch level.

>>> Failed to emerge media-video/ffmpeg-9999, Log file:

>>>  '/var/tmp/portage/media-video/ffmpeg-9999/temp/build.log'

 * Messages for package media-video/ffmpeg-9999:

 * GIT update -->
 *    repository: 		git://gitorious.org/ffmpeg/ffmpeg-mt
 *    at the commit: 		4118a72e28be1cee657561a1f45dc3ce160dbf07
 *    branch: 			master
 *    storage directory: 	"/mnt/e/distfiles/git-src/ffmpeg-mt"
 * GIT NEW clone -->
 *    repository: 		git://git.ffmpeg.org/libswscale
 * ERROR: media-video/ffmpeg-9999 failed (unpack phase):
 *   git.eclass: can't fetch from git://git.ffmpeg.org/libswscale.
 * 
 * Call stack:
 *     ebuild.sh, line   56:  Called src_unpack
 *   environment, line 3124:  Called git_fetch
 *   environment, line 2081:  Called die
 * The specific snippet of code:
 *           ${EGIT_FETCH_CMD} ${extra_clone_opts} ${EGIT_OPTIONS} "${EGIT_REPO_URI}" ${GIT_DIR} || die "${EGIT}: can't fetch from ${EGIT_REPO_URI}.";
 * 
 * If you need support, post the output of 'emerge --info =media-video/ffmpeg-9999',
 * the complete build log and the output of 'emerge -pqv =media-video/ffmpeg-9999'.
 * This ebuild is from an overlay named 'multimedia': '/var/lib/layman/multimedia/'
 * The complete build log is located at '/var/tmp/portage/media-video/ffmpeg-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-video/ffmpeg-9999/temp/environment'.
 * S: '/var/tmp/portage/media-video/ffmpeg-9999/work/ffmpeg-9999/libswscale'

where is libswscale?
Sorry if this is not the right place to discuss it. If not, where should we discuss overlays bugs? Directly through emails?
Comment 17 Sylvain BERTRAND 2011-03-21 22:49:56 UTC
It's a GIT submodule.

Try my ebuild.

Carefull, chromium does not build anymore against latest ffmpeg and ffmpeg-mt because libavcore is gone (you need a one line patch).
Comment 18 Nikoli 2011-03-22 07:30:40 UTC
Created attachment 266803 [details, diff]
updated patch

Kete, thanks for notification, fixed ebuild in multimedia overlay.

http://gitorious.org/~astrange/ffmpeg/ffmpeg-mt/commit/1fae9e952cee3c499313b5a9b5c2e3dda096ee30
libswscale is now part of ffmpeg and ffmpeg-mt git repos, no submodules anymore.

>Sorry if this is not the right place to discuss it. If not, where should we
discuss overlays bugs?
I think this bug is good place for ffmpeg-mt packages discussion, also you can use #gentoo-media freenode channel. Private emails are for case when it is not possible to contact through public channels.

Sylvain, your patch is wrong now, no need for 'EGIT_HAS_SUBMODULES="true"'.
Comment 19 Nikoli 2011-03-22 07:41:42 UTC
https://lists.ffmpeg.org/pipermail/ffmpeg-devel/2011-March/109906.html

http://git.videolan.org/?p=ffmpeg.git;a=commit;h=cf740790677b5101b59e33f4f40d375068c04ada

Not sure if it is time for removing ffmpeg-mt USE, will wait until ~astrange/ffmpeg/ffmpeg-mt repo will become completely abandoned.
Comment 20 Sylvain BERTRAND 2011-03-22 11:23:48 UTC
Indeed, recent merge of ffmpeg-mt in ffmpeg.

There is still an official ffmpeg-mt. Let's see how development will happen. But I bet it will be in ffmpeg-mt repo then merged in the main repo on regular time basis like with linux.
Comment 21 Nikoli 2011-04-15 17:51:46 UTC
Now ffmpeg-mt is based on libav. ffmpeg package in multimedia overlay was renamed to media-video/libav.
Comment 22 Alexis Ballier gentoo-dev 2012-01-10 14:48:08 UTC
ffmpeg-mt has been merged some time ago in ffmpeg/libav, ffmpeg-0.9.1 even decodes multithreaded by default now. closing as wontfix (wrt ebuild addition)