A word processor like MS Word or LibreOffice Writer will probably refuse to open it, giving some error such as “unsupported file type.”
Depending on how much of a nerd you are, the plaintext editor your OS comes with may either also refuse to open it, or open it as if it were plaintext and you might see a few jumbles of letters and punctuation, or weird symbols if it interprets it as unicode. According to Vim, my mp3 copy of Glycerine by Bush is mostly @ symbols. I noticed that my Bash shell didn’t want to autocomplete “Vim glycerine.mp3” but when typed manually it did it with minimal fuss.
If you open it in a hex editor, you might be surprised to see the first few lines are readable, they likely contain metadata that media player software like VLC can understand, like the track name, artist, year of release and such. Scroll down further and you’ll start to see more gibberish where it’s trying to interpret the individual bytes that make up the audio as ASCII characters. Funnily enough hexedit gave me a different looking bunch of gibberish than Vim did.
Believe it or not, straight to jail
Open a text file in media player? Also straight to jail
I am assuming it inputs the byte stream of the file to the text parser and only glibberish comes out
The app will find the file incomprehensible and will tell you that the file is corrupted or in a format the app can’t understand.
An app that works with raw next (Windows’ Editor or notepad++ or any IDE) will try to parse the binary data as text and fail miserably, showing you lots of undecodable-unicode characters.
Example:
%.š/BûT¹Ò;lŠ^œ{åúvž’Û X“—دa%“9HúU”¿ú¦¥N̉ČԿ†«dd’º•©“ÜÈê*è9$mÕ lfN‹„‘ª$bÿû°@§ gÂqâ`tŒøn´dʶÌþB…o™ÜË7bMûö”]«ê|=®©w„Ïɳ²NdÅh˜Ñ#´¦ïÕ®ºAd`‹®«R²•]‡ÐÏEpäX 0PÛnE”Ø΋şçÒñD]îbwNðèB$¤“nnzráiqÖ›XåÄvØÉË\ø\¦P¼¶Xæ‰Â6…”ææ†?äÖåœ:m|?B3C+dW»f†`Ê$Lˆmìóz¯xK>‘)ƒÜÉTݨ@‘Š£Ð:¨õ¹|!„DQC#£öªJ¼×u›³ÕÒ©˜gV"!V«;áäi³EJ…3;zã[±0&ËsÖ_Ë·³‡ó8MaTô”ÖBïKßïùl4zHJE’N¢ìo™iÒg$½›—U.ºtÉW›SXGÓÐŒ§N¢–L¨YþïZOPNìÌÙŸN ŽŠióyÄ,QÍfÙ¬
Hey I recognise that part of the song!
But is sound reproducible this way?
Imagine you have a book that’s written in Korean. If you gave it to me and asked me to read it out loud, I wouldn’t be able to make sense out of it. If you gave it to a Korean person, however, they could read it perfectly fine.
The book itself hasn’t changed — just the person reading the book. And that person has a different set of skills (or instructions, if you will).
What do you even mean by that?
The text program obviously can’t process and play the audio, it will try to open the file as if it contains text.
But it’s not like opening the file destroys it. You can still just close the text program, and then open the file using a suitable media program instead.
Here’s the thing: Let’s say your text editor interprets the file as ASCII.
Several characters in the ASCII table aren’t printable. The first 32 characters in the table are control characters, so they don’t get displayed on screen as text you could copy and paste. So if you opened an audio file in a text editor as an ASCII file, copied the text, pasted it in another text field, then saved that file, any bytes that were between 0 and 32 decimal would be missing.
I know.
I didn’t claim you could do that.
I said you could close the file and open it using something else. Not save and then open it using something else.
@[email protected] is right. I’ll interpret your question as “can I send this to someone and they will be able to play it” –
then the answer is yes. You can take a binary file like mp4, pretend it’s text like I did above, and send it via chat or a lemmy post. The recipient will need to copy that text, enter it in, for instance, notepad++ and save the file on their disk. Renaming the file from the-text.txt to the-text.mp4 should be sufficient for any audio player to pick the file up and play it.Edit: doesn’t actually work
Not entirely true. There are bits in binary files that cannot be rendered correctly by text editors. In fact, if a text editor cannot read a bit, it might omit it or substitute it with a generic placeholder. Instead, what you would do is encode the file into a text format and the transmit it to somebody, who would then decode the text back into its original file format.
This is how email attachments and uploading/downloading files from the web work. Usually that text format is called base64. In email attachments, they go one step further and typically limit the encoded data to fixed length lines called chunks.
But yeah, sending raw binary data as text requires special formatting first. Opening it up in a text editor and copying and pasting is not enough.
I feel like you want to but binary data into text. You may be interested in base64, or base32 for easier human processing.
Example of short low bitrate Opus audio in base64:
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
Is that what you are looking for?
Ya, I’m just amazed at how audio is able to be digitally represented
For the second time in a few days I’m compelled to recommend a series on digital audio and CDs done by Alec on his youtube channel Technology Connections. He explains quite well how digital audio works.
This is not unique to just audio files. What you’re seeing is a readable representation of binary (or raw) data. This will happen if you open an image, zip, or other non-text files.
Fun Fact: Microsoft Office’s .docx file is actually a zip file containing mostly plain text files in the XML format (XML is a markup language similar to HTML, and is used for describing data). You could theoretically unarchive a .docx file and modify the texts files by hand, and then rearchive the files back to .docx. Just be sure to back the file up before doing so. 😉
Data essentially are 1’s and 0’s (zeros) that are arranged in such a way that a program can interpret the data to be used by the program.
You’ve already seen the format that audio files get saved in. They are meant for music players, and as long as the codecs (a way to encode and decode data into a specific format for storage and playback) are supported, your music player will have no problem reading the contents of the file. Text editors will do their best to display plain text, and because text has a limited range of characters it can render, a lot of the data of raw files cannot be displayed. This is why if you opened an audio file in a text editor, and edited it, the file would be ruined. Same for images, zips, and exes.
If you want to see your binary data as text, you should use a hex editor. A hex editor will render each bit of data in hexadecimal format (0 through 16, where 11 - 16 are shown as the letters A - F). Hex editors also then attempt to show the raw data as text too, so you get to see the data in a safe way. They also allow you to change the values of the data, but unless you know what you’re doing, you risk damaging the file and making it unreadable by its application.
You’ve hit on half the magic!
You’re talking about how the information is encoded, and the other side is how it can be decoded and turned back into analog sounds.
There’s quite a bit at play here, but it’s pretty well documented out in the world. You might want to read about audio encoding, or codecs
Its just so incredible to me that plaintext can actually represent a real piece of sound to be rendered and that can be rendered exactly the same by any device (speaker quality/processing power aside)
Try it and see. It won’t hurt anything.
my afternoon project recommendation is to open a jpg or bmp in audacity, cut the first bit off to save the header then apply random audio effects to the rest. you can create really cool trippy glitch art this way
Wouldnt removing the header mess with reading the file?
I think they’re saying snip the header off so you don’t affect it, then reapply at the end.
It’ll likely crash the editor, but if it doesn’t then you get cool Matrix code. That’s actually how we used to make Matrix backgrounds back in the day, open an image in a text editor, copy the code, transform it to vertical, change it to green, eureka!
But what is all that crap? Is that the literal machine code or something? Like what is it and in the eff does it actually goid-enough approximate its subject content?
Every single file on a computer is stored as zeros and ones, the difference between opening a file in VLC or in Notepad is how the program decode the data.
I actually have a very good analogy to explain the issue of decoding data, this happened to me in a shop.
I am a Swede, I consider myself being bilingual Swedish/English, I live and work in Sweden.
After work one day I decided that I wanted some Itallian food so I walked by Eatatly in Stockholm.
As I got to the cashier to pay, I thought I heard her speak Swedish, but as she started talking to me, I only heard gibberish, I could not understand her at all, it took me 2-3 sec to realize that she was speaking English, and when that clicked, I suddenly understood everything.
It was so weird, it was like my English comprehension was just turned off and needed to restart.
Now, this is bascially what happens when you try and open a music file in Notepad, only it can’t understand music at all and doesn’t have the option to give up unless it hits a hard limit.
So it uses what it knows to try and decode thw file, it takes the birnary data and decodes it as a text file, and since the music data does not corespond to proper text standards it will just do it’s best and give you a long document of incomprehensable characters.
There are some interesting ways to mess with files and different programs to find/do interesting stuff.
For instance, you can hide a zip file in a JPG file: https://www.howtogeek.com/119365/how-to-hide-zip-files-inside-a-picture-without-any-extra-software/
This would only really work in hiding small ammounts of data, and will not prevent detection by law enforcement.
.docx, .xlsx, .pptx and other new office documents are actually zip files, you can open the file in 7zip and examine the file that way.
This is interesting, but I haven’t found a real use for it.
Every file is made up of zeroes and ones, what’s different between the formats is how those zeroes and ones are interpreted. When you open a mp4 in a text editor what you see is the result of the text editor interpreting the data as if it were text. Since the data doesn’t actually represent text, the result is meaningless garbage.
All any file is is just numbers. Opening a file in a program is just interpreting those numbers. To over-simplify, in a plain text file, for example, the number 32 means “space character”, and the number 10 means “move down to a new line”. In an audio file, the numbers are going to have meaning related to volume and frequency of sound, at points in time.
MP4 is video.
Do you mean MP3?
MP4 can be audio too
Why yes, video containers typically support audio tracks.
And you could encode such files with only an audio track.
But why would you?
I dunno, ask Apple. I just said it can be done, not that I actively do so
It’s a video container. If apple is using it for audio only, that’s like using a pickup truck to transport two bags of groceries.
Of course it’s “possible”.
Better audio compression codec than the mp3 standard?
Video containers don’t determine codec. You can use any video codec as well as any audio codec. Which means the audio inside an mp4 can be mp3, or flac, or aac, or wav…
If you’re just storing audio, just use an audio file directly. Putting the same exact audio stream inside a video container just makes it slightly more difficult to play, because them you can’t use a lot of audio players to play the audio.