์ด๊ฒ์ Ubuntu Online, Fedora Online, Windows ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ ๋๋ MAC OS ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ์ ๊ฐ์ ์ฌ๋ฌ ๋ฌด๋ฃ ์จ๋ผ์ธ ์ํฌ์คํ ์ด์ ์ค ํ๋๋ฅผ ์ฌ์ฉํ์ฌ OnWorks ๋ฌด๋ฃ ํธ์คํ ์ ๊ณต์ ์ฒด์์ ์คํํ ์ ์๋ ffmpeg-bitstream-filters ๋ช ๋ น์ ๋๋ค.
ํ๋ก๊ทธ๋จ:
์ด๋ฆ
ffmpeg-bitstream-filters - FFmpeg ๋นํธ์คํธ๋ฆผ ํํฐ
๊ธฐ์
์ด ๋ฌธ์๋ libavcodec ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ ๊ณตํ๋ ๋นํธ์คํธ๋ฆผ ํํฐ์ ๋ํด ์ค๋ช ํฉ๋๋ค.
๋นํธ์คํธ๋ฆผ ํํฐ๋ ์ธ์ฝ๋ฉ๋ ์คํธ๋ฆผ ๋ฐ์ดํฐ์ ๋ํด ์๋ํ๊ณ ๋นํธ์คํธ๋ฆผ ์์ค์ ์ํํฉ๋๋ค.
๋์ฝ๋ฉ์ ์ํํ์ง ์๊ณ ์์ ํฉ๋๋ค.
๋นํธ์คํธ๋ฆผ ํํฐ
FFmpeg ๋น๋๋ฅผ ๊ตฌ์ฑํ ๋ ์ง์๋๋ ๋ชจ๋ ๋นํธ์คํธ๋ฆผ ํํฐ๋ ๋ค์์ ์ํด ํ์ฑํ๋ฉ๋๋ค.
๊ธฐ๋ณธ. ๊ตฌ์ฑ ์ต์ "--list-bsfs"๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ํญ๋ชฉ์ ๋์ดํ ์ ์์ต๋๋ค.
๊ตฌ์ฑ ์ต์ "--disable-bsfs"๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ ๋นํธ์คํธ๋ฆผ ํํฐ๋ฅผ ๋นํ์ฑํํ ์ ์์ต๋๋ค.
"--enable-bsf=BSF" ์ต์ ์ ์ฌ์ฉํ์ฌ ๋นํธ์คํธ๋ฆผ ํํฐ๋ฅผ ์ ํ์ ์ผ๋ก ํ์ฑํํ๊ฑฐ๋ ๋ค์์ ์ํํ ์ ์์ต๋๋ค.
"--disable-bsf=BSF" ์ต์ ์ ์ฌ์ฉํ์ฌ ํน์ ๋นํธ์คํธ๋ฆผ ํํฐ๋ฅผ ๋นํ์ฑํํฉ๋๋ค.
ff* ๋๊ตฌ์ "-bsfs" ์ต์ ์ ์ง์๋๋ ๋ชจ๋ ๋นํธ์คํธ๋ฆผ ๋ชฉ๋ก์ ํ์ํฉ๋๋ค.
๋น๋์ ํฌํจ๋ ํํฐ.
ff* ๋๊ตฌ์๋ ์คํธ๋ฆผ๋น -bsf ์ต์ ์ด ์ ์ฉ๋์ด ์ผํ๋ก ๊ตฌ๋ถ๋ ๋ชฉ๋ก์ ์ฌ์ฉํฉ๋๋ค.
๋งค๊ฐ๋ณ์๊ฐ '=' ๋ค์ ํํฐ ์ด๋ฆ ๋ค์ ์ค๋ ํํฐ.
ffmpeg -i ์ ๋ ฅ -c:v ๋ณต์ฌ -bsf:v filter1[=opt1=str1/opt2=str2][,filter2] ์ถ๋ ฅ
๋ค์์ ํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ๋นํธ์คํธ๋ฆผ ํํฐ์ ๋ํ ์ค๋ช ์ ๋๋ค.
๋งค๊ฐ๋ณ์(์๋ ๊ฒฝ์ฐ).
aac_adtstoasc
MPEG-2/4 AAC ADTS๋ฅผ MPEG-4 ์ค๋์ค ํน์ ๊ตฌ์ฑ ๋นํธ์คํธ๋ฆผ ํํฐ๋ก ๋ณํํฉ๋๋ค.
์ด ํํฐ๋ MPEG-4/2 ADTS ํค๋์์ MPEG-4 AudioSpecificConfig๋ฅผ ์์ฑํ๊ณ ์ ๊ฑฐํฉ๋๋ค.
ADTS ํค๋.
์ด๋ ์๋ฅผ ๋ค์ด ์์ ADTS AAC ์ปจํ ์ด๋์์ AAC ์คํธ๋ฆผ์
FLV ๋๋ MOV/MP4 ํ์ผ.
์น๋ค
ํจํท ๋์์ ์ ๋ก ํจ๋ฉ์ ์ ๊ฑฐํฉ๋๋ค.
๋คํ_์ถ๊ฐ
ํํฐ๋ง๋ ํจํท์ ์์ ๋ถ๋ถ์ ์ถ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํฉ๋๋ค.
์ถ๊ฐ ์ธ์๋ ํํฐ๋งํด์ผ ํ๋ ํจํท์ ์ง์ ํฉ๋๋ค. ๊ทธ๊ฒ์ ๋ฐ์๋ค์ธ๋ค
๊ฐ :
a ๋ชจ๋ ํค ํจํท์ ์ถ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํ๋ ๋ค์ ๊ฒฝ์ฐ์๋ง local_header ์ ์ค์ ๋์ด ์์ต๋๋ค. ํ๋๊ทธ2 ์ฝ๋ฑ
์ปจํ ์คํธ ํ๋
k ๋ชจ๋ ํค ํจํท์ ์ถ๊ฐ ๋ฐ์ดํฐ ์ถ๊ฐ
e ๋ชจ๋ ํจํท์ ์ถ๊ฐ ๋ฐ์ดํฐ ์ถ๊ฐ
์ง์ ํ์ง ์์ผ๋ฉด ๋ค์์ผ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. k.
์๋ฅผ ๋ค์ด ๋ค์ ffmpeg ๋ช ๋ น์ ์ ์ญ ํค๋๋ฅผ ๊ฐ์ ์คํํฉ๋๋ค(๋ฐ๋ผ์ ๊ฐ๋ณ
ํจํท ํค๋) "libx264" ์ธ์ฝ๋์ ์ํด ์์ฑ๋ H.264 ํจํท์ ์์ง๋ง ์ด๋ฅผ ์์ ํฉ๋๋ค.
extradata์ ์ ์ฅ๋ ํค๋๋ฅผ ํค ํจํท์ ์ถ๊ฐํ์ฌ:
ffmpeg -i INPUT -map 0 -flags:v +global_header -c:v libx264 -bsf:v dump_extra out.ts
h264_mp4toannexb
๊ธธ์ด ์ ๋์ฌ ๋ชจ๋์์ ์์ ์ฝ๋ ์ ๋์ฌ ๋ชจ๋๋ก H.264 ๋นํธ์คํธ๋ฆผ์ ๋ณํํฉ๋๋ค.
ITU-T H.264 ์ฌ์์ ๋ถ๋ก B์ ์ ์๋จ).
์ด๊ฒ์ ์ผ๋ถ ์คํธ๋ฆฌ๋ฐ ํ์, ์ผ๋ฐ์ ์ผ๋ก MPEG-2 ์ ์ก ์คํธ๋ฆผ ํ์์ ํ์ํฉ๋๋ค.
("mpegt").
์๋ฅผ ๋ค์ด H.4 ์คํธ๋ฆผ์ ํฌํจํ๋ MP264 ํ์ผ์ ๋ค์์ ์ฌ์ฉํ์ฌ mpegts ํ์์ผ๋ก ๋ฆฌ๋จน์ฑํ๋ ค๋ฉด ffmpeg,
๋ค์ ๋ช ๋ น์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
ffmpeg -i INPUT.mp4 -์ฝ๋ฑ ๋ณต์ฌ -bsf:v h264_mp4toannexb OUTPUT.ts
imxdump
MOV์ ๋ง์ถ๊ณ Final Cut Pro ๋์ฝ๋์์ ์ฌ์ฉํ ์ ์๋๋ก ๋นํธ์คํธ๋ฆผ์ ์์ ํฉ๋๋ค. ์ด๊ฒ
ํํฐ๋ mpeg2video ์ฝ๋ฑ์๋ง ์ ์ฉ๋๋ฉฐ Final Cut Pro 7์๋ ํ์ํ์ง ์์ ์ ์์ต๋๋ค.
์ ์ ํ ์ต์ -ํ๊ทธ:v.
์๋ฅผ ๋ค์ด 30MB/์ด NTSC IMX๋ฅผ MOV๋ก ๋ฆฌ๋จน์ฑํ๋ ค๋ฉด ๋ค์์ ์ํํฉ๋๋ค.
ffmpeg -i input.mxf -c ๋ณต์ฌ -bsf:v imxdump -tag:v mx3n output.mov
mjpeg2jpeg
MJPEG/AVI1 ํจํท์ ์ ์ฒด JPEG/JFIF ํจํท์ผ๋ก ๋ณํํฉ๋๋ค.
MJPEG๋ ๊ฐ ๋น๋์ค ํ๋ ์์ด ๋ณธ์ง์ ์ผ๋ก JPEG ์ด๋ฏธ์ง์ธ ๋น๋์ค ์ฝ๋ฑ์ ๋๋ค. NS
๊ฐ๋ณ ํ๋ ์์ ์์ค ์์ด ์ถ์ถ๋ ์ ์์ต๋๋ค.
ffmpeg -i ../some_mjpeg.avi -c:v ๋ณต์ฌ ํ๋ ์_%d.jpg
๋ถํํ๋ ์ด๋ฌํ ์ฒญํฌ๋ DHT ์ธ๊ทธ๋จผํธ๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋ถ์์ ํ JPEG ์ด๋ฏธ์ง์ ๋๋ค.
๋์ฝ๋ฉ์ ํ์ํฉ๋๋ค. ์ธ์ฉ
<http://www.digitalpreservation.gov/formats/fdd/fdd000063.shtml>:
Avery Lee๋ 2001๋ rec.video.desktop ๋ด์ค ๊ทธ๋ฃน์์ "MJPEG ๋๋
์ต์ํ MJPG fourcc๊ฐ ์๋ AVI์ MJPEG๋ ๊ณ ์ ๋ JPEG๋ก ์ ํ๋ฉ๋๋ค.
*์๋ต* -- ํํ๋ง ํ ์ด๋ธ. JPEG๋ YCbCr ์์ ๊ณต๊ฐ์ด์ด์ผ ํ๊ณ 4:2:2์ฌ์ผ ํ๋ฉฐ
์ฐ์ ๋๋ ํ๋ก๊ทธ๋ ์๋ธ๊ฐ ์๋ ๊ธฐ๋ณธ Huffman ์ธ์ฝ๋ฉ์ ์ฌ์ฉํด์ผ ํฉ๋๋ค. . . . ๋น์ ์ ์ ๋ง๋ก ํ ์ ์์ต๋๋ค
MJPEG ํ๋ ์์ ์ถ์ถํ๊ณ ์ผ๋ฐ JPEG ๋์ฝ๋๋ก ๋์ฝ๋ฉํ์ง๋ง
DHT ์ธ๊ทธ๋จผํธ๋ฅผ ์์ ์ถ๊ฐํฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ๋์ฝ๋๊ฐ ์์ถ ํด์ ๋ฐฉ๋ฒ์ ์์ง ๋ชปํฉ๋๋ค.
์๋ฃ. ํ์ํ ์ ํํ ํ๋ OpenDML ์ฌ์์ ๋์ ์์ต๋๋ค."
์ด ๋นํธ์คํธ๋ฆผ ํํฐ๋ MJPEG ์คํธ๋ฆผ์์ ์ถ์ถ๋ ํ๋ ์์ ํค๋๋ฅผ ํจ์นํฉ๋๋ค.
(AVI1 ํค๋ ID๋ฅผ ์ ๋ฌํ๊ณ DHT ์ธ๊ทธ๋จผํธ๊ฐ ์์) ์ ๊ทํ๋ JPEG ์์ฑ
์ด๋ฏธ์ง.
ffmpeg -i mjpeg-movie.avi -c:v ๋ณต์ฌ -bsf:v mjpeg2jpeg ํ๋ ์_%d.jpg
exiftran -i -9 ํ๋ ์*.jpg
ffmpeg -i frame_%d.jpg -c:v ๋ณต์ฌ rotated.avi
mjpega_dump_header
movsub
mp3_header_decompress
mpeg4_unpack_bframes
DivX ์คํ์ผ๋ก ํฌ์ฅ๋ B-ํ๋ ์์ ํฌ์ฅ์ ํ๋๋ค.
DivX ์คํ์ผ์ ํจํน๋ B-ํ๋ ์์ ์ ํจํ MPEG-4๊ฐ ์๋๋ฉฐ ์์๋
Windows ํ์ ์์คํ ์ฉ ๋น๋์ค. ๊ทธ๋ค์ ๋ ๋ง์ ๊ณต๊ฐ์ ์ฌ์ฉํ๊ณ ์ฌ์ํ AV ๋๊ธฐํ ๋ฌธ์ ๋ฅผ ์ผ์ผํฌ ์ ์์ต๋๋ค.
๋์ฝ๋ฉํ ๋ ๋ง์ CPU ์ฑ๋ฅ(ํ๋ ์ด์ด์ ๋ณด์ํ ๋์ฝ๋ฉ๋ ํฝ์ฒ ํ๊ฐ ์๋ ๊ฒฝ์ฐ ์ ์ธ
ํจํท ์คํ์ผ๋น 2,0,2,0 ํ๋ ์) ํ์ค ์ปจํ ์ด๋์ ๋ณต์ฌํ๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค.
MPEG-4 ๋์ฝ๋๊ฐ ๋์ฝ๋ฉํ ์ ์๊ธฐ ๋๋ฌธ์ mp4 ๋๋ mpeg-ps/ts์ ๊ฐ์ต๋๋ค.
์ ํจํ MPEG-4๊ฐ ์๋๋๋ค.
์๋ฅผ ๋ค์ด DivX ์คํ์ผ์ ์์ถ B ํ๋ ์์ด ์๋ MPEG-4 ์คํธ๋ฆผ์ด ํฌํจ๋ AVI ํ์ผ์ ์์ ํ๋ ค๋ฉด
์ฌ์ฉ ffmpeg, ๋ค์ ๋ช ๋ น์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
ffmpeg -i INPUT.avi - ์ฝ๋ฑ ๋ณต์ฌ -bsf:v mpeg4_unpack_bframes OUTPUT.avi
์์
์ฉ๊ธฐ๋ฅผ ์์์ํค์ง ์๊ณ ํจํท์ ๋ด์ฉ๋ฌผ์ ์์์ํต๋๋ค. ํผ์ง ๋๋
์ค๋ฅ ๋ณต์๋ ฅ/์ํ ํ ์คํธ.
๋งค๊ฐ๋ณ์: ์ถ๋ ฅ ๋ฐ์ดํธ์ ๋น๋์ ๊ด๋ จ๋ ๊ฐ์ ๊ฐ์ง ์ซ์ ๋ฌธ์์ด
์์ ๋จ. ๋ฐ๋ผ์ 0 ์ดํ์ ๊ฐ์ ๊ธ์ง๋๋ฉฐ, ๋ฎ์์๋ก
๋น๋ฒํ ๋ฐ์ดํธ๋ ์์ ๋๋ฉฐ 1์ ๋ชจ๋ ๋ฐ์ดํธ๊ฐ ์์ ๋จ์ ์๋ฏธํฉ๋๋ค.
ffmpeg -i INPUT -c ๋ณต์ฌ -bsf ๋ ธ์ด์ฆ[=1] output.mkv
๋ชจ๋ ๋ฐ์ดํธ์ ์์ ์ฌํญ์ ์ ์ฉํฉ๋๋ค.
์ ๊ฑฐ_์ถ๊ฐ
onworks.net ์๋น์ค๋ฅผ ์ฌ์ฉํ์ฌ ์จ๋ผ์ธ์์ ffmpeg-bitstream-filters ์ฌ์ฉ