winff GUI for avconv and ffmpeg

Audio editors, music players, video players, burning software, etc.
Message
Author
User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

winff GUI for avconv and ffmpeg

#1 Post by mikeslr »

Hi all,

Edit: Historical note. As indicated by the following posts, a couple of years ago a fork of ffmpeg was developed. It was known as avconv. Both debian and Ubuntu used that fork rather than ffmpeg and, consequently, Puppies and Dogs binary compatible with those versions of debian and Ubuntu included the avconv libraries and lacked the ffmpeg libraries. Subsequently, IIRC, the modifications which appeared in avconv were incorporated into ffmpeg. At any rate, the libraries in both debian and ubuntu once again are named ffmpeg.

Winff is a front-end (GUI) which can be used with either ffmpeg or avconv.

Skip this paragraph if you not running Precise, Raring, Wheezy or (?) dpup Squeeze. Both debian and ubuntu deprecated ffmpeg and have used avconv instead for the last couple of years. If you type "avconv --version" in a terminal, you may discover --as I did in upup precise-- that avconv is already installed. If not, you may want to install it. [Not available in Lupu].

If you have it, you may want a GUI. Winff is available from the ubuntu repos. Sorry no pet attached as even after stripping out obvious things not needed by Puppy --gazillion languages and docs-- the pet I made was 1.7 megs. Just type "winff" in PPM's search box. In upup precise PPM claimed there were several dependencies, but they all related to Xterm. You won't need anything other than the winff.deb. You can install it, or download and extract it, remove stuff you won't need and turn it into a pet for later use.

It's set to use ffmpeg by default, but the following webpage will show you how to configure it for use with avconv by changing preferences. Just click Edit>Preferences on its tool bar and the GUI will enable you to browse to the executables of avconv, avplay and the terminal of you choice. They're all in /usr/bin.

http://code.google.com/p/winff/wiki/UsingAvconv

The app from ubuntu precise's repo had pre-configured presets. No guaranties. Hopefully, someone who knows what he or she is doing will do a proper job.

mikesLr
Last edited by mikeslr on Tue 02 May 2017, 18:37, edited 1 time in total.

User avatar
Flash
Official Dog Handler
Posts: 13071
Joined: Wed 04 May 2005, 16:04
Location: Arizona USA

#2 Post by Flash »

I'm using Precise at the moment. I don't think I've seen a more useless help page than what showed up when I entered avconv -h. :?

watchdog
Posts: 2021
Joined: Fri 28 Sep 2012, 18:04
Location: Italy

#3 Post by watchdog »

A good explanation of the problem was provided by user mcewanw in precise 5.4.3 thread:

http://murga-linux.com/puppy/viewtopic. ... &start=255
mcewanw wrote:
watchdog wrote:I have understood that ffmpeg is going to get retired and supported only for compatibility problems. If you try to use directly ffmpeg in precise you are adviced that it is not possible and another standard is used (I don't remember the name, now I am in wary EDIT: avconv).
FFmpeg is a separate project from the avconv project (which was forked off from FFmpeg code). As far as I know the FFmpeg project has not been retired; at this moment the latest version of its ffmpeg code is version 1.1, which was released on 7 January 2013.

http://ffmpeg.org/

However, Debian and Ubuntu have adopted project code (avconv) from the libav project in preference to the FFmpeg project code. A problem that arises is that though the use and commandline options between the two (libav project's avconv and FFmpeg project's ffmpeg) is almost the same they are apparently not always exactly identical. Furthermore, as the following link (second post) points out the libav project also released their own temporary version of code they called "ffmpeg" which is the one which outputs the misleading warning message about ffmpeg binary being "provided for compatibility only":

http://superuser.com/questions/507386/l ... conv-today

The "compatibility" message is misleading because libav project's ffmpeg code IS NOT the same as the continuing to be developed ffmpeg code from FFmpeg project. Newer versions of libav project code apparently no longer provide the temporary ffmpeg and only avconv.

In summary, however, since Debian and Ubuntu are providing libav project code in preference to FFmpeg code (original ffmpeg) it may be necessary to start using avconv directly since if the use of the program options are not identical to ffmpeg then a symlink will not resolve the issue. I'm not sure of the situation with other Linux versions, however, and various programs traditionally relied on FFmpeg project ffmpeg (e.g. Mplayer, VLC, xine), so that potental problem has to be considered too.

As of 7 Jan 2013, the latest libav code is version 9.1. The version of libav project's avconv in Precise retro 5.4.3 (which I use) is 0.8.3. It also provides a libav project ffmpeg binary (which allows programs which refer to ffmpeg to work, albeit sometimes with some modifications to options and their commandline placement). Some differences between FFmpeg project ffmpeg and avconv are itemised in the libav code changelog for earlier libav code version 0.8_beta1:

https://git.libav.org/?p=libav.git;a=bl ... 2a;hb=HEAD

- ffplay/ffprobe/ffserver renamed to avplay/avprobe/avserver
100 - ffmpeg deprecated, added avconv, which is almost the same for now, except
101 for a few incompatible changes in the options, which will hopefully make them
102 easier to use. The changes are:
103 * The options placement is now strictly enforced! While in theory the
104 options for ffmpeg should be given in [input options] -i INPUT [output
105 options] OUTPUT order, in practice it was possible to give output options
106 before the -i and it mostly worked. Except when it didn't - the behavior was
107 a bit inconsistent. In avconv, it is not possible to mix input and output
108 options. All non-global options are reset after an input or output filename.
109 * All per-file options are now truly per-file - they apply only to the next
110 input or output file and specifying different values for different files
111 will now work properly (notably -ss and -t options).
112 * All per-stream options are now truly per-stream - it is possible to
113 specify which stream(s) should a given option apply to. See the Stream
114 specifiers section in the avconv manual for details.
115 * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
116 sense that they're specified after the output filename instead of before,
117 like all other options. In avconv this irregularity is removed, all options
118 apply to the next input or output file.
119 * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
120 irregular and highly confusing, they were also redundant. In avconv the -map
121 option will create new streams in the output file and map input streams to
122 them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
123 each stream in the first input file.
124 * The -map option now has slightly different and more powerful syntax:
125 + Colons (':') are used to separate file index/stream type/stream index
126 instead of dots. Comma (',') is used to separate the sync stream instead
127 of colon.. This is done for consistency with other options.
128 + It's possible to specify stream type. E.g. -map 0:a:2 creates an
129 output stream from the third input audio stream.
130 + Omitting the stream index now maps all the streams of the given type,
131 not just the first. E.g. -map 0:s creates output streams for all the
132 subtitle streams in the first input file.
133 + Since -map can now match multiple streams, negative mappings were
134 introduced. Negative mappings disable some streams from an already
135 defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
136 all the stream in the first input file, except for the second audio
137 stream'.
138 * There is a new option -c (or -codec) for choosing the decoder/encoder to
139 use, which allows to precisely specify target stream(s) consistently with
140 other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
141 libvorbis sets the codec for the first audio stream and -c copy copies all
142 the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
143 aliases to -c:v/a/s
144 * It is now possible to precisely specify which stream should an AVOption
145 apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
146 -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
147 syntax is deprecated and will stop working soon.
148 * -map_chapters now takes only an input file index and applies to the next
149 output file. This is consistent with how all the other options work.
150 * -map_metadata now takes only an input metadata specifier and applies to
151 the next output file. Output metadata specifier is now part of the option
152 name, similarly to the AVOptions/map/codec feature above.
153 * -metadata can now be used to set metadata on streams and chapters, e.g.
154 -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
155 This made -vlang/-alang/-slang options redundant, so they were removed.
156 * -qscale option now uses stream specifiers and applies to all streams, not
157 just video. I.e. plain -qscale number would now apply to all streams. To get
158 the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
159 and -aq is now an alias for -q:a.
160 * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
161 uses stream specifiers. Use -bsf:v/a/s instead of the old options.
162 * -itsscale option now uses stream specifiers, so its argument is only the
163 scale parameter.
164 * -intra option was removed, use -g 0 for the same effect.
165 * -psnr option was removed, use -flags +psnr for the same effect.
166 * -vf option is now an alias to the new -filter option, which uses stream specifiers.
167 * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
168 * -vtag/-atag/-stag options are now aliases to the new -tag option.

mcewanw (author of precord and pavrecord)

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#4 Post by 01micko »

I think, in the spirit of open source, that the avconv developers, or whatever they want to to call themselves, took a pretty gutless approach to forking a project. That's why I don't feel (yes emotional bullshit) like supporting anything they do. Something struck a chord with that for me today and I quote; "It is fine to fork it for this purpose ... just don't do stuff that will make it incapable of being merged." . The author may or may not agree in the context of this post.

ffmpeg is alive and well. Just because Ubuntu doesn't support it does not mean that it is deprecated.

PS: thanks watchdog
Puppy Linux Blog - contact me for access

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

Thanks watchdog

#5 Post by mikeslr »

Thanks, watchdog, for the clear explanation. Sorry I originally missed it.

If this had occurred in the "for profit" sector, avconv would probably have been sued for defamation, misleading advertisements and probably trademark infringement. Or something to that effect. Intellectual property rights wasn't on my daily watch list.

mikesLr

Pelo

Pmusic inop with pupjibaro Jessie

#6 Post by Pelo »

avconv --version

┌─[root][11:46 AM][~]
└─[pup_jessie][$] avconv --version
ffmpeg version 2.2.3 Copyright (c) 2000-2014 the FFmpeg developers
built on Jun 17 2014 16:13:40 with gcc 4.8.2 (GCC)
configuration: --prefix=/usr --enable-libmp3lame --enable-libx264 --enable-libfaac --enable-pthreads --enable-small --enable-postproc --enable-libvorbis --enable-gpl --enable-shared --enable-nonfree --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-debug --enable-bzlib --enable-zlib --enable-libspeex --enable-version3 --enable-runtime-cpudetect --enable-x11grab --enable-libschroedinger --enable-libtheora --enable-libxvid --enable-swscale --enable-libvpx
libavutil 52. 66.100 / 52. 66.100
libavcodec 55. 52.102 / 55. 52.102
libavformat 55. 33.100 / 55. 33.100
libavdevice 55. 10.100 / 55. 10.100
libavfilter 4. 2.100 / 4. 2.100
libswscale 2. 5.102 / 2. 5.102
libswresample 0. 18.100 / 0. 18.100
libpostproc 52. 3.100 / 52. 3.100
Unrecognized option '-version'.
Error splitting the argument list: Option not found
Conversion failed!
Tried symlink avconv to FFmpeg, without success..
I continue my check. Winff from PPM plus dependencies perhaps will solve Pmusic inop :?:
:P yes ! (for MP3 files). Now CD try... :? source directory not found, perhaps cause is elsewhere..
Attachments
winff.png
dependancies
(48.34 KiB) Downloaded 655 times

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#7 Post by musher0 »

Hi gang.

If you're only processing sound, Sound Exchange aka sox will beat ffmpeg flat out
anytime. (IMO)

Sox is much smaller in size, plus you don't need to have a PhD to work with it! :D
Also, the play and soxi utilities from the Sox series are really great.

BFN.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
Pete
Posts: 660
Joined: Sun 02 Mar 2014, 18:36

#8 Post by Pete »

Sox is a great audio only tool that has effects and processing that are not available in ffmpeg and I agree that sox is much easier to use.
However, sox does not support MP3 (without the lame or other libs) and it does not support hi def audio and popular multi-channel audio formats like AC3 and AAC.
For these, it depends on ffmpeg.
The only true non-losy audio format is supports without external programs or libs is wav.
Even there, I'm not sure if it will support 24 bit wavs at 48KHz sample rate.

Even for Flac, it needs libflac.

Pity, as I really like sox but for serious work that does not use wav, au or some raw formats, it has far too many limitations.

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#9 Post by musher0 »

Pete wrote:Sox is a great audio only tool that has effects and processing that are not available in ffmpeg and I agree that sox is much easier to use.
However, sox does not support MP3 (without the lame or other libs) and it does not support hi def audio and popular multi-channel audio formats like AC3 and AAC.
For these, it depends on ffmpeg.
The only true non-losy audio format is supports without external programs or libs is wav.
Even there, I'm not sure if it will support 24 bit wavs at 48KHz sample rate.

Even for Flac, it needs libflac.

Pity, as I really like sox but for serious work that does not use wav, au or some raw formats, it has far too many limitations.
Hi Pete.

Strange... The play utility in the Sox series plays mp3's, flac's and ogg's in
addition to wav on my rig. The soxi utility got me the metadata of pretty much
any sound file format I threw at it.

When I type < sox > in a terminal I get this (towards the bottom of the help):
AUDIO FILE FORMATS: 8svx aif aifc aiff aiffc al amb amr-nb amr-wb anb
au avr awb caf cdda cdr cvs cvsd cvu dat dvms f32 f4 f64 f8 fap flac fssd gsm
gsrt hcom htk ima ircam la lpc lpc10 lu mat mat4 mat5 maud mp2 mp3 nist ogg
paf prc pvf raw s1 s16 s2 s24 s3 s32 s4 s8 sb sd2 sds sf sl sln smp snd sndfile
sndr sndt sou sox sph sw txw u1 u16 u2 u24 u3 u32 u4 u8 ub ul uw vms voc
vorbis vox w64 wav wavpcm wve xa xi
Also it can convert MS or old wav files unplayable by aplay to mp3's.

BFN.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
Pete
Posts: 660
Joined: Sun 02 Mar 2014, 18:36

#10 Post by Pete »

musher0 wrote: Strange... The play utility in the Sox series plays mp3's, flac's and ogg's in
addition to wav on my rig. The soxi utility got me the metadata of pretty much
any sound file format I threw at it.
.....
Do you have the lame (or mad) and Libflac libs installed?
It's probably picking those up.

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#11 Post by musher0 »

Pete wrote:
musher0 wrote: Strange... The play utility in the Sox series plays mp3's, flac's and ogg's in
addition to wav on my rig. The soxi utility got me the metadata of pretty much
any sound file format I threw at it.
.....
Do you have the lame (or mad) and Libflac libs installed?
It's probably picking those up.
Yep. The lame lib, but not the flac. Flac sound files use the ogg lib.
[/usr/lib]>ls -Algo *lame*
-rw-r--r-- 1 406816 jun 2 16:24 libmp3lame.a
-rwxr-xr-x 1 937 oct 8 2015 libmp3lame.la*
lrwxrwxrwx 1 19 avr 24 16:13 libmp3lame.so -> libmp3lame.so.0.0.0*
lrwxrwxrwx 1 19 avr 24 16:13 libmp3lame.so.0 -> libmp3lame.so.0.0.0*
-rwxrwxr-x 1 347512 mar 21 17:29 libmp3lame.so.0.0.0*

[/usr/lib]>ls -Algo *flac*
ls: cannot access *flac*: No such file or directory

[/usr/lib]>ls -Algo *ogg*
-rw-r--r-- 1 21006 jui 7 2012 libogg.a
-rwxr-xr-x 1 902 jui 7 2012 libogg.la*
lrwxrwxrwx 1 15 avr 24 16:13 libogg.so -> libogg.so.0.8.0*
lrwxrwxrwx 1 15 avr 24 16:13 libogg.so.0 -> libogg.so.0.8.0*
-rwxrwxr-x 1 22860 mar 21 17:29 libogg.so.0.8.0*
Since you're here :) :
Would you know anything about the capacity of the sox's play utility to play wma's?

I looked all over the web (I think), and it says to use mplayer instead. But if it's
possible to use sox to play other sound formats through libs, isn't there a wma lib
for sox somewhere?

Thanks in advance.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
Pete
Posts: 660
Joined: Sun 02 Mar 2014, 18:36

#12 Post by Pete »

Hi musher0

I'm allergic to wma :D so have never tried it.
Only thing I can tell you is to covert using mplayer or ffmpeg

mplayer -ao pcm:OutFile.wav InFile.wma

ffmpeg -i InFile.wma OutFile.wav

Don't some wma files include DRM? If so, they may not work at all.

User avatar
Pete
Posts: 660
Joined: Sun 02 Mar 2014, 18:36

#13 Post by Pete »

Don't know if you came across this and it's not exactly a sox lib, but a bit of perl for audio format conversions:

https://sourceforge.net/projects/pacpl/

Have not tried it, but they claim it can convert wma and even extract audio from wmv files.

Also found this, another converter that will take care of all your wma's in a directory by converting them to something "normal" :D .

If you have loads of wma's then perhaps convert the whole bang-shoot in one go and never have to worry about it again.

http://askubuntu.com/questions/55352/co ... ks-to-mp3s

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#14 Post by musher0 »

Pete wrote:Don't know if you came across this and it's not exactly a sox lib, but a bit of perl for audio format conversions:

https://sourceforge.net/projects/pacpl/

Have not tried it, but they claim it can convert wma and even extract audio from wmv files.

Also found this, another converter that will take care of all your wma's in a directory by converting them to something "normal" :D .

If you have loads of wma's then perhaps convert the whole bang-shoot in one go and never have to worry about it again.

http://askubuntu.com/questions/55352/co ... ks-to-mp3s
I think that'll be pretty helpful! Also your previous reference. :)
Many thanks, Pete!
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
Pete
Posts: 660
Joined: Sun 02 Mar 2014, 18:36

#15 Post by Pete »

@musher0

You're welcome.

jlst

#16 Post by jlst »

nowadays libav is deprecated

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#17 Post by musher0 »

jlst wrote:nowadays libav is deprecated
It's replaced with... ?
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

jlst

#18 Post by jlst »

musher0 wrote:
jlst wrote:nowadays libav is deprecated
It's replaced with... ?
Most distros have already switched back to ffmpeg.

Debian and Gentoo have libav devs that's why they forced it into those distros, but now libav is way behind ffmpeg, the libav devs are to blame for this.

User avatar
Pete
Posts: 660
Joined: Sun 02 Mar 2014, 18:36

#19 Post by Pete »

@musher0

Have you made any progress with your wma's?

Another option if you want to play wma's in the CLI.

Code: Select all

ffmpeg $1 -ss 0 -f au - | aplay -
Where $1 is the path/to/your/song.wma, just watch for white space.
and that is a zero after the -ss

The output is quite "chatty" so if you want to get rid of all the stdout, the usual >/dev/null will do it, or you could make use of the output to show a basic progress bar out of ==== or ****** characters.

Pelo

Puppy devs must take a glance to passengers mail

#20 Post by Pelo »

Puppy devs must take a glance to passengers mail and release all RPT all Puppies wit FFmpeg. My Clementine has no audio in LXpup Xenial.

Post Reply