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
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.
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.
It’ll “work”. A motivated and forgiving text editor will take the binary data and show it to you in the form of text, but this text will look like someone threw a hand grenade into a unicode cosplay convention.
Binary to text is possible in theory, but as everyone who has accidentally sent the output of a binary file to the terminal can tell you, it rarely works very well.
If you really want to “read” the file as text, it’s best to run it through a base64 decoder, so that the output will be limited to characters that are actually readable. The resulting text can then be encoded again and sent to a new file, and you will have a reproducible text string that represents your original file.
Try it and see. It won’t hurt anything.
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”.
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<cm-‰Çˆmð3¡|ñ°k§û–ÿîo<©ªxgTZ¯óT†"x¦1Q®ÔÚóI# 3édgþ™>´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).
@MentalEdge@sopuli.xyz 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
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.