Avidemux Forum

Avidemux => Main version 2.6 => Topic started by: Bastian on October 24, 2012, 10:15:31 AM

Title: VP8/WebM support?
Post by: Bastian on October 24, 2012, 10:15:31 AM
Hi,

it's been some time since the last request for WebM support. So I'm wondering: Are there any plans for including an encoder plugin for this format? As FFmpeg has been supporting WebM for a while now I guess it would be time for Avidemux to catch up. What do you think?

Regards
Bastian
Title: Re: VP8/WebM support?
Post by: hubert on July 09, 2013, 05:16:11 PM
+1 for WebM support.
Title: Re: VP8/WebM support?
Post by: douche on February 08, 2016, 01:01:22 PM
Bumping this thread. Because this program really REALLY needs webm support.

Webm is THE most popular video format on the web already and growing. Even Microsoft Edge is adding support for it. I don't know how the hell Avidemux can support HEVC but not VP8 and WebM.
Title: Re: VP8/WebM support?
Post by: efa on February 08, 2016, 10:04:04 PM
VP8 and VP9 reference implementation are in libvpx by Google, BSD license, can be integrated in a GPL app.
For example libavcodec do that for encoding:
https://en.wikipedia.org/wiki/Libavcodec
Some links to sources:
http://www.webmproject.org/vp9/
http://www.webmproject.org/code/#libvpx-vp8vp9-codec-sdk
Title: Re: VP8/WebM support?
Post by: Jan Gruuthuse on February 09, 2016, 07:43:13 AM
please check current nightly, could be there:
d798fa4    [win/installer] Add webm
Title: Re: VP8/WebM support?
Post by: AQUAR on February 09, 2016, 11:38:44 AM
The support for muxing into the Webm container is there.
I think douche wants to be able to decode & recode VP8/9 as well.

The request is poorly made (the usual gime gime gime now, cause I really REALY want it, stupid program should have it already).
It's a free program people - ask for features with respect for the developers.
Title: VP9/WebM support
Post by: Jan Gruuthuse on February 10, 2016, 06:27:31 AM
please check current nightly, could be there:f4e7b7f    [Muxer/webm] Also allow VP9 and Opus
Title: Re: VP8/WebM support?
Post by: AQUAR on February 10, 2016, 10:44:53 AM
I down-loaded avidemux_2.6.11_r160209_win64 yesterday, but it doesn't play the VP9 test video's (from our earlier thread "VP9 is scrambled").
But it did have the option for the webm container.

I'll try the latest nightly for ADM 32 bit as that is the most recent nightly win update.
If I look at the code changes it looks like mean is working to add VP8/9+Vorbis/Opus.

Just tested HD and UHD VP9 in Webm (ie without audio tracks) on the latest 32 bit nightly, but playback remains scrambled.
(ffplay with ffmpeg 2.8 worked (zerano build with libvpx enabled) - maybe I should try ffplay with ffmpeg 2.7.6 to see the ADM potential).


 
Title: Re: VP8/WebM support?
Post by: Jan Gruuthuse on February 19, 2016, 04:00:12 PM
VP8 and webm should be ok now.

Original video: source video: VP8 webm (https://www.youtube.com/watch?v=Rb3hgVFo77A)
Target video: target video from VP8 webm (https://www.youtube.com/watch?v=ql2NIQESsio)

VP9, can't test. Some drivers did get changed and currently none of vp9 webm is playing here.
Plays only in firefox web browser.
Title: Re: VP8/WebM support?
Post by: bitboy on March 06, 2016, 11:16:15 PM
Hi there
i've just installed avidemux 2.6.12 on linuxmint 17.3 cinnamon edition. I'm able to select Webm Muxer as output, but under Video output noVP8 is shown (but the last entry says 'null'). Is there a package missing? Or is it only possible to copy vp8 by now?
Title: Re: VP8/WebM support?
Post by: mean on March 07, 2016, 05:51:28 AM
Only copy
Title: Re: VP8/WebM support?
Post by: jolo100 on August 23, 2016, 01:29:11 AM
I just tried to devcode an xvid .avi video to Webm and it failed telling me that it doesn't have the codecs for it.
If Avidemux doesn't allow for decoding to Webm yet, is there another product that you can recommend for this ?

Thanks,
Jon  :)
Title: Re: VP8/WebM support?
Post by: eumagga0x2a on August 23, 2016, 12:16:41 PM
Quote from: jolo100 on August 23, 2016, 01:29:11 AMIf Avidemux doesn't allow for decoding to Webm yet, is there another product that you can recommend for this ?

Avidemux' bundled FFmpeg decodes WebM (VP9 + vorbis in Matroska container) quite fine (the Avidemux' own LibVPX decoder plugin is broken for VP8 (http://avidemux.org/smif/index.php/topic,17015.0.html), but it is another story). Avidemux can't encode to VP8 or VP9. Use FFmpeg (https://trac.ffmpeg.org/wiki/Encode/VP9) for this purpose instead.
Title: Re: VP8/WebM support?
Post by: douche on February 28, 2019, 09:14:16 PM
Quote from: eumagga0x2a on August 23, 2016, 12:16:41 PM
Quote from: jolo100 on August 23, 2016, 01:29:11 AMIf Avidemux doesn't allow for decoding to Webm yet, is there another product that you can recommend for this ?

Avidemux' bundled FFmpeg decodes WebM (VP9 + vorbis in Matroska container) quite fine (the Avidemux' own LibVPX decoder plugin is broken for VP8 (http://avidemux.org/smif/index.php/topic,17015.0.html), but it is another story). Avidemux can't encode to VP8 or VP9. Use FFmpeg (https://trac.ffmpeg.org/wiki/Encode/VP9) for this purpose instead.
>:(

How about to warn the user about WebM Output is only possible when Video Output is "Copy"?

Or even better: How about to disable/disallow WebM Muxer as Output Format UNLESS "Copy" is picked as Video Output?
If Avidemux can't do it, why showing then that it could?
Title: Re: VP8/WebM support?
Post by: eumagga0x2a on March 01, 2019, 12:08:47 AM
Generally, I strongly support the idea of guiding user by disabling all non-applicable options. In this particular case, I doubt that this would contribute to reducing user confusion. Additionally, I don't see a persuading reason for encoder selection to take precedence over container selection.

"Copy" doesn't help when the currently loaded video or any of the audio tracks is not compatible to the currently selected container. What should Avidemux then do? Automatically change output to the first match? And what should happen when another, incompatible video gets appended?
Title: Re: VP8/WebM support?
Post by: zenchip on April 20, 2019, 12:56:00 AM
Avidemux is an awesome program, it would be absolutely awesome if the developers would add WebM (or, well, VP8 / VP9) encoding.
ffmpeg can already to that so it should be able to implement this feature by using the open source code from the ffmpeg program.
There are many people uploading videos to Wikipedia, it would be really useful for them to be able to convert their .mp4 videos they get from their smarphones into .webm videos

Please implement this feature!
Thanks in advance
Title: Re: VP8/WebM support?
Post by: eumagga0x2a on April 21, 2019, 03:37:52 PM
FFmpeg uses just libvpx (which is an external library) to encode in VP9. It has its own internal decoder implementation, which is used by Avidemux.

The best way to add VP9 encoding capability to Avidemux is to submit a patch implementing a libvpx video encoder plugin.
Title: Re: VP8/WebM support?
Post by: Nintendo Maniac 64 on August 28, 2022, 08:44:21 PM
Apologies for grave-digging this thread but, now that Avidemux includes VP9 via libvpx encoding support, I was wanting to specifically use the older VP8 instead due to its substantially lesser CPU requirements specifically for a scenario that requires software-based video decoding.

...but interestingly, the GUI in Avidemux for libvpx does not let you specify if you want to use VP8 or VP9 and seems to just default to VP9 no matter what.

So yeah uh, can we have a GUI setting to select VP8 if we so desire?
Title: Re: VP8/WebM support?
Post by: eumagga0x2a on August 28, 2022, 09:20:49 PM
As VP8 is vastly inferior to VP9 and really sort of legacy, not very much relevant nowadays, no work was put into adding a VP8 encoder. It is not that the VP9 encoder plugin defaults to VP9, the architecture of Avidemux is one encoder plugin = one codec, even if partial code re-use is possible like between H.264 and HEVC NVENC encoders.

I greatly doubt in broad interest in a VP8 encoder. Well, I admit that still shipping a FLV1 encoder is weakly defendable from this point of view. However, the FLV1 encoder is merely a slim wrapper around already present libavcodec library while libvpx encoder, at least on some platforms, includes static libvpx library making plugin file itself huge.

That said: No, I don't think that VP8 encoder will be included into the official distribution.
Title: Re: VP8/WebM support?
Post by: Nintendo Maniac 64 on September 05, 2022, 01:23:31 AM
Quote from: eumagga0x2a on August 28, 2022, 09:20:49 PMNo, I don't think that VP8 encoder will be included into the official distribution.
That is unfortunate since even 8bit h.264 requires less CPU to decode in software than VP9 does, but required more than VP8.  In other words, the CPU usage for software decoding is VP8 < 8bit h.264 < VP9

This means that, if I want to encode VP8 via a more user-friendly GUI, I'll have to stick with using VirtualDub2 running through WINE on my Linux Mint installation which is obviously sub-optimal vs using native Avidemux, but I guess it's not quite as bad as things used to be in years gone by...

...either that, or using Xvid which, as you know, is also supported in Avidemux still despite possibly having even less of a use nowadays - at least VP8 is compatible in web browsers and cross-platform game-development software like Ren'py (which is roughly the use-case that I wanted to use VP8 for - not exactly, but it's similar).

Unfortunately, when I tried using Xvid for my use-case, it exhibited substantial frame-stuttering despite low CPU usage - issues that VP8 did not exhibit despite somewhat higher CPU usage (perhaps decoding Xvid, due to its substantial age, is only single-threaded and therefore was doing the issue of showing 25% total utilization on a 4-thread CPU across all 4 threads but in reality was pegging one thread to 100% with the other three at 0%?  At least VP8 decoding seems to handle multiple CPU threads pretty well).
Title: Re: VP8/WebM support?
Post by: eumagga0x2a on September 05, 2022, 04:15:14 PM
I've pushed a new branch (https://github.com/mean00/avidemux2/tree/vp8-encoder) which contains a libvpx-based VP8 encoder plugin in case you really need it. In build instructions (https://github.com/mean00/avidemux2#readme), after changing directory to avidemux2,

git checkout vp8-encoder
then continue with git submodule.
Title: Re: VP8/WebM support?
Post by: Nintendo Maniac 64 on September 08, 2022, 02:59:36 AM
Can I just say, I keep running into "CleanTalk: *** 1 Antispam service cleantalk.org ***" errors when attempting to submit a post that's nothing but text?  I had to remove this line of text and the following line (the one beginning with "Anyway") in order to successfully post and then subsequently edit this post after-the-fact to re-add the text I had originally tried to post (including this very paragraph).


Anyway, honestly, I didn't expect anything to actually come out of my post, so this is a pleasant surprise!

I don't suppose this means that future official versions of Avidemux will also include this VP8 encoder plugin, or is this just specifically a special unofficial one-off branch?
Title: Re: VP8/WebM support?
Post by: eumagga0x2a on September 08, 2022, 07:12:18 AM
The latter. The only change outside of the newly added vp8 directory is trivial. Unless the encoder plugin interface changes, you can use the VP8 encoder plugin with future git master.