Linux audio: Difference between revisions
Jump to navigation
Jump to search
Line 103: | Line 103: | ||
:On '''Android''', the standard is {{file|albumart.jpg}}. |
:On '''Android''', the standard is {{file|albumart.jpg}}. |
||
=== GUI |
=== Editors (GUI-based) === |
||
''mp3 tag editor'', ''idv3 tags''... |
''mp3 tag editor'', ''idv3 tags''... |
||
;Banshee |
;Banshee |
||
⚫ | :Banshee first takes the cover art locally from file ({{file|folder.jpg}}, {{file|cover.jpg}}...). Otherwise it will download automatically cover arts for music in the library. These cover arts are stored in {{file|~/.cache/media-art}}. Cover art filename is a hash of ''artist'' and ''album name'' (See this link for a more powerful script [http://askubuntu.com/questions/65323/bulk-export-embed-album-art-in-banshee]): |
||
Banshee downloads automatically cover arts for music in the library. |
|||
⚫ | |||
f="Ennio Morricone" |
f="Ennio Morricone" |
||
al="My Name Is Nobody" |
al="My Name Is Nobody" |
||
Line 123: | Line 122: | ||
* Used under Windows. |
* Used under Windows. |
||
=== CLI |
=== Editors (CLI-based) === |
||
⚫ | |||
: Has auto-tagging facility (MusicBrainZ support) and can fetch and embed album arts automatically from itunes, amazon, google... |
|||
;eyeD3 |
;eyeD3 |
||
: |
:A simple tag editor, very complete (including cover art edition). |
||
<source lang=bash> |
<source lang=bash> |
||
eyeD3 myfile.mp3 |
eyeD3 myfile.mp3 |
||
Line 139: | Line 140: | ||
:Only id3 v1 it seems |
:Only id3 v1 it seems |
||
;[http://www.tldp.org/HOWTO/MP3-HOWTO-13.html id3ed] (no package on ubuntu) |
;[http://www.tldp.org/HOWTO/MP3-HOWTO-13.html id3ed] (no package on ubuntu) |
||
=== Auto-tagger and cover art downloader === |
|||
⚫ | |||
: Can interface with itunes, amazon, google... |
|||
;Banshee |
|||
: Automatically fetch album arts when these are missing; otherwise Banshee uses the locally given one ({{file|folder.jpg}}, {{file|cover.jpg}}...) or can be set manually. |
|||
: No obvious way to export the art however... |
|||
; [https://launchpad.net/coverlovin CoverLovin] — obsolete |
; [https://launchpad.net/coverlovin CoverLovin] — obsolete |
||
:To download cover art automatically. Broken. |
|||
;[http://www.unrealvoodoo.org/projects/albumart Album Cover Art Downloader] — obsolete |
;[http://www.unrealvoodoo.org/projects/albumart Album Cover Art Downloader] — obsolete |
||
Can save into a {{file|folder.jpg}} file, {{file|.folder.png}} and an <code>Icon</code> entry in {{file|.directory}} for Konqueror, into an ID3v3 APIC frame... |
:Can save into a {{file|folder.jpg}} file, {{file|.folder.png}} and an <code>Icon</code> entry in {{file|.directory}} for Konqueror, into an ID3v3 APIC frame... |
||
:Broken. |
|||
== Web Radio == |
== Web Radio == |
Revision as of 23:20, 5 December 2015
Audio Conversion using Virtual FS
Example:
mp3fs -b 224 ~/Music /mnt/mp3 -o allow_other,ro
GUI Audio Conversion
Nautilus Audio Converter
- Install with
sudo apt-get install wavpack mppenc libmpcdec3 faac flac vorbis-tools faad lame libid3-3.8.3-dev nautilus-script-audio-convert
- libid3-3.8.3-dev needed for id3tag.
- See Ubuntu Geek - Simplest way to convert audio file(s) on Ubuntu Linux
Gnome Sound Converter
Very nice utility.
- Can convert to flac, ogg, mp3.
- Output to given directory, in {artis - album} format
- mp3, support lame vbr (but apparently --vbr-old only) — done via GStreamer pipeline.
CLI Audio Conversion
flac - FLAC encoder / decoder
flac -d source.flac
flac -d source.flac -o output.wav
flac -d source.flac -c # Write output to stdout
lame - MP3 encoder / decoder
See also Technical information on encoding settings.
lame -m auto --preset standard input.wav output.mp3 # Equiv to fast standard
lame -m auto --preset fast standard input.wav output.mp3 # Equiv to -V2 (~192kbps)
lame -m auto --preset extreme input.wav output.mp3 # Equiv to fast extreme
lame -m auto --preset fast extreme input.wav output.mp3 # Equiv to -V0 (~256kbps)
lame -m auto --preset insane input.wav output.mp3 # Equiv to -b 320
twolame - MP2 encoder / decoder
twolame -b 256 input.wav -o "output.mp3"
pacpl - Multi-format encoder / decoder in Perl
# From FLAC to MP3 - Using LAME (extreme quality) - recurse & keep directory structure
pacpl --to mp3 -r -p flac/ --outdir /media/USB --encoder lame --defopts 0 --eopts="-m auto --preset fast extreme"
# To decrease encoding priority:
nice -n 19 pacpl ...
To change the directory structure from "Artist - Album" to "Artist/Album":
for i in *; do eval $(echo $i | sed -r '/ - /!s/(.*)/ARTIST=Various;ALBUM="\1"/; / - /s/(.*) - (.*)/ARTIST="\1"; ALBUM="\2"/'); mkdir "$ARTIST"; mv "$i" "$ARTIST/$ALBUM"; done
yaflac2mp3 - Yet Another FLAC to MP3 script
An handy script to transcode from FLAC to MP3. Could be used as a basis for customized script. See also [1] for more ideas.
yaflac2mp3.sh -s . -d mp3
Conversion in integrated players
Banshee
- Plug external mp3 player device
- Right click on device in Banshee
- Select the media type (ogg, mp3), then click on edit button.
- For mp3, quality goes from 0 (worst) to 9 (best). 7 seems equivalent to
lame -V 2
, i.e. fast standard preset, and 9 seems equivalent tolame -V 0
, ie. fast extreme preset
- For mp3, quality goes from 0 (worst) to 9 (best). 7 seems equivalent to
- BUG? — apparently can't save to .ogg although ogg is selected as encoder... — SOLVED see below.
- BUG? — export all files in device root directory — SOLVED see below.
- Create a file named ..is_audio_player in device root directory. For instance, to have audio files added in OGG format to the device, using a 1-folder deep structure (ie. Artist - Album/Track. Title), use the following:
name=SAMSUNG\ YP-U1\ (1GB)
folder_depth=1
output_formats=application/ogg,audio/mpeg,audio/mp3
To have files stored elsewhere than in root folder:
name=SAMSUNG\ CARD\ (8GB)
audio_folders=musics/,other/subfolder
folder_depth=2
output_formats=application/ogg,audio/mpeg,audio/mp3
RhythmBox
- Can also export to external mp3 player
- BUG? — Apparently only in mp3 (although there are some settings about preferred format in preferences)
- Quality seems to be
lame --preset fast standard
- Export in /Artist/Album/Track - Title.mp3
Cover Art and ID3 Tags
Conventions and standards
- Cover art filename
- Usual names are folder.jpg (apparently the standard on Windows) and cover.jpg. Other options are front.jpg, %filename%.jpg or%album%.jpg.
- Banshee supports at least folder.jpg and cover.jpg.
- On Android, the standard is albumart.jpg.
Editors (GUI-based)
mp3 tag editor, idv3 tags...
- Banshee
- Banshee first takes the cover art locally from file (folder.jpg, cover.jpg...). Otherwise it will download automatically cover arts for music in the library. These cover arts are stored in ~/.cache/media-art. Cover art filename is a hash of artist and album name (See this link for a more powerful script [6]):
f="Ennio Morricone" al="My Name Is Nobody" echo "~/.cache/media-art/album-$(echo -ne "$f\t$al" | md5sum | cut -b1-32).jpg"
- You can edit metadata (ID3 tags) in Banshee, but click Write metadata to files to save back to library.
- Easytags aac
- Edit ID3 tag, including cover arts (with automatically download)
- Puddletag
- A bit buggy sometimes
- folder.jpg
- Used under Windows.
Editors (CLI-based)
- Beets with fetchart plugins
- Has auto-tagging facility (MusicBrainZ support) and can fetch and embed album arts automatically from itunes, amazon, google...
- eyeD3
- A simple tag editor, very complete (including cover art edition).
eyeD3 myfile.mp3
eyeD3 --list-image-types # View available image type (APIC frame)
eyeD3 --add-image=folder.jpg:FRONT_COVER:folder.jpg myfile.mp3
- id3v2
- Does not report cover arts.
- CoverLovin — obsolete
- To download cover art automatically. Broken.
- Album Cover Art Downloader — obsolete
- Can save into a folder.jpg file, .folder.png and an
Icon
entry in .directory for Konqueror, into an ID3v3 APIC frame... - Broken.
Web Radio
Several ways to play internet radios in Linux (sources [7]).
Let's consider the following radios:
- Chromanova.fm Chillout (homepage) - playlist (.pls) content:
[playlist] numberofentries=5 File1=http://85.25.86.69:8100 Title1=(#1 - 25/160) Chromanova.fm presents: Ambient & Chillout Deejay Sets Length1=-1 File2=http://212.112.241.88:8100 Title2=(#2 - 25/120) Chromanova.fm presents: Ambient & Chillout Deejay Sets Length1=-1 File3=http://85.25.86.69:9000 Title3=(#3 - 159/160) Chromanova.fm presents: Ambient & Chillout Deejay Sets Length1=-1
Here we list the various way to play the radios listed above.
- Mplayer
- Mplayer can play most streams. Give it the *stream* URL, not the playlist. Use -cache 1000 to cache audio stream. Works also fine with proxies.
mplayer -cache 1000 http://85.25.86.69:8100
- mpg123
- mpg123 can also play most radio stream. Works also fine with proxies.
mpg123 -cache 1000 http://85.25.86.69:8100
- audacious
- TBC
- streamtuner2
- TBC
streamtuner2 -r # Then tell audacious to open http://localhost:8000
- streamripper
- Use streamripper to rip an audio stream into a file. It can also relay the stripped stream to a local port to be played and ripped simultaneously
streamripper server:port -D "%S/%q -- %A - %T" # Rip to file (w/ naming convention)
streamripper server:port -D "%S/%q -- %A - %T" -r # Rip and relay to port 8000
mpg123 http://localhost:8000 # ... and play it
- banshee
- NOT WORKING — can't make it work, at least behind a proxy. Giving either .pls, or stream URL, nothing works (w/o error msg)
- rhythmbox
- NOT WORKING — can't make it work, at least behind a proxy. Giving either .pls, or stream URL, nothing works (w/o error msg)
- amarok
- STATE UNKNOWN — Used to work in the past, but need some weird configuration for the proxy.