mp3 파일을 처리하려고 하면 sox에서 오류가 발생합니다.

mp3 파일을 처리하려고 하면 sox에서 오류가 발생합니다.

안녕하세요. 제가 사용한 거래는 다음과 같습니다.

$ yum install sox 

CentOS 6에 설치하세요. 그 후 나는 간단한 테스트를 수행했습니다.

$ sox test.mp3 test.amr

이것이 반환하는 것입니다:

$ sox formats: no handler for file extension `mp3'

를 섞어서 사용해야 하기 때문에 soxnot 을 사용하여 이 작업을 수행 해야 합니다 .lamelame

답변1

CentOS의 기본 빌드 에서는 코덱이 sox지원되지 않습니다 . mp3지원하는 목록은 다음과 같습니다.

$ sox
...
AUDIO FILE FORMATS: 8svx aif aifc aiff aiffc al amb au avr caf cdda cdr cvs cvsd
cvu dat dvms f32 f4 f64 f8 fap flac fssd gsm gsrt hcom htk ima ircam la lpc 
lpc10 lu mat mat4 mat5 maud nist ogg paf prc pvf raw s1 s16 s2 s24 s3 s32 s4 s8 
sb sd2 sds sf sl smp snd sndfile sndr sndt sou sox sph sw txw u1 u16 u2 u24 u3 
u32 u4 u8 ub ul uw vms voc vorbis vox w64 wav wavpcm wv wve xa xi
PLAYLIST FORMATS: m3u pls
AUDIO DEVICE DRIVERS: alsa ao oss ossdsp pulseaudio

소스 RPM을 다운로드 sox하고 라이브러리를 다시 컴파일 libmad하고 설치하여 이 기능에 대한 지원을 추가할 수 있습니다.lame-devel

이 튜토리얼이 도움이 될 것입니다. 제목은 다음과 같습니다.CentOS 5.X에 MP3를 지원하는 SOX 설치, CentOS 5.x용이지만 여전히 작동합니다. CentOS 6.x에서 sox컴파일을 지원하는 단계 도 이 게시물의 댓글에 나와 있습니다 .mp3

속도

댓글로 판단하면.

mad 또는 libid3tag(YMMV)가 없는 CentOS 6.4용 원스톱 솔루션:

### as root

$ yum install -y sox lame    
$ mkdir /usr/local/src/SoX
$ cd /usr/local/src/SoX
$ wget http://downloads.sourceforge.net/project/sox/sox/14.4.1/sox-14.4.1.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fsox%2Ffiles%2Fsox%2F14.4.1%2F&ts=1366019279&use_mirror=freefr
$ tar -xvzf sox-14.4.1.tar.gz
$ cd sox-14.4.1/
$ ./configure
$ make -s
$ make install
$ echo “include /usr/local/lib” >> /etc/ld.so.conf
$ /sbin/ldconfig

저장소 #1 - RPM 퓨전

설치하려면 lame추가 YUM Repo를 믹스에 추가해야 합니다. 포함된 저장소 lame는 다음과 같습니다.속도융합. 이 글을 쓰는 동안 RPM Fusion 저장소를 설치할 최신 버전의 RPM은 다음 위치에 있습니다.rpmfusion-nonfree-release-6-1.noarch. 설치하려면:

$ sudo rpm -ivh http://download1.rpmfusion.org/nonfree/el/updates/6/x86_64/rpmfusion-nonfree-release-6-1.noarch.rpm

노트:당신은RPM 서명 키, 구체적으로EL6용입니다..

저장소 #2 – EPEL

RPM Fusion 저장소를 설치하려면 다음이라는 또 다른 YUM 저장소가 필요합니다.EPEL - Enterprise Linux용 추가 패키지. RPM Fusion의 RPM을 설치하기 전에 이 RPM도 설치해야 합니다.

$ sudo rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

노트:이 저장소의 버전 번호는 수시로 변경되므로 최신 버전 번호를 확인하는 것이 좋습니다. 현재 이 글을 쓰는 시점의 최신 버전은 6.8입니다. 위의 패키지 이름 "epel-release-6-8.noarch.rpm"에서 이 숫자를 볼 수 있습니다.

인용하다

답변2

쉽게 해결될 수 있다

yum install sox soxr sox-plugins-freeworld -y

sox-plugins-freeworld에는 mp3 지원이 포함되어 있습니다.

답변3

코덱에 대한 지원을 추가해야 합니다 mp3. Ubuntu에서는 패키지에서 제공합니다.libsox-fmt-mp3

sudo apt show libsox-fmt-mp3

Package: libsox-fmt-mp3
Version: 14.4.2+git20190427-2+deb11u2ubuntu0.20.04.1
Priority: optional
Section: universe/sound
Source: sox
Origin: Ubuntu
Maintainer: Ubuntu Developers <[email protected]>
Original-Maintainer: Debian Multimedia Maintainers <[email protected]>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 80,9 kB
Depends: libc6 (>= 2.14), libid3tag0 (>= 0.15.1b), libmad0 (>= 0.15.1b-3), libmp3lame0 (>= 3.100), libsox3 (>= 14.4.2~), libtwolame0 (>= 0.3.10)
Homepage: https://sox.sourceforge.io/
Download-Size: 16,0 kB
APT-Manual-Installed: yes
APT-Sources: http://uy.archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages
Description: SoX MP2 and MP3 format library
 SoX is the swiss army knife of sound processing.
 .
 This package contains the SoX MP2 and MP3 format library.
 Read support by libmad. MP2 and MP3 write support by libtwolame and
 libmp3lame respectively.
 .
 libmad: https://www.underbit.com/products/mad/
 lame: https://lame.sourceforge.io

설치하려면:sudo apt install libsox-fmt-mp3

관련 정보