Tag Archives: Fauxdacious

Fauxdacious Version 3.82-final Released

Fauxdacious Version 3.82-final Released for Linux and Windows: 

* Fully updated the Fauxdacious Github site and will now keep changes updated there as commits.

* Added the ability to capture the thumbnail images (“cover art”) associated with youtube video streams. This also involved changing the youtubedl_metadatahelper.pl script.  It now uses youtube-dl to fetch and download the thumbnail file when the other tag metadata is fetched.  By default, it stores them in the /tmp directory, but you can change this in the aforementioned perl script.

* GTK equalizer:  Added the [Auto] checkbox, (and relabeled the [Reset to Zero] button to [Flat] to make room for it), and added a two-state indicator icon to the [Preset] button to indicate whether a song-specific preset file is currently in use (so the GTK equalizer now works the same way the Winamp Skins equalizer).

* Fixed playlist column headers in the QT interface to work like the GTK version, labeling all unlabeled column headers using the same abbreviations we used in GTK.  Also on the QT side, there’s an optional “Now Playing” column (header was blank, but is now labeled “On”) which was useless (always blank), but now shows an asterisk next to the currently playing song (The GTK side does not offer this column, but the currently playing song is displayed in bold type).

* Tweaked instance name / dbus handling by adding instance names to the window titles (as Audacious does with their instance numbers) and also making numbers valid as instance names allowing one to specify the commandline option “-#” (ie. -1, -2, etc. in lieu of “–new=1, etc.) for compatability with Audacious.  The config directories work the same as Fauxdacious instance names with underscores, ie. ~/.config/audacious_1 (~/.config/audacious_instancename) instead of ~/.config/audacious-1, etc. though.  TODO:  Quitting the QT interface exits with a bunch of “dbus errors” (warnings) (even before these changes) that I haven’t been able to explain, though everything still shuts down normally.

* More leaks, more tweaks to ffaudio-core.cc (video playing) and others.  So far this seems to have pretty much eliminated memory-usage growth creep when using SDL1 and further reduced it for SDL2.  Audio-only in both appears to be leak-free.  I have not yet been able to completely isolate the source of the slight growth in SDL2 (over repeated play of a video) though.  Also added new config option:  [ffaudio].video_render_scale.  Default is 1, but valid values are 0, 1, or 2.  Sets the SDL_HINT_VIDEO_RENDER_SCALE_QUALITY hint value.  I think I also have the “black video screen on replay” issue on the Windows version fixed.  TODO:  The only remaining issue is that the video window still doesn’t always close when exiting Fauxdacious with the video window playing (on Windows version only – this was never an issue except on Windows).

* Merged in Audacious pull request #45:  “Add SOCKS proxy support.” as written.

* Merged ALL Audacious commits since 2119d19 through b216d4e; and (since then) 0ee73f2, d1463c1, 8700688, 217a39f, 4da2cb8, 236ee1d, d6e115e, and f47bede; and plugin commits since ab45ec5 through 585518c (everything through 2/13), including their resolution of the issue with plugin pull# eaf7949; and (since then) 5e9fc66, f4c9b02, 5b50d20, and 400825a.

Fauxdacious version 3.82-beta2 Released

Fauxdacious Version 3.82-beta2 Released for Linux and Windows: 

* Tweaked and generally tidied up ffaudio-core.cc a bit to make sure AVPackets are efficiently initialized and freed properly and slightly optimized play by eliminating some redundant video function checks and inlining some calls while attemping to eliminate rare and occasionally random seg-fault when stopping audio stream play.  There still appears to be a slight bit of memory leakage? / growth creep in video play, but my guess it’s somewhere deep in the bowels of SDL.

* Changed The default “video_qsize” value from 8 to 6 and added new config option: [ffaudio].allow_highdpi (default FALSE) to enable SDL2’s SDL_WINDOW_ALLOW_HIGHDPI flag.

* Merged in all latest QT stuff (finally) and tested and seems to work!  NOTE:  I did not build it into this release to save file sizes, so you must recompile yourself if you want QT configuring with “–enable-qt”!  NOTE2:  Audacious’s QT interface is rather behind, for example Equalizer presets and Plugin parameters are NOT currently configurable from the GUI.

* Merged in Audacious pulls# 40237df, 6d9acec, bb439b0, d17911e, 425aa54, 2119d19; and plugin pulls# ab45ec5.  Did NOT merge plugin pull# eaf7949 due to compile error under g++.

* Includes all unreleased Version 3.82-beta1 changes (below):

(Not released) Version 3.82-beta1

* Added new config file option:  [audacious].eqpreset_nameonly (boolean) which causes the first question mark (if any) and anything following it in a URL to be removed for purpose of exporting song-specific equalization presets. This is needed for some live-streaming station URLs that change “keys” dynamically and regularly. Default is FALSE (old behavior – keep the full url base name), add and set to TRUE for the new behavior. For example, this will affect youtube-dl urls as well, as previously the preset file would be exported as “watch?xxxxxx.preset” where “xxxxxx” was the actual video id.  With the new option, exporting song-specific equalizer presets will be the same preset file “watch.preset”.

* Fixed the exporting of song-specific equalization presets for cuesheet (.cue) files.  This worked before Audacious aparantly fixed the file-name used when opening a song for playback from it’s cuesheet filename to the actual referenced file-name, breaking our logic.  As a result, the equalization presets exported for a cuesheet file will apply to all tracks in the cuesheet.  They are still exported (reguardless of track) as “<filename>.cue.preset”.  I made the decision to do it this way assuming that all tracks in a cuesheet are (very likely) recorded with the same equalizer settings.

* Merged in Audacious plugin pulls# 2c267a2

Fauxdacious(tm) Media Player for Linux Released

Introducing
I’m pleased to announce the release of Fauxdacious(tm) Media Player, v.3.83-beta1!   Fauxdacious is my FORK of “Audacious“.   The reason for this fork is that I’ve accumulated numerous changes (hacks) that I’ve made over the years to Audacious.   While I’ve submitted the patches of most of my enhancements to the Audacious team for mainline inclusion, they’ve rejected most and completely redid one in a way that I felt limited it’s usefulness.   The final straw came last month when I rewrote their FFMpeg plugin to support an option to display the video portion of media that contains video and they rejected it out of hand.   I was initially pretty perturbed with them because I believe this enhancement is a very useful addition and I started to get the impression that they really aren’t interested in code contributions from outside parties and started to write a rather angry screed here to my dear readers, but after further contemplation, I have concluded that it’s not warranted nor helpful to anyone.
I think the problem is that Audacious is a very mature (and very good, I might add) software project and therefore they are more limited in what they can and should change, and that their perceived “not invented here” attitude may be necessary at this point to maintain it’s integrity.   By forking, I can be more open to new ideas and features, which can potentially take it in new directions.  It should be remembered that Audacious itself was originally a fork of the now defunct XMMS media player!   I plan to continue offering further patches and changes I make to Fauxdacious available to the Audacious team for their consideration, but will no longer be concerned about whether they choose to include them.   I can also therefore be more open to new patches offered by others, which the Audacious team may reject, as well as cherry-picking new bugfixes, upgrades, and features that they include into their future releases.
Please be advised that though I’ve been a computer programmer for over thirty years, my C++ skills are somewhat limited and Audacious is huge and very complex, so my ability to support and fix bugs is somewhat limited (but I’m getting better at it)!   Therefore, if you have an issue with Fauxdacious, your best bet would be to first check their forums, then try real Audacious.   You need to determine if it fails there also, or if the issue only affects Fauxdacious!   If Audacious replicates the bug, then report it there, but if not, then notify me (as it is then an issue with my Fauxdacious patches), and I need to fix it!   Please DO NOT file bugs with Audacious regarding this project unless you can replicate it there without notifying me first!   This will be non-trivial, since it is somewhat challenging to install both Fauxdacious and Audacious on the same system at the same time.   By installing one, you can overwrite parts of the other unless you are very careful, but you should still be able to switch between the two!
Fauxdacious Features not currently found in Audacious:
1)   A “visualization” option for displaying the video of ffmpeg files and streams that contain a video stream in a popup window.   Since Audacious already has “visualization” plugins that pop up a separate window to display stuff like fractals, equalizer graphs, etc. that are tied to what’s playing, my original idea was to create a “visualization” plugin that would display the actual video part of the stream, if it contained one.   I ended up rewriting their “FFaudio” plugin to add options for handling video and, so far, it handles any video stream that ffmpeg / ffplay can play! (See my previous post for history / details on how it works)  Screenshot below with my new “Lavadacious” skin (included):
2)  Restoration of XMMS’s “auto-preset” feature that permits creation of song/stream specific equalizer settings.  In the equalizer window (when using the WinAmp Skin interface, the [Auto] and [Preset] buttons now work again)!  When you “Export” a “Preset” file, the window pops up with the name of the currently-playing song displayed as the default file name and the default directory is the Audacious config directory.  If you save your preset file there under that name and you turn the [Auto] button on, and restart the song, Fauxdacious will load the matching preset file from there for that song/stream while it is playing, then restore the default equalizer presets when advancing to another song.  The [Preset] button also lights up if Fauxdacious is currently using a song/stream specific preset.  NOTE:  The Audacious team is currently working on a similar capability at my request, and I am likely to replace this with theirs when they do!
3)   The ability to toggle the recently-added Audacious record / dub option via it’s “audtool” DBus-based command-line tool permitting creation of quicker one-button desktop launcher activation, or even script activation of dubbing, ie. using Cron to record your favorite late-night radio show!  NOTE:  The Audacious team has merged this patch in their latest GIT at my request!
4)   Filewriter option to automatically deactivate equalizer and all effects plugins when recording so they’re not doubled down on during playback.   NOTE:  This has been replaced (in Fauxdacious v. 3.7-beta2) with the Audacious team’s latest GIT patch (after my request) which is better!
5)   Option to divert audio output to stdout in the user’s choice of selected audio formats for further processing by another program.   This is a rejected feature added to Audacious’s “FileWriter” plugin.   The idea here is to be able to use Fauxdacious as an audio component in pipes.  It also permits continuous recording across multiple files / tracks into a single stream.
6)   Better (imho) stdin input (for streaming) of most formats as well as playlists.   Again this is for using Fauxdacious as a component in pipes.   Audacious actually implemented this at my urging a while back, but my rejected patch not only permits streaming media through stdin, but also lists of media files to process via simple ls commands, etc.  ie. generated by a script, etc.   Audacious now supports this via a slightly more complicated syntax, however.  For a simple example:
ls ~/Music/*Swift*.mp3 | fauxdacious -Dc -
7)   New option (-P) to use the Pause button to simply mute (ie. commercials) while stream continues to play (silently), allowing you to listen to something else in another instance (see feature 10 below).   I often keep two instances open while listening to online commercial radio streams (which are in commercial for nearly half the time anyway with typically 5-6 minute breaks).   I have the other instance playing my own (legally) downloaded music without the Pause-Mute option, and with one button-click, can switch to and resume my music where it left off while the commercials (in the first instance) blather on (muted) to the bit bucket! 😀   Otherwise, one must either pause the radio stream, and resume where it left off (at the beginning of the commercial break) or mute the system’s speakers preventing the playing of anything else!
8)   Command line option “-D” – Delete all playlists.  Audacious added multiple playlists via tabs in their GTK/Qt interfaces which is quite nice, but I could never get used to it as I only use the classic WinAmp skin interface, which only supports (displays) a single playlist.   When starting Audacious with a new file or list of files, by default, it creates a new playlist, leaving all the others intact and invisible to you, which becomes annoying.   By starting Fauxdacious with “-D”, any existing playlists are deleted for you.   A second new option “-c” clears all entries from the current playlist.   by starting up with “-Dc”, you are guaranteed to start up with a clean slate containing only items listed as arguments.   If you start it with no arguments, you start up with a clean, empty playlist!
9)   New “-z” option to start up without the equalizer on.
10)   New “-n” / –new=<instance-name> option to activate a new “instance” of Fauxdacious by specifying an alternate config directory name (~/.config/audacious_<instance-name>/).   I use this, as described in the script below with two separate instances of Fauxdacious running at the same time with different playlists (and / or different configurations).  The default config directory is named “audacious” (~/.config/audacious/).   a new, separate “instance” is specified by “–new=newconfig” where “newconfig” is the name of a different config directory (can be a copy).   This “instance-name” can then be used in the “audtool” command to specify which instance of Fauxdacious to manipulate!  If just -n is given, just a new instance is created, but the default config file is used and it can not be manipulated with audtool.  The default instance name is “audacious” (not “fauxdacious”) with nothing appended to the end of it.
Here’s my script for toggling between music and radio (and adjust the volume difference between the radio and my music) in two separate instances of Fauxdacious (the 2nd called “radio”) activated by a desktop launcher button:
audStatus=`cat /tmp/audstatus`
if [ "X$audStatus" = "X1" ]; then
     audtool instance radio playback-pause set-volume -12
     audtool playback-play
     echo "2" >/tmp/audstatus
else
     audtool playback-stop
     audtool instance radio playback-play set-volume +12
     echo "1" >/tmp/audstatus
fi
11)  Additional skins, namely my very own “Lavadacious”, which I designed to match the violet “Lavafox” theme I use in Firefox and in my current desktop theme.  There is also a “DefaultRed” skin based on the Audacious “Default” skin, and additional flavors of the “Refugee” skin.
12)  Ability to play Youtube and Vimeo videos using (an included) Perl “helper” script (FauxdaciousUrlHelper.pl) in the contrib/ directory for prefetching the video title and extracting and adding the hidden “live-stream” to the playlist in lieu of the Youtube url. You need copy this script from the contrib directory to somewhere in your executable path, like /usr/local/bin/ (Linux/Unix users – the install script takes care of this for Windows users!) AND add the new config option:  [audacious].url_helper=FauxdaciousUrlHelper.pl and [audacious].user_tag_data=TRUE to your config file (~/.config/audacious[_instancename]/config or C:\Users\<username>\AppData\Local\audacious[_instancename]\config).  M$-Windows users will also probably need to add a new [neon] section and [neon].ignore_ssl_certs=TRUE as well.  This helper also replaces and obsoletes the previous “getTuneinStream.pl” helper script as well as the “youtube-dl” transport plugin!
13)  Ability to play most Tunein.com radio stations (that contain an actual live stream; with Perl and the new (provided) FauxdaciousUrlHelper.pl url-helper script mentioned in the previous paragraph.
14)  Ability to save tag metadata (title, artist, etc.) to files in media formats that don’t support tags, as well as streams (URLs) by adding the option: [audacious].user_tag_data=TRUE to your config file.  Such metadata will be stored in a text file (user_tag_data) in your audacious config directory.
The Audacious team leader told me that it was not worth my effort (or theirs) to add video capability to Audacious since there are many excellent video players out there, but I disagree.   Sure, there are (I like VLC and Mplayer myself), but I really prefer the Audacious interface, and I’m spoiled used to it!   I also like to use Audacious’s sound-enhancing effects plugins while listening to audio or video! I admit that I probably use my audio player a bit differently than most.   I’m sort of a Linux command-line and scripting kinda guy and that’s what most of these hacks are for.   If you are too and / or like being able to watch videos while using Audacious’s wonderful audio-enhancing plugins, features, and beautiful classic WinAmp skins, then Fauxdacious is definitely for you!
Ok, so how do you get Fauxdacious?!
DISCLAIMER:   First of all, before downloading and installing Fauxdacious, please be aware that I consider this “beta”-quality software and therefore likely to contain a few bugs.   Therefore, I provide you this software “as-is” and I assume no liability for any damages resulting from it’s installation and use.   By using this software, you acknowledge that you are assuming all risk of any damages or injury that may result from such use!
1)   Uninstall libaudcore, audacious, and audacious-plugins from your system (if you are currently using Audacious).   This shouldn’t remove your Audacious configurations, but you should copy your ~/.config/audacious/* files somewhere else first, just in case something goes wrong!
2)   If you already have a fairly up-to-date version of Audacious running, you probably already have the dependencies installed.  If not, here’s a list.  Note, most of these aren’t required to actually get Fauxdacious (or Audacious) to run, but many are needed for particular plugins in order to process different types of media.
Depends: libasound2
Depends: libatk1.0-0
Depends: libaudcore3
Depends: libavcodec56
Depends: libavformat56
Depends: libavutil54
Depends: libbs2b0
Depends: libc6
Depends: libcairo2
Depends: libcddb2
Depends: libcdio-cdda1
Depends: libcdio13
Depends: libcue1
Depends: libcurl3-gnutls
Depends: libdbus-1-3
Depends: libdbus-glib-1-2
Depends: libfaad2
Depends: libflac8
Depends: libfluidsynth1
Depends: libfontconfig1
Depends: libfreetype6
Depends: libgcc1
Depends: libgdk-pixbuf2.0-0
Depends: libgl1-mesa-glx
Depends: libgl1-mesa-glx
Depends: libglib2.0-0
Depends: libgtk2.0-0
Depends: libjack-jackd2-0
Depends: libjack-jackd2-0 libjack0
Depends: liblircclient0
Depends: libmms0
Depends: libmodplug1
Depends: libmp3lame0
Depends: libmpg123-0
Depends: libneon27-gnutls
Depends: libnotify4
Depends: libogg0
Depends: libpango-1.0-0
Depends: libpangocairo-1.0-0
Depends: libpangoft2-1.0-0
Depends: libpulse0
Depends: libsamplerate0
Depends: libsdl2-2.0-0
Depends: libsidplayfp4
Depends: libsndfile1
Depends: libsndio6.0
Depends: libsoxr0
Depends: libstdc++6
Depends: libvorbis0a
Depends: libvorbisenc2
Depends: libvorbisfile3
Depends: libwavpack1
Depends: libx11-6
Depends: libxcomposite1
Depends: libxml2
Depends: libxrender1
Depends: zlib1g
3)   Download both Fauxdacious and the Fauxdacious Plugins tarballs from these respective links.
As of 3/7/2017, you can also now download the bleeding-edge latest source code for both from my official Github site as well!
4)   Untar each.   Switch to the newly-created subdirectory (./fauxdacious-3.7/ for the first).  If you are running a pretty modern Debian-based Linux distro, you can probably simply open a terminal and do:
sudo make install
cd /usr/local/bin
sudo ln -s audacious fauxdacious
5)   If this does not work for you, you’ll need to compile from scratch.  This will involve installing the development versions of several of these libraries.  Here’s a list from the Audacious team and this command will install them for you on a Debian-based system:
sudo apt-get install git automake build-essential libasound2-dev \
libavformat-dev libbinio-dev libbs2b-dev libcddb2-dev libcdio-cdda-dev \
libcue-dev libcurl4-gnutls-dev libdbus-glib-1-dev libfaad-dev libflac-dev \
libfluidsynth-dev libgl1-mesa-dev libgtk2.0-dev libguess-dev \
libjack-jackd2-dev liblircclient-dev libmms-dev libmodplug-dev libmp3lame-dev \
libmpg123-dev libneon27-gnutls-dev libnotify-dev libpulse-dev \
libsamplerate0-dev libsdl1.2-dev libsidplayfp-dev libsndfile1-dev libsoxr-dev \
libvorbis-dev libwavpack-dev libxml2-dev libsndio-dev libswscale-dev
6)   Repeat step 4 for the fauxdacious-plugins-3.7.tgz tarball by untarring and switching to the fauxdacious-plugins-3.7/ and try the “sudo make install” command there.
7)   After completing the installation of both tarballs, you should then do:
cd /usr/local/bin
sudo ln -s audacious fauxdacious
fauxdacious
If all this fails and / or you wish to go back to Audacious, simply switch back into fauxdacious-plugins-3.7/ and do a “make distclean” command, then do the same in fauxdacious-3.7/ and do the same thing, then reinstall your Audacious packages.  (libaudcore, audacious, and audacious-plugins) and you should be back to normal.
8)   To enable video play either go to [Settings].[Plugins].[Input] tab.[FFmpeg Plugin].[Settings] and check the “Play video stream…” box; or edit your “~/.config/audacious/config” file and add the following lines:  (You can change “Fauxdacious Video” to whatever title you would like to appear above the video window).  If you also use the Afterstep windowmanager (as I do), you may want to add the line “afterstep=TRUE” under the “[skins]” section!
[ffaudio]
play_video=TRUE
video_windowtitle=Fauxdacious Video
TO DO:   I still need to fix an annoying error msg. popup that occasionally comes up saying it can’t find a (should’ve been deleted) playlist.   Right now, it works fine in spite of this.  (FIXED in v3.71beta2)   Next step is to eventually figure out how to “package” all this up into Debian “packages” for simpler installation!   Another thing is including the QT interface (right now I use the WinAmp skins interface and built it with the GTK interface, but not the QT stuff.   (DONE!)  I also could use someone with Windows and a good C++ compiler to build a Windows binary version (Audacious has one).  This is something I’m completely clueless about though!  (DONE!)
UPDATE (3/18/17):  Version 3.83-beta1 Released
UPDATE (3/8/17):  Version 3.82-final Released
UPDATE (2/16/17):  Version 3.82-beta2 Released
UPDATE (1/31/17):  Version 3.81-final Released 

* Added ability to directly play tunein.com radio stations using the station’s tunein.com website url (as opposed to having to manually dig out the actual live-streaming urls).  This requires the new helper script in the contrib/ directory (getTuneinStream.pl) installed in your path, and installing the new Perl modules “LWP::Simple” and “Tunein::Streams” from CPAN (www.cpan.org).

* Added headers to all columns in GTK playlist. Previously, some column headers were not shown since they were longer than the default column width (as determined by a boolean array ui_playlist_widget.cc:pw_col_label).  I added a separate array of “short” names (columns.cc:pw_col_headers) so that all columns are now properly labeled and understood without making them unnecessarily wide.

* Merged in Audacious pulls# 361a6fc, c3b0659, b96fbd4, c1fe83b, 11e4915, 8bea900, 25dd624, 65af13f; and plugin commits# 25dd624, 0bcc904, 0abceec, eb3e8a8, 45c1f38, a21e4a2

* Fixed Audacious-rejected bug# 681 to make pause just do pause, as it should!

* Fixed audtool –help to work even if unable to connect to dbus.

* Merged in Audacious commits# 5297008, a67d6be, b321ee5, and c3287dd; and plugins commits# bf6661e, 403020b and 8174f13, addressing Audacious bugs: 560 and 685.

* Added comments as another optional column field to the playlist table (GTK interface) and made it sortable. I had started to add this and (on the SAME day, the Audacious team added it, so I dropped my work and merged theirs! The files I changed were almost identical to their changes, but they had finished the ones I hadn’t gotten to). I wanted to make each column sort when clicking on the header (like my Tk::HMListbox), but this was going to be a huge boondoggle.

UPDATE (11/16):  Version 3.8-final Released 

* Fixed two huge memory leaks in ffaudio by using smart-pointers to open input file, frames, and properly flushing and destroying queues.

* Added queueing for audio packets when playing video.  This makes for smoother video-play while allowing for a reduction in the queue-size which improves audio-video syncing.  The default “video_qsize” value is now 8 instead of 16.

* Added separate config option [youtubedl].video_qsize (default: use [ffaudio].video_qsize) for Youtube-DL video streams, which seem to need a bigger queue.

* Removed the [Services].[Eject CD] from Windows version, since it doesn’t work anyway because it requires a command that is not included with Windows.

* Added a few lines of code to copy selected playlist entry URLs / files to the PRIMARY selection when copying so that they can be retrieved / pasted into other applications.

TO DO: Windows version does not always shut down the video window when shutting down without stopping playback first.  Windows version sometimes produces black playback window when stopping and restarting play on same item fixable by advancing playlist.

UPDATE (11/10):  Version 3.8-beta3 Released  Added Youtube-DL transport plugin to live-stream videos from Youtube, Vimeo, and other sites that require using a helper application such as youtube-dl in order to play outside of a web-browser.  The plugin recognizes any URL with the “ytdl://” prefix and converts that to the proper “https://&#8221;.  Simply grab the URL off Youtube and paste it in as a URL in Fauxdacious, and change “https” to “ytdl” to add to your playlist.  The video is downloaded and piped directly to Fauxdacious without storage to a hard drive, therefore, there’s no ability to seek.  To do that, simply use youtube-dl to download the video and then add the downloaded file to Fauxdacious.  NOTE:  This type of piping will require a good internet connection or may require downloading lower-quality video formats, otherwise, a buffer-underrun may occur ending video playback.  The user may specify / configure the youtube-dl (or other helper application) using the new configure option:  [youtubedl].command – the default string is:  “youtube-dl –no-continue –no-playlist –no-cache-dir –no-progress –no-call-home –youtube-skip-dash-manifest –prefer-ffmpeg -q -f mp4 –no-part”.  Do NOT add the “-o -” to feed to stdout, as Fauxdacious does this for you. Four additional related user config variables have also been added:

[youtubedl].video_windowtitle (default “Youtube-DL”) for specifying what to add to the window titlebar (set to “FILENAME” to get the url); -OR- use the included metadata helper script (youtubedl_metadatahelper.pl) to fetch the title and author, and then set (in the config file):

[audacious].youtubedl_tag_data=TRUE (default FALSE)

[youtubedl].metadata_helper=/usr/local/bin/youtubedl_metadatahelper.pl (default empty)

[youtubedl].save_video (default FALSE).  If true, a copy of the video is saved out to either the file path specified by [youtubedl].save_video_file or “/tmp/lastyoutubevideo”.

NOTE:  If you are compiling from scratch, you’ll need to switch to the src/youtubedl directory and do a separate make and make install there as it’s not currently int the configure script.  There’s also slim to no chance that this plugin will work in M$-Windows.

* Fixed major glitch discovered during all this that caused the video to freeze (audio kept playing) if one had a video playing and a url to a “live-flv”-based radio stream in the playlist and hovered their mouse over it (causing it’s metadata to be fetched).

* Added special metadata tag (that can be added to the custom tags file (user_tag_data) and that the youtubedl_metadatahelper.pl helper script also adds to youtubedl_tag_data called “NonSeekable”, which if set to 1 prevents display of the file-positioning slider.  This is helpful for certain streams, including youtube-dl videos that include a “length” (time) value but which are non-seekable.  (If the slider is visable in such a stream and the user attempts to adjust it (into the future) playback seizes up and Faudacious must be killed to abort).

* Fixed small glitch in the Lavadacious skin so that playlist window now expands properly.

Version 3.8-beta2:

* Added config-based file for user-added tag metadata and new config-file option:  [Audacious].user_tag_data. Specify TRUE to activate this feature,
FALSE or omit to keep old behavior.  This permits user to save “song info” for streams (urls) and other files who’s decoder does not permit saving tag metadata into the media file itself.  I added this to be able to assign readable titles to radio streams that otherwise just show the (useless) url in the title making it difficult to see which station I’m playing.

* Added the song info popup “balloon” that currently pops up over the playlist when the user has the existing option “show_filepopup_for_tuple” option set to TRUE to also pop up now for the currently-playing song when user hovers the mouse over the middle (equalizer / time part) of the main window (Winamp Skins interface) whenever the main window is “shaded” (rolled up into a thin line).  This now makes it possible to see what is playing without having to pop up the playlist (since nothing regarding the current song is otherwise displayed when the main window is shaded)!

* Massively improved video window-resizing, tweaked video-scaling smoothness to improve video quality back to SDL1 level (fixed small degradation in SDL2).  Added resizing feature to allow user to shrink video window below a user-specified size (default 149×149, user-configurable by the 2 new config file variables: [ffaudio].video_doreset_width and [ffaudio].video_doreset_height) and have it snap back to it’s originally-requested size.

* Fixed video-play to work in headless mode.

* Additional minor tweaks to improve video efficiency.

UPDATE (10/25):  Version 3.8-beta1 Released  Snapshotted latest Audacious v3.8 GIT as of 2016/10/13 and manually refactored and reapplied all Fauxdacious features and changes.

* Rewrote the ffmpeg plugin (ffaudio-core.cc) to use SDL2 for video and latest ffmpeg / avcodec API while remaining backward-compatable with prev. ffmpeg release (now compiles without warnings (these were all “depreciated” warnings).  This also eliminates muting issues on playback when using the SDL “Output” audio system and the nasty manual-editing of separate Makefile and extra.mk files for Linux and Windows. Also refactored and tweaked to slightly better optimize video performance and include all Audacious v3.8 improvements possible (excluding their new “SmartPtr” and “Scoped” structs) which I was not able to get fully working compatably with Fauxdacious video features.

* Added a [Close] button to the Equalizer window in the GTK interface.

* Merged in post-3.8 final commits:  97257b6 and (plugins) 43a6bf1.

UPDATE (5/27):  Version 3.74-beta1 Windows Quick-Installable Binary Released!  I built this Windows version and bundled it with the Inno Setup Wizard Installer to provide a quick, easy installation and setup with just a few mouse-clicks!  (Get it Here:  http://phoenixcomm.net/~jturner/Fauxdacious_install.zip)  I understand the Audacious Team is rumored to be creating an installable version of their Windows version for v3.8, but this is still in the rumor mill.  Why wait (and hope) when you can get it NOW with Fauxdacious (including most of their planned v3.8 features from their GIT)!  This closes Audacious-rejected feature#613.
UPDATE (5/18):  Version 3.73-beta2 Released.  Changed multi-instance feature to use unique config directories now (like the new Audacious multi-instance feature does) instead of just unique config files.  The default config directory remains “~/.config/audacious/” whereas new instances created with –new=instancename are now “~/.config/audacious_instancename/”.  The config file is now once again always “config” within the directory “~/.config/audacious_instancename/” instead of “instancename”.  The default instance name remains “audacious” so that Fauxdacious shouldn’t create a “~/.config/audacious_audacious/” directory, even if that instance name is specified. Also updated the manpages.
Commits merged:  60d1ce5, 2908e84 (taylored for our instance-names), 9dde289, 34d5a2d, 7abddc7, c75b543, 66767b6, 8e5122c, 1cf1a81, d74d231, e31774c, 577298c, 32dbd44, 02fb683, 3aaa228, f208db4, 6087afd, 1c8d8e0, 8f3fcc4, and 1c9c04c.
%d bloggers like this: