ffmpeg 디코딩 예제

ffmpeg의 시간은 특수 단위로 유지되며 BaseTime이라는 이름이 붙습니다. 시간을 초로 변환하려면 시간 값을 BaseTime에 곱해야 합니다. 각 스트림에는 자체 BaseTime이 있습니다. 예를 들어 MP3 파일이 있고 OGG 파일로 변환하려는 경우: 이 플래그를 사용하면 각 스트림에 사용할 다른 코덱을 설정할 수 있습니다. 예를 들어 오디오 스트림을 Vorbis로 설정하려면 다음 명령을 사용합니다 http://dranger.com/ffmpeg/. 자세한 내용은 FFmpeg 사용에 대해 설명합니다. 멀티미디어 소프트웨어를 만들 때 비디오 파일을 디코딩해야 합니다. 예를 들어, 멀티미디어 플레이어를 만들거나 게임에서 비디오를 보여줘야 하므로 솔루션은 플랫폼 간이어야 합니다. 이 작업을 해결하기 위해 당신은 그 목적에 이상적인 FFmpeg를 사용할 수 있습니다. FFMpeg와 인코딩에 대해 당신은 ffmpeg와 파일을 인코딩이 문서에서 읽을 수 있습니다.

이 기사에서는 FFmpeg 프로젝트의 작은 조각 인 명령줄 도구 ffmpeg를 통해 FFmpeg를 사용하겠습니다. 그것은 많은 다른 운영 체제에서 사용할 수 있으며 기본적으로 일부 운영 체제에 포함되어 있습니다. 그것은 FFmpeg 웹 사이트 또는 대부분의 패키지 관리자를 통해 다운로드 할 수 있습니다. 비디오 파일은 서로 다른 형식일 수 있습니다(예: avi, wmv 및 ogg). 형식은 비유적으로 말하면 파일의 구조를 결정하는 컨테이너입니다. 비디오 파일 구조는 다음과 같습니다: 디코딩이 성공한 경우 got_picture_ptr은 0보다 작아야 하며 함수는 값 0(디코딩된 바이트 수)을 반환합니다. 반환된 값이 0보다 작지만 got_picture_ptr이 0이면 오류가 아니지만 ffmpeg는 프레임을 디코딩할 수 없습니다. 내가 최근에 ffmpeg에 대해 발견 한 흥미로운 것은 … 명령 ffmpeg -코덱은 FFmpeg에 대해 알고있는 모든 코덱을 인쇄합니다.

이 명령의 출력은 설치한 FFmpeg 버전에 따라 변경됩니다. 이상하게도 flac(1)을 사용하여 96/24 .wav를 .flac로 변환한 다음 ffmpeg를 다시 .flac을 .wav로 변환하여 샘플 크기를 16 비트로 잘립니다… 매우 높은 수준의 보기에서 미디어 파일은 컨테이너와 스트림으로 나뉩니다. 스트림에는 영화의 오디오 또는 비디오와 같은 실제 AV 구성 요소가 포함되며 특정 미디어 인코딩 또는 코덱을 사용하여 인코딩됩니다. 각 코덱에는 고유한 속성, 강점 및 약점이 있습니다. 예를 들어, FLAC 코덱은 고품질 무손실 오디오에 적합한 반면 Vorbis는 파일 크기의 MP3와 경쟁하면서 더 나은 오디오 품질을 제공하도록 설계되었습니다. 즉, FLAC 형식의 파일은 Vorbis 오디오 스트림보다 훨씬 크지만 더 잘 들립니다. 서로 다른 일을 하려고 하기 때문에 둘 다 본질적으로 다른 것보다 낫지 않습니다.

FFmpeg는 ffmpeg2theora, VLC, MPlayer, 핸드 브레이크, 블렌더, 구글 크롬 등 2에서 사용됩니다. 이 기사의 저자가 선택한 두 번째 방법은 http://ffmpeg.zeranoe.com/ 바이너리를 다운로드하는 것입니다. 이 문서에서우리는 avcodec, avdevice, avformat, avutil, avutil 및 swscale로 FFmpeg의 이러한 구성 요소를 사용합니다. Lib 파일 및 H-파일 개발 버전에서 찾을 수 있습니다 및 dll 공유 버전에서 찾을 수 있습니다. ffmpeg를 사용하여 비디오 파일을 디코딩하는 방법을 예로 들 수 있습니다. FFMpeg와 디코딩에 대한 문서에 대한 링크. 러시아어 기사. 예를 들어 비디오의 비트 레이트(bitrate)를 변경하려면 다음과 같이 사용합니다: 디지털 사운드는 불연속화 지점에 저장됩니다.

우리는 스트림 구조에서 오디오 포맷에 대한 정보를 얻을 수 있습니다. 예: AV_SAMPLE_FMT_FLTP 형식의 경우 각 샘플은 -1.0에서 1.0까지 부동이고 각 스트림(왼쪽 또는 오른쪽)은 서로 다른 평면에 있습니다. 각 평면에 대한 포인터는 audioFrame->extendeddata[i]에 보유합니다. 이 예제에서는 AV_SAMPLE_FMT_FLTP를 AV_SAMPLE_FMT_S16으로 변환하는 코드를 찾을 수 있습니다. FFmpeg는 멀티미디어 데이터를 처리하기 위한 라이브러리 및 프로그램을 생성하는 무료 플랫폼 간 소프트웨어 프로젝트입니다. 그것은 GPL и LGPL에 의해 허가됩니다. 따라서, 당신은 comercial 프로젝트에서 ffmpeg를 사용할 수 있습니다. Windows용 projet FFmpeg : 이전 예제는 오디오 및 비디오 스트림 모두에 적용 할 수 있으므로 추가 스트림 http://ffmpeg.zeranoe.com/ 인코딩을 수행 하지 않고도 한 컨테이너 형식에서 다른 컨테이너 형식으로 변환할 수 있습니다.

Komentáře nejsou povoleny.