关于多媒体编解码器的概念(容器、格式、编解码器、复用器、解复用器) [英] Concept about Multimedia Codecs (Container,Format, Codec,Muxer,Demuxer)

查看:47
本文介绍了关于多媒体编解码器的概念(容器、格式、编解码器、复用器、解复用器)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

上周我研究了很多多媒体内容,现在在几个问题上搞砸了.这些与我在开发媒体播放器方面的工作有关.我下面的问题仅基于此.我也在寻找有关多媒体编解码器的电子书/资源?

I have gone thorugh lot of multimedia stuff last week and now messed up in few questions.These are related to my work on Developing a Media Player.My questions below are based on that only. I am also looking out for ebook/resource on Multimedia codecs?

我正在寻找以下信息?

  1. 容器、格式、编解码器、数据包有什么区别,框架?我相信它是 Container -> Audio(streams) + Video(流)

使用编解码器对流进行编码/解码流 -> 数据包数据包 -> 帧

Streams are encoded/decoded using the codecs Streams -> Packets Packets -> Frames

(2) 复用器、解复用器、编码器、解码器阶梯如何工作?在哪一边?

(2) How the muxer,demuxer,coder,decoder ladder works?On which side which lies?

(3) 当我们说一个新的编解码器时——这是什么意思?- 编码器/解码器或新的文件格式.AVI是编解码器或格式?我们使用的编解码器和文件格式有什么关系.

(3) When we say a new codec - What does that means? - Coder/decoder or a new file format.AVI is a codec or format?Is there any relation between the codec we are using and the file format.

(4)一种编解码器与另一种编解码器有何不同?播放码率、大小、质量、fps?

(4)In what sense does one codec differs from another codec? Playing bit rate,size,quality,fps?

(5) 如果我们正在开发新的编解码器,有什么不同?- 编码器和解码器的算法?

(5) If we are developing a new codec what has to be different?- The Algorithm for encoder and decoder?

(6) 蓝光和 DVD 翻录?它们是什么新格式?或新编解码器?

(6) Blu ray and DVD rip ? What are they new format?or new Codecs?

(7) 如果我想在我的媒体播放器中提供对上述编解码器的支持,我将如何集成各种编解码器?以一些库或直接源代码引用的形式?

(7) If I want to provide the support for the above Codecs in my media player how will I integrate the various Codecs?In the form of some libraries or direct source code reference?

(8)不同的多媒体框架(Gstremaer、ffmpeg、stagefright、OpenCore)在编解码方面有何不同.

(8)How does the different multimedia framework(Gstremaer,ffmpeg,stagefright, OpenCore) differs with respect to the codec.

以下是/是我经过的链接:

Following is/are the links i have gone through :

http://dranger.com/ffmpeg/tutorial01.html

推荐答案

这是一个免费的在线资源开始(完全披露:我运行该网站:-)):多媒体维基.此外,这是我很久以前写的一份文档,它可能对您的很多问题有所帮助:多媒体技术基础.我会在这里尝试回答您的问题.

Here's a free online resource to start with (full disclosure: I run the site :-) ): MultimediaWiki. Further, here is a document I wrote a long time ago which might help with a lot of your question: Multimedia Technology Basics. I'll try to answer your questions here.

1) 一种容器格式(如 AVI 或 QuickTime/MOV)通常保存(包含)各种流,通常至少有一个视频流和一个音频流.这些视频和音频流通常使用编解码器进行编码,编解码器是一种描述更有效的数据编码方法的算法.数据包和帧:有时,视频或音频数据的块被分解成由其编解码器规范定义的数据包或帧,但这往往归结为语义——数据包、帧、块,它们都只是片段.

1) A container format (like AVI or QuickTime/MOV) generally holds (contains) various streams, usually at least one video stream and one audio stream. These video and audio streams are usually encoded using a codec, which is an algorithm that describes a more efficient method for encoding data. Packets and frames: Sometimes, chunks of video or audio data is broken up into packets or frames as defined by their codec specifications, but this tends to get down to semantics-- packets, frames, chunks, they're all just pieces.

2) 创建多媒体文件时,使用编码器算法对视频和音频数据进行编码,然后使用复用器将流放在一起放入文件(容器)中.为播放文件,解复用器将流分离并将它们馈送到解码器以获取视频和音频数据.

2) When you create a multimedia file, you use a coder algorithms to encode the video and audio data, then you use a muxer to put the streams together into a file (container). To play the file, a demuxer takes apart the streams and feeds them into decoders to obtain the video and audio data.

3) Codec 表示编码器/解码器,是与容器格式分开的概念.许多容器格式可以容纳许多不同类型的格式(AVI 和 QuickTime/MOV 非常通用).其他格式仅限于一种或两种媒体类型.

3) Codec means coder/decoder, and is a separate concept from the container format. Many container formats can hold lots of different types of format (AVI and QuickTime/MOV are very general). Other formats are restricted to one or two media types.

4) 编解码器在许多因素上竞争,并且设计用于多种目的.一大区别是有损与无损.如果您需要保留所有原始信息,则选择无损格式,但不会获得最佳压缩效果.如果您有能力丢失一些数据,您可以选择一种有损格式,该格式会牺牲(希望人类无法察觉)信息以换取更大的压缩.一些编解码器针对不同类型的数据进行了优化,例如假设输入数据是人类说话的语音编解码器,或假设输入视频是相对静态的计算机桌面会话的屏幕视频编解码器.

4) Codecs compete on many factors and are designed for many purposes. One big difference is lossy vs. lossless. If you need to retain all the original information, you choose a lossless format, but you won't get the best compression. If you can afford to lose some data, you can choose a lossy format which will sacrifice (hopefully imperceptible, to humans) information in exchange for greater compression. Some codecs are optimized for different kinds of data, such as speech codecs which assume the input data is humans talking, or screen video codecs, which assume the input video is relatively static computer desktop sessions.

5) 创建新编解码器意味着需要新的编码器和解码器的新算法.

5) Creating a new codec would imply a new algorithm which would require a new encoder AND decoder.

6) 我认为这些可以算作容器.DVD 翻录很可能是一种称为 MPEG 节目流 (MPEG-PS) 的东西,它可能包含 MPEG-2 视频数据和几种不同的音频类型之一.

6) I think these would count as containers. A DVD rip is likely to be something called an MPEG program stream (MPEG-PS), which would likely contain MPEG-2 video data and one of a few different audio types.

7) 有很多库可以播放这些东西.首先,您需要考虑您的平台(Windows、Mac OS X、Linux、iOS、Android 等).每个都有相应的库和框架.

7) There are lots of libraries for playing this stuff. First and foremost, you need to consider your platform (Windows, Mac OS X, Linux, iOS, Android, etc.). There are appropriate libraries and frameworks on each.

8) 同样,其中许多框架和库可能会满足您的需求.这取决于您的平台和许可需求.

8) Again, many of those frameworks and libraries will probably serve your needs. It depends on your platform and licensing needs.

我希望这能给你一些工作.从我的句柄可以看出,我喜欢谈论这些东西.:-)

I hope this has given you something to work with. As you can see from my handle, I love talking about this stuff. :-)

这篇关于关于多媒体编解码器的概念(容器、格式、编解码器、复用器、解复用器)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆