13

Metadata from various artists and music websites is a gigantic inconsistent mess and much harder to edit than filenames. To actually know which file is currently playing, I would like to see it in the "Title" column in VLC. But there seems to be no option for that.

One suggestion I found was to change settings→all→input/codec→section "advanced"→"Change title according to current media" to either "$F" or "$u" or to just empty the field, but none of those things change anything.
Another suggestion was to delete the contents of /usr/lib/vlc/lua/meta, that also changes nothing.

The best workaround I found so far was to enable the "URI" column, move it directly behind "Title" and make the "Title" column as narrow as possible (22 pixels). That way I still see "Titl" at the top, I get the full path (which can be quite long) instead of just the filename and it still shows the wrong title at the beginning of playback in fullscreen mode.

So how do I tell VLC to ignore metadata? Editing all the files that I might ever play in it is not an option, but pretty much everything else is, even editing the source code and compiling it myself.
I would also accept solutions that completely break all metadata handling, including MP3 preview pictures, because I don't want them anyway, but probably most other people who will find this question in the future would prefer a solution that only changes the displayed title.

1
  • Well, I ended up actually doing the "strip metadata from all files" method, at least for all future downloads that I make with youtube-dl. I'm using my own wrapper script around it for a long time already and recently I added something like this (but more complex) to the part of it that is responsible for music downloads: ffmpeg -i "$file" -map 0:a -map_metadata -1 -b:a 320k "${file%.*}.mp3" That converts to MP3, removes metadata and sets the bitrate to a constant 320k (which works around a VLC bug with variable bitrate and also prevents FFMPEG from using its default, low bitrate). Aug 26, 2021 at 16:08

6 Answers 6

1

I do not know how it will impact network streams.

But on local files and SMB the universal and 100% working solution is to delete file:

/usr/lib64/vlc/lua/meta/reader/filename.luac

I simply renamed it to:

/usr/lib64/vlc/lua/meta/reader/filename.luac.backup

UPDATE:
To skip ID3 tags parsing you need to delete another file. For that logic a different lib is responsible (and it is not compiled lua script):

/usr/lib64/vlc/plugins/meta_engine/libtaglib_plugin.so

VLC

5
  • Does not work for me. Aug 23, 2023 at 15:09
  • @fabian-röling It is for video files only, I think you pull ID3 tags and get names from there.
    – Maxim
    Aug 26, 2023 at 9:13
  • I simply do not consider it as audio player at all. I have installed AIMP x64 via Wine and I am happy (with skin 4X All-in-One) for audio.
    – Maxim
    Aug 26, 2023 at 9:14
  • The edit worked! Finally something! What else than ID3 tags was the first part of the answer for? Aug 26, 2023 at 22:05
  • As I mentioned it was for video files and other files which does not have ID3. VLC parses filenames and shows for example Artist - Title (depending on settings) using information extracted from filename by that LUA script.
    – Maxim
    Aug 27, 2023 at 13:38
5

For me, both $F and $U in Preferences>All>Input/Codecs>Advanced>Change title according to current media work fine.
$F shows the full file path,
$U - just filename.
After changing this setting, you have to restart VLC.

OS: Ubuntu Studio 22.04
VLC: 3.0.16 Vetinari

Update

Thanks to @foolo's comment, now I can correct information above:
$F - full file path
$U - publisher (shows the Publisher tag for supported files, or just filename if the tag is empty or the file type does not support this tag, such as videos, or device name for dvd/cd)
$u - url (for me it's just filename for local and smb: files, or device name for dvd/cd)
$p - "now playing" (acts such as $u for me)

The rest of options you can see at VLC Documentation - thanks again to @foolo.

4
  • I just tried it again, with a capital U and I just get a literal "%U" in e.g. the window title. Aug 5, 2022 at 15:36
  • After someone corrected me that I should use $U instead of %U…it still doesn't work. $F changes the window title and the notification to the full file path, but those already used the file name before. $U changes nothing. The "Title" column that I cannot remove and the text at the start of a video still use the metadata value. Aug 11, 2022 at 9:53
  • 1
    Where are these variable names specified? I found this: wiki.videolan.org/Documentation:Format_String but there it says "$U = publisher", and not filename. Yet, $U works fine for me:)
    – foolo
    Nov 28, 2022 at 10:26
  • Can confirm this does not solve the problem. This puts the title in the titlebar of VLC. It has absolutely nothing to do with the playlist problem. This playlist not showing filenames has been one of the big downsides to VLC for a while. I hate it b/c 95% of other medias just do this by default and VLC went out of it's way to prevent users from being able to do this. Why, VLC??? Apr 11, 2023 at 18:15
3

Just untick in Tools/Preferences/All/ Playlist untick "Automatically preparse items" save & exit / restart VLC and all titles will now be the filenames as found in folder.

Or you can wipe the metadata from all your videos with either MKV Optimizer 2 for mkv files and MP3tag for .mp4 files.

3
  • 4
    That seems to at least prevent the title from changing at first, but it still changes the title when the track is first played. Also, as I said in the question, "editing all the files that I might ever play in it is not an option". I also tried setting the "preparsing timeout" to 1, 0, -1 or -2, that doesn't prevent it either. Mar 26, 2020 at 10:18
  • 1
    Also, simply the (usually preinstalled) FFMPEG does this metadata removal as well: ffmpeg -i in.mp3 -vn -map_metadata -1 out.mp3 No unknown third party program needed. It also converts file types: ffmpeg -i in.mp4 out.mp3 Mar 26, 2020 at 10:41
  • I'd like to solve this issue since I have the same problem. Those were the best solutions that I could find. If I find how to permanently display filenames I'll post it.
    – Eli Kipnis
    Mar 26, 2020 at 11:12
1

It's not possible, VLC doesn't have any native option to show the file name "permanently" without urlencoded full path (uri) in the song list. It has been proposed multiple times to the developers but they haven't considered it one bit.

VLC is a very versatile player with a lot of compatibility but its user interface is horrible and unfriendly, the VLC development team has had a long history of being UI ignorant like the Libreoffice team, so That is very difficult for us to see these types of basic features over time.

0

Here's the only surefire way to show filenames instead of Metadata...It's to remove the metadata in question. In our case "Title"

Download mkvtoolnix.

Run this code in command prompt or bash in the folder where you files (Or folders of files) are located:

for /R %A IN (*.mkv) do ( "<PATH TO mkvpropedit>" -d title "%~A")

This will recursively remove metadata from all mvk files in all folders and subfolders in that directory. Then VLC will display the filename instead of the Title Metadata.

1
  • I've already commented in 2021 that I'm now doing this, except with FFMPEG. And no, there is also another way: editing VLC's code. Somehow… Feb 25, 2023 at 6:14
-1

just in case anyone still looking for an answer, I used this method in Windows 10, I haven't tried it on Linux yet. Tools > Preferences >All > Inputs/Codecs Scroll all the way down. "Change title according to current media" replace the $Z by $U save close it and restart the VLC it should solve the problem.

I hope this helps

1

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .