Audio Technology Study Notes

Source: Internet
Author: User
Audio Technology Study Notes* MP3 stands for MPEG audio layer-3. * CD stands for compact discs. * The unzipped digital audio signal is very large, and the dual-channel CD quality signal in one second requires a storage space of 1 to 4 MB. * Perceptual coding techniques * MP3 encoding technology is developed by Fraunhofer IIS in Germany and Thomson in France. Fraunhofer IIS: http://www.iis.fraunhofer.de Thomson: * lame is a fully functional MP3 encoder and is open source. * MP3 encoder flowchart figure joint stereo coding dual-channel audio signals may be very similar at the same time. This method uses this feature to reduce bitrate. It is generally used only when low bitrate is required and you do not want to discard the dual-channel.

Lame 3.97  IntroductionLame is an open-source MP3 decoding and encoding tool. It aims to provide educational resources for MP3 and promote its development. The project is released on sourceforge.net. Related information may be found at the following URL: http://www.sourceForge.net http://www.mp3dev.org/mp3 I downloaded the 3.97b2 ftp://lame.sourceforge.net/pub/lame/src/lame-3.97.tar.bz2 MP3 Encoding* To encode MP3 files, use lame api1. [Optional]If you are interested in the lame version, use get_lame_version () to obtain it. 2. [Optional]Set the lame output functions errorf (), debugf (), and msgf (). 3. [Required]Lame_global_flags * lame_init () initializes the encoder. The initial setting of the encoder outputs MP3 files of the [J-stereo, 44.1 kHz, 128 Kbps, CBR, quality 5] specifications. Adjust parameters using some set/get methods to control the quality and size of the MP3 files in vegetables. 4. [Required]Lame_init_params () initializes the internal settings of the encoder based on the existing settings of the encoder. The Return Value of the function indicates the execution result. 5. [Required]Use lame_encode_buffer () to encode the input PCM data into MP3 data. 6. [Required]Use lame_encode_flush () to output MP3 data in mp3buffer. 7. [Required]Use lame_mp3_tags_fid () to encapsulate VBR/INFO tags into an MP3 frame and write it to the beginning of the file. If the output stream cannot be traced back, you must set lame_set_bwritevbrtag (Green, 0) in step 1. Call lame_mp3_tags_fid (lame_global_flags *, file * FID) to set the FID parameter to null. In this case, all the bytes of the Information Frame (MP3 frame) Starting with that are 0. 8. [Required]Release the space used by all internal parameters. Lame_close (). Source code analysisThe structure lame_global_struct is defined in./libmp 3lame/lame_global_flags.h, that is Lame_global_flags: Typedef struct lame_global_struct lame_global_flags;

The lame. h file is in the./include/directory.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.