Say, there's A who have very old phone, released in 2007, and B who have smartphone released in 2019.
A: Can you send me that MP4 video in your smartphone
B: Sure.
A: Why it doesn't play in my phone? The phone says it supports MP4 video format but it can't play your video. Your video is bad and so do you.
So let's make this clear. First of all there are no such thing as "MP4 video format". Keep your questions for later. In the world of multimedia files such as video and audio, you have to know 3 things:
- Container file
- Audio codec
- Video codec
- MP4. Yes MP4 is a container, not a video format. Now you know!
- WebM.
- Matroska. Also known as MKV. The mother of container as it supports almost every codec in existence.
So what are kinds of video codecs?
- MPEG4, XviD/DivX family goes here. A very old codec.
- H264, most popular codecs since smartphone existed.
- H265, recent codec which provides smaller size and better quality.
- VP9, royalty-free codec by Google which compete with H264.
- AV1, royalty-free codec various vendors which compete with H265.
For scenario above, if B's video contains H265 codec, then A's phone won't able to play it, even if the video itself is inside MP4 container file. Now everything makes sense, right?
Then there's also audio codec. Watching silent video is not very fun right? Then here comes the audio codec. The definition is same as video codec above, but for audio instead. There's only one difference, most audio codecs can be extracted out of their container, being standalone file. That's not possible for video codec.
So, list of audio codec please? Okay.
- AAC. Its standalone file extension is .aac (actually MPEG ADTS). Can be placed inside MP4 container.
- Opus. Must be placed in Ogg or WebM container.
- Vorbis. Must be placed in Ogg container.
- FLAC. Its standalone file extension is .flac. Can be placed inside Ogg container.
- MP3. Its standalone file extension is .mp3. Can be placed inside MP4 container.
So the conclusion is, if the video file is in extension that you know, that doesn't guarantee your device can play it. Like, you feel your device is superior because it can decode AV1 in MP4 until FL Studio's ZGameEditor Visualizer lossless video export function writes PNG image inside MP4.
No comments:
Post a Comment