gpt4 book ai didi

audio - 关于多媒体编解码器的概念(容器、格式、编解码器、复用器、解复用器)

转载 作者:行者123 更新时间:2023-11-28 21:39:19 26 4
gpt4 key购买 nike

关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。












想改进这个问题?将问题更新为 on-topic对于堆栈溢出。

3年前关闭。




Improve this question




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

我正在寻找以下信息?

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

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

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

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

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

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

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

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

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

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

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

    最佳答案

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

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

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

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

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

    5)创建一个新的编解码器意味着一个新的算法,它需要一个新的编码器和解码器。

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

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

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

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

    关于audio - 关于多媒体编解码器的概念(容器、格式、编解码器、复用器、解复用器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9956755/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com