๋น„๋””์˜ค ๊ฐ•์˜: ์œ ๋‹‰์Šค ๋ฐฉ์‹

๋น„๋””์˜ค ๊ฐ•์˜: ์œ ๋‹‰์Šค ๋ฐฉ์‹
๊ฒฉ๋ฆฌ๋Š” ๋ฌด์–ธ๊ฐ€๋ฅผ ๋ฐฐ์šฐ๊ธฐ์— ์ข‹์€ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์•„์‹œ๋‹ค์‹œํ”ผ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๋ฌด์–ธ๊ฐ€๋ฅผ ๋ฐฐ์šฐ๋ ค๋ฉด ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๊ฐ€๋ฅด์ณ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ˆ˜๋ฐฑ๋งŒ ๋ช…์˜ ์ฒญ์ค‘์—๊ฒŒ ํ”„๋ ˆ์  ํ…Œ์ด์…˜์„ ์ œ๊ณตํ•˜๊ณ  ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ๋ช…์„ฑ์„ ์–ป๊ณ  ์‹ถ๋‹ค๋ฉด ์ด ๊ธฐ์‚ฌ๊ฐ€ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ํ”„๋ ˆ์  ํ…Œ์ด์…˜์—์„œ ๋น„๋””์˜ค๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๋‹จ๊ณ„๋ณ„ ์ง€์นจ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” PowerPoint์—์„œ "์˜ค๋””์˜ค ๋Œ“๊ธ€"์„ ๋…น์Œํ•˜๊ณ  ํ”„๋ ˆ์  ํ…Œ์ด์…˜์„ ๋น„๋””์˜ค๋กœ ๋‚ด๋ณด๋‚ด๋Š” ๊ณผ์ •์„ ์‚ฌ์†Œํ•œ ์ผ๋กœ ๋ฌด์‹œํ•˜๋ฉฐ ์ •๋ง ๋ฉ‹์ง„ ๋น„๋””์˜ค์— ํ•„์š”ํ•œ ๊ธฐ๋Šฅ์˜ XNUMX๋ถ„์˜ XNUMX๋„ ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋จผ์ € ์–ด๋–ค ํ”„๋ ˆ์ž„์ด ํ•„์š”ํ•œ์ง€ ๊ฒฐ์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

  1. ์Œ์„ฑ ํ•ด์„ค์ด ํฌํ•จ๋œ ์‹ค์ œ ์Šฌ๋ผ์ด๋“œ
  2. ์Šฌ๋ผ์ด๋“œ ๋ณ€๊ฒฝ
  3. ์ธ๊ธฐ ์˜ํ™”์˜ ์ธ์šฉ๋ฌธ
  4. ๊ฐ•์‚ฌ์˜ ์–ผ๊ตด๊ณผ ๊ทธ๊ฐ€ ๊ฐ€์žฅ ์ข‹์•„ํ•˜๋Š” ๊ณ ์–‘์ด๊ฐ€ ์žˆ๋Š” ์—ฌ๋Ÿฌ ํ”„๋ ˆ์ž„(์„ ํƒ ์‚ฌํ•ญ)

๋””๋ ‰ํ„ฐ๋ฆฌ ๊ตฌ์กฐ ๋งŒ๋“ค๊ธฐ

.
โ”œโ”€โ”€ clipart
โ”œโ”€โ”€ clips
โ”œโ”€โ”€ rec
โ”œโ”€โ”€ slide
โ””โ”€โ”€ sound

๋ชฉ๋ก ์ˆœ์„œ์— ๋”ฐ๋ฅธ ๋””๋ ‰ํ† ๋ฆฌ์˜ ๋ชฉ์ : ์ธ์šฉํ•  ์˜ํ™”(ํด๋ฆฝ ์•„ํŠธ), ํ–ฅํ›„ ๋น„๋””์˜ค ์กฐ๊ฐ(ํด๋ฆฝ), ์นด๋ฉ”๋ผ์˜ ๋น„๋””์˜ค(rec), ์‚ฌ์ง„ ํ˜•ํƒœ์˜ ์Šฌ๋ผ์ด๋“œ(์Šฌ๋ผ์ด๋“œ), ์‚ฌ์šด๋“œ (์†Œ๋ฆฌ).

์‚ฌ์ง„์œผ๋กœ ํ”„๋ ˆ์  ํ…Œ์ด์…˜ ๋งŒ๋“ค๊ธฐ

์‹ค์ œ ์ ๋ชฉ ํ˜„์ƒ์ด ์žˆ๋Š” Linux ์‚ฌ์šฉ์ž์˜ ๊ฒฝ์šฐ ๊ทธ๋ฆผ ํ˜•์‹์œผ๋กœ ํ”„๋ ˆ์  ํ…Œ์ด์…˜์„ ๋งŒ๋“œ๋Š” ๋ฐ ์•„๋ฌด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ PDF ํ˜•์‹์˜ ๋ฌธ์„œ๋ฅผ ์ด๋ฏธ์ง€๋กœ ๊ตฌ๋ฌธ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์„ ์ƒ๊ธฐ์‹œ์ผœ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

pdftocairo -png -r 128 ../lecture.pdf

ํ•ด๋‹น ๋ช…๋ น์ด ์—†์œผ๋ฉด ํŒจํ‚ค์ง€๋ฅผ ์ง์ ‘ ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค. poppler-utils (Ubuntu์— ๋Œ€ํ•œ ์ง€์นจ; Arch๊ฐ€ ์žˆ๋‹ค๋ฉด ๋‚˜ ์—†์ด ๋ฌด์—‡์„ ํ•ด์•ผํ• ์ง€ ์•„์ฃผ ์ž˜ ์•„์‹ค ๊ฒƒ์ž…๋‹ˆ๋‹ค.)

์—ฌ๊ธฐ์ €๊ธฐ์„œ ๋‚˜๋Š” ๋น„๋””์˜ค๊ฐ€ HD Ready ํ˜•์‹, ์ฆ‰ 1280x720์œผ๋กœ ์ค€๋น„๋˜์—ˆ๋‹ค๊ณ  ๋ฏฟ์Šต๋‹ˆ๋‹ค. ๊ฐ€๋กœ ํฌ๊ธฐ๊ฐ€ 10์ธ์น˜์ธ ํ”„๋ฆฌ์  ํ…Œ์ด์…˜์€ ์–ธ๋กœ๋“œ ์‹œ ์ •ํ™•ํžˆ ์ด ํฌ๊ธฐ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค(-r 128 ๋งค๊ฐœ๋ณ€์ˆ˜ ์ฐธ์กฐ).

ํ…์ŠคํŠธ ์ค€๋น„ํ•˜๊ธฐ

์ •๋ง ํ›Œ๋ฅญํ•œ ์ž๋ฃŒ๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๋ฉด ์—ฐ์„ค๋ฌธ์„ ๋จผ์ € ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ ๊ฐ•์˜ ๊ฒฝํ—˜์ด ๋งŽ์•„์„œ ์ค€๋น„ ์—†์ด๋„ ๋ณธ๋ฌธ์„ ๋งํ•  ์ˆ˜ ์žˆ๊ฒ ๋‹ค๋Š” ์ƒ๊ฐ๋„ ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ผ์ด๋ธŒ๋กœ ๊ณต์—ฐํ•˜๋Š” ๊ฒƒ๊ณผ ์˜์ƒ์„ ๋…นํ™”ํ•˜๋Š” ๊ฒƒ์€ ๋˜ ๋‹ค๋ฅธ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๊ฒŒ์œผ๋ฅด์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ํƒ€์ดํ•‘์— ์†Œ์š”๋œ ์‹œ๊ฐ„์€ ์—ฌ๋Ÿฌ ๋ฒˆ ๋ณด์ƒ์„ ๋ฐ›์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋น„๋””์˜ค ๊ฐ•์˜: ์œ ๋‹‰์Šค ๋ฐฉ์‹

๋‚ด ๋…น์Œ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ œ๋ชฉ์˜ ์ˆซ์ž๋Š” ์Šฌ๋ผ์ด๋“œ ๋ฒˆํ˜ธ์™€ ๋™์ผํ•˜๋ฉฐ ์ค‘๋‹จ๋œ ๋ถ€๋ถ„์€ ๋นจ๊ฐ„์ƒ‰์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ํŽธ์ง‘๊ธฐ๋Š” ์ค€๋น„์— ์ ํ•ฉํ•˜์ง€๋งŒ ๋ณธ๊ฒฉ์ ์ธ ์›Œ๋“œ ํ”„๋กœ์„ธ์„œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. OnlyOffice.

์Šฌ๋ผ์ด๋“œ์— ์Œ์„ฑ

๋ญ๋ผ๊ณ  ๋งํ•  ์ˆ˜ ์žˆ๋‚˜์š”? ๋งˆ์ดํฌ๋ฅผ ์ผœ๊ณ  ๊ธ€์„ ์จ๋ณด์„ธ์š” :)

๊ฒฝํ—˜์— ๋”ฐ๋ฅด๋ฉด ๊ฐ€์žฅ ์ €๋ ดํ•œ ์™ธ๋ถ€ ๋งˆ์ดํฌ๋ฅผ ์‚ฌ์šฉํ•ด๋„ ๋…น์Œ ํ’ˆ์งˆ์ด ๋…ธํŠธ๋ถ์— ๋‚ด์žฅ๋œ ๋งˆ์ดํฌ๋ณด๋‹ค ๋น„๊ตํ•  ์ˆ˜ ์—†์„ ์ •๋„๋กœ ๋›ฐ์–ด๋‚ฉ๋‹ˆ๋‹ค. ์ข‹์€ ์žฅ๋น„๋ฅผ ์›ํ•˜์‹ ๋‹ค๋ฉด ์ถ”์ฒœ๋“œ๋ ค์š” ์—ฌ๊ธฐ์ด ๊ธฐ์‚ฌ๊ฐ€์žˆ๋‹ค..

๋…น์Œ์„ ์œ„ํ•ด ๋‚ด๊ฐ€ ์‚ฌ์šฉํ•œ ์˜ค๋””์˜ค ๋ ˆ์ฝ”๋” โ€“ ์‚ฌ์šด๋“œ ๋…น์Œ์„ ์œ„ํ•œ ๋งค์šฐ ๊ฐ„๋‹จํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

sudo add-apt-repository ppa:audio-recorder/ppa
sudo apt-get update
sudo apt-get install audio-recorder

์ด ๋‹จ๊ณ„์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒƒ์€ ํŒŒ์ผ ์ด๋ฆ„์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ง€์ •ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฆ„์€ ์Šฌ๋ผ์ด๋“œ ๋ฒˆํ˜ธ์™€ ์กฐ๊ฐ ๋ฒˆํ˜ธ๋กœ ๊ตฌ์„ฑ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์กฐ๊ฐ์—๋Š” 1, 3, 5 ๋“ฑ ํ™€์ˆ˜ ๋ฒˆํ˜ธ๊ฐ€ ์ง€์ •๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ทธ๋ฆผ์— ํ…์ŠคํŠธ๊ฐ€ ํ‘œ์‹œ๋œ ์Šฌ๋ผ์ด๋“œ์˜ ๊ฒฝ์šฐ ๋‘ ๊ฐœ์˜ ํŒŒ์ผ์ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. 002-1.mp3 ะธ 002-3.mp3.

์กฐ์šฉํ•œ ๋ฐฉ์—์„œ ๋ชจ๋“  ๋น„๋””์˜ค๋ฅผ ํ•œ ๋ฒˆ์— ๋…นํ™”ํ–ˆ๋‹ค๋ฉด ๋” ์ด์ƒ ์ถ”๊ฐ€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๋‹จ๊ณ„๋กœ ๋…น์Œํ•œ ๊ฒฝ์šฐ ๋ณผ๋ฅจ ๋ ˆ๋ฒจ์„ ๊ท ๋“ฑํ™”ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

mp3gain -r *.mp3

์œ ํ‹ธ๋ฆฌํ‹ฐ mp3gain ์–ด๋–ค ์ด์œ ๋กœ ํ‘œ์ค€ ์ €์žฅ์†Œ์—๋Š” ์—†์ง€๋งŒ ์—ฌ๊ธฐ์—์„œ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

sudo add-apt-repository ppa:flexiondotorg/audio
sudo apt-get update
sudo apt-get install mp3gain

๊ฒฐ๊ตญ์—๋Š” ๋ฌด์Œ์œผ๋กœ ๋‹ค๋ฅธ ํŒŒ์ผ์„ ๋…น์Œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฌด์Œ ๋น„๋””์˜ค์—๋Š” ์‚ฌ์šด๋“œ ํŠธ๋ž™์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•œ ๋น„๋””์˜ค์—๋Š” ์‚ฌ์šด๋“œ ํŠธ๋ž™์ด ์žˆ๊ณ  ๋‹ค๋ฅธ ๋น„๋””์˜ค์—๋Š” ์‚ฌ์šด๋“œ ํŠธ๋ž™์ด ์—†์œผ๋ฉด ์ด๋Ÿฌํ•œ ๋น„๋””์˜ค๋ฅผ ์„œ๋กœ ์—ฐ๊ฒฐํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๋ฌด์Œ์€ ๋งˆ์ดํฌ์—์„œ ๋…น์Œํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํŽธ์ง‘๊ธฐ์—์„œ ํŒŒ์ผ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค ๋Œ€๋‹ด. ํŒŒ์ผ ๊ธธ์ด๋Š” ์ตœ์†Œ XNUMX์ดˆ(๋” ๊ธธ์–ด๋„ ๊ฐ€๋Šฅ)์—ฌ์•ผ ํ•˜๋ฉฐ ์ด๋ฆ„์„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์นจ๋ฌต.mp3

์ค‘๋‹จ ๋™์˜์ƒ ์ค€๋น„ ์ค‘

์—ฌ๊ธฐ์„œ ๋ชจ๋“  ๊ฒƒ์€ ๋‹น์‹ ์˜ ์ƒ์ƒ๋ ฅ์— ์˜ํ•ด์„œ๋งŒ ์ œํ•œ๋ฉ๋‹ˆ๋‹ค. ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น„๋””์˜ค๋ฅผ ํŽธ์ง‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค Avidemux. ์˜›๋‚ ์—๋Š” ํ‘œ์ค€ ์ €์žฅ์†Œ์— ์žˆ์—ˆ์ง€๋งŒ ์–ด๋–ค ์ด์œ ๋กœ ์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์šฐ๋ฆฌ๋ฅผ ๋ง‰์„ ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค:

sudo add-apt-repository ppa:ubuntuhandbook1/avidemux
sudo apt-get update
sudo apt-get install avidemux2.7-qt5

์ธํ„ฐ๋„ท์—๋Š” ์ด ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๋งŽ์€ ์ง€์นจ์ด ์žˆ์œผ๋ฉฐ ์›์น™์ ์œผ๋กœ ๋ชจ๋“  ๊ฒƒ์ด ์ง๊ด€์ ์ž…๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ์กฐ๊ฑด์„ ์ถฉ์กฑํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

์ฒซ์งธ, ๋น„๋””์˜ค ํ•ด์ƒ๋„๋Š” ๋Œ€์ƒ ๋น„๋””์˜ค ํ•ด์ƒ๋„์™€ ์ผ์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ ค๋ฉด "์ถœ๋ ฅ ๋น„๋””์˜ค"์—์„œ ๋‘ ๊ฐœ์˜ ํ•„ํ„ฐ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. swsResize๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด์ƒ๋„๋ฅผ ๋ณ€๊ฒฝํ•˜๊ณ  "ํ•„๋“œ ์ถ”๊ฐ€"๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์†Œ๋ จ์˜ "์ข์€ ํ˜•์‹" ์˜ํ™”๋ฅผ ์™€์ด๋“œ ํ˜•์‹์œผ๋กœ ์ „ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ชจ๋“  ํ•„ํ„ฐ๋Š” ์„ ํƒ ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Sharikov ์”จ์˜ ๋ฐœ์–ธ์ด ๋…ผ์˜ ์ค‘์ธ ๋ถ€๋ถ„์— ์™œ ์žˆ๋Š”์ง€ ์ดํ•ดํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ "๋กœ๊ณ  ์ถ”๊ฐ€" ํ•„ํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด "Dog Heart" ์œ„์— PostgreSQL ๋กœ๊ณ ๋ฅผ ์˜ค๋ฒ„๋ ˆ์ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‘˜์งธ, ๋ชจ๋“  ์กฐ๊ฐ์€ ๋™์ผํ•œ ํ”„๋ ˆ์ž„ ์†๋„๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ดˆ๋‹น 25ํ”„๋ ˆ์ž„์„ ์‚ฌ์šฉํ•˜๋Š”๋ฐ, ๋‚ด ์นด๋ฉ”๋ผ์™€ ์˜› ์†Œ๋ จ ์˜ํ™”๊ฐ€ ๊ทธ ์ •๋„์˜ ํ”„๋ ˆ์ž„์„ ์ œ๊ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์ž˜๋ผ๋‚ด๋ ค๋Š” ๋™์˜์ƒ์ด ๋‹ค๋ฅธ ์†๋„๋กœ ์ดฌ์˜๋œ ๊ฒฝ์šฐ ๋น„๋””์˜ค ๋ฆฌ์ƒ˜ํ”Œ ํ•„ํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

์…‹์งธ, ๋ชจ๋“  ์กฐ๊ฐ์€ ๋™์ผํ•œ ์ฝ”๋ฑ์œผ๋กœ ์••์ถ•๋˜๊ณ  ๋™์ผํ•œ ์ปจํ…Œ์ด๋„ˆ์— ํŒจํ‚ค์ง•๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ Avidemux ํ˜•์‹์œผ๋กœ ๋น„๋””์˜ค๋ฅผ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค - "MPEG4 AVC(x264)", ์˜ค๋””์˜ค - "AAC (FAAC)", ์ถœ๋ ฅ ํ˜•์‹ - "MP4 ๋จน์Šค".

๋„ท์งธ, ์ปทํŒ…๋œ ์˜์ƒ์˜ ์ด๋ฆ„์„ ์ •ํ™•ํ•˜๊ฒŒ ์ง€์ •ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ํŒŒ์ผ ์ด๋ฆ„์€ ์Šฌ๋ผ์ด๋“œ ๋ฒˆํ˜ธ์™€ ์กฐ๊ฐ ๋ฒˆํ˜ธ๋กœ ๊ตฌ์„ฑ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์กฐ๊ฐ์€ 2๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์—ฌ ์ง์ˆ˜๋กœ ๋ฒˆํ˜ธ๊ฐ€ ์ง€์ •๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋…ผ์˜ ์ค‘์ธ ํ”„๋ ˆ์ž„์˜ ๊ฒฝ์šฐ ์ค‘๋‹จ์ด ์žˆ๋Š” ๋น„๋””์˜ค๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. 002-2.mp4

๋น„๋””์˜ค๊ฐ€ ์ค€๋น„๋˜๋ฉด ์กฐ๊ฐ์ด ์žˆ๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๋กœ ์ „์†กํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์„ค์ • ์—์ด ๋น„๋Ž€ ์„ค์ •๊ณผ ๋‹ค๋ฆ„ ffmpeg ๊ธฐ๋ณธ์ ์œผ๋กœ ์‹ ๋น„ํ•œ ๋งค๊ฐœ๋ณ€์ˆ˜ tbr, tbn, tbc๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์žฌ์ƒ์—๋Š” ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š์ง€๋งŒ ๋น„๋””์˜ค๋ฅผ ์„œ๋กœ ๋ถ™์ผ ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ ๋‹ค์‹œ ์ฝ”๋”ฉํ•ด๋ณด์ž:

for f in ???-?.mp4;
do
  ffmpeg -hide_banner -y -i "${f}" -c copy -r 25 -video_track_timescale 12800 ../clips/$f
done

์Šคํฌ๋ฆฐ์„ธ์ด๋ฒ„ ์ดฌ์˜

์—ฌ๊ธฐ์—์„œ๋„ ๋ชจ๋“  ๊ฒƒ์ด ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ์˜๋ฆฌํ•œ ๊ณ„ํš์„ ๋ฐฐ๊ฒฝ์œผ๋กœ ์ดฌ์˜ํ•˜๊ณ  ๊ฒฐ๊ณผ ๋น„๋””์˜ค๋ฅผ ์นดํƒˆ๋กœ๊ทธ์— ๋„ฃ์Šต๋‹ˆ๋‹ค. ๋…นํ™”, ๊ฑฐ๊ธฐ์—์„œ ์กฐ๊ฐ์ด ์žˆ๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๋กœ ์ „์†ก๋ฉ๋‹ˆ๋‹ค. ๋ช…๋ช… ๊ทœ์น™์€ ์ธํ„ฐ๋ŸฝํŠธ ์ธ์šฉ๊ณผ ๋™์ผํ•˜๋ฉฐ, ๋…น์Œ ๋ช…๋ น์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ffmpeg -y -i source_file -r 25 -vcodec libx264 -pix_fmt yuv420p -profile:v high -coder 1 -s 1280x720 -ar 44100 -ac 2 ../clips/xxx-x.mp4

์—ฐ์„ค๋กœ ๋น„๋””์˜ค๋ฅผ ์‹œ์ž‘ํ•˜๋ ค๋ฉด ์ด ๋ถ€๋ถ„์˜ ์ด๋ฆ„์„ ์ง€์ •ํ•˜์„ธ์š”. 000-1.mp4

์ •์  ์‚ฌ์ง„์œผ๋กœ ํ”„๋ ˆ์ž„ ๋งŒ๋“ค๊ธฐ

์ด์ œ ์ •์  ์ด๋ฏธ์ง€์™€ ์‚ฌ์šด๋“œ๋กœ ๋น„๋””์˜ค๋ฅผ ํŽธ์ง‘ํ•  ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด๋Š” ๋‹ค์Œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.

#!/bin/bash

for sound in sound/*.mp3
do
  soundfile=${sound##*/}
  chunk=${soundfile%%.mp3}
  clip=${chunk}.mp4
  pic=slide/${chunk%%-?}.png

  duration=$(soxi -D ${sound} 2>/dev/null)
  echo ${sound} ${pic} ${clip} " - " ${duration}

  ffmpeg -hide_banner -y -loop 1 -i ${pic} -i ${sound} -r 25 -vcodec libx264 -tune stillimage -pix_fmt yuv420p -profile:v high -coder 1 -t ${duration} clips/${clip}
done

์˜ค๋””์˜ค ํŒŒ์ผ์˜ ์ง€์† ์‹œ๊ฐ„์€ ๋จผ์ € ์œ ํ‹ธ๋ฆฌํ‹ฐ์— ์˜ํ•ด ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค. ์†์‹œ๋ฅผ ํด๋ฆญํ•˜๋ฉด ํ•„์š”ํ•œ ๊ธธ์ด์˜ ์˜์ƒ์ด ํŽธ์ง‘๋ฉ๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์ฐพ์€ ๋ชจ๋“  ๊ถŒ์žฅ ์‚ฌํ•ญ์€ ํ”Œ๋ž˜๊ทธ ๋Œ€์‹  ๋” ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. -t ${๊ธฐ๊ฐ„} ํ”Œ๋ž˜๊ทธ๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค -๊ฐ€์žฅ ์งง์€. ์‚ฌ์‹ค๋กœ ffmpeg ๋Š” mp3์˜ ๊ธธ์ด๋ฅผ ๋Œ€๋žต์ ์œผ๋กœ ๊ฒฐ์ •ํ•˜๋ฉฐ, ํŽธ์ง‘ ์ค‘์— ์˜ค๋””์˜ค ํŠธ๋ž™์˜ ๊ธธ์ด๋Š” ๋น„๋””์˜ค ํŠธ๋ž™์˜ ๊ธธ์ด์™€ ํฌ๊ฒŒ(XNUMX~XNUMX์ดˆ ์ •๋„) ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ „์ฒด ๋น„๋””์˜ค๊ฐ€ ๋‹จ์ผ ํ”„๋ ˆ์ž„์œผ๋กœ ๊ตฌ์„ฑ๋œ ๊ฒฝ์šฐ์—๋Š” ๋ฌธ์ œ๊ฐ€ ๋˜์ง€ ์•Š์ง€๋งŒ ์ด๋Ÿฌํ•œ ๋น„๋””์˜ค๋ฅผ ๊ฒฝ๊ณ„์„ ์— ์ค‘๋‹จ๋œ ์ƒํƒœ๋กœ ๋ถ™์ด๋ฉด ๋งค์šฐ ๋ถˆ์พŒํ•œ ๋Š๊น€ ํ˜„์ƒ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

mp3 ํŒŒ์ผ์˜ ์ง€์† ์‹œ๊ฐ„์„ ๊ฒฐ์ •ํ•˜๋Š” ๋˜ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. mp3์ •๋ณด. ๊ทธ ์‚ฌ๋žŒ๋„ ์‹ค์ˆ˜๋ฅผ ํ•˜๊ณ  ๊ฐ€๋”์€ ffmpeg ์ด์ƒ์„ ์ค€๋‹ค mp3์ •๋ณด, ๋•Œ๋กœ๋Š” ๊ทธ ๋ฐ˜๋Œ€์ผ ๋•Œ๋„ ์žˆ๊ณ , ๋•Œ๋กœ๋Š” ๋‘˜ ๋‹ค ๊ฑฐ์ง“๋ง์„ ํ•  ๋•Œ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ €๋Š” ์–ด๋–ค ํŒจํ„ด๋„ ๋ฐœ๊ฒฌํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์—ฌ๊ธฐ ์†์‹œ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์ด ์œ ์šฉํ•œ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์„ค์น˜ํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜์‹ญ์‹œ์˜ค.

sudo apt-get install sox libsox-fmt-mp3

์Šฌ๋ผ์ด๋“œ ๊ฐ„ ์ „ํ™˜ ๋งŒ๋“ค๊ธฐ

์ „ํ™˜์€ ํ•œ ์Šฌ๋ผ์ด๋“œ๊ฐ€ ๋‹ค๋ฅธ ์Šฌ๋ผ์ด๋“œ๋กœ ๋ฐ”๋€Œ๋Š” ์งง์€ ๋น„๋””์˜ค์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋น„๋””์˜ค๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์šฐ๋ฆฌ๋Š” ์Šฌ๋ผ์ด๋“œ๋ฅผ ์Œ์œผ๋กœ ๋งŒ๋“ค๊ณ  ๋‹ค์Œ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ImageMagick๋ฅผ ํ•˜๋‚˜๋ฅผ ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ๋ณ€ํ™˜ํ•˜์‹ญ์‹œ์˜ค.

#!/bin/bash

BUFFER=$(mktemp -d)

for pic in slide/*.png
do
  if [[ ${prevpic} != "" ]]
  then
    clip=${pic##*/}
    clip=${clip/.png/-0.mp4}
    #
    # ะณะตะฝะตั€ะธั€ัƒะตะผ ะบะฐั€ั‚ะธะฝะบะธ
    #
    ./fade.pl ${prevpic} ${BUFFER} 1280 720 5 direct 0
    ./fade.pl ${pic} ${BUFFER} 1280 720 5 reverse 12
    #
    # ะทะฐะบะพะฝั‡ะธะปะธ ะณะตะฝะตั€ะธั€ะพะฒะฐั‚ัŒ ะบะฐั€ั‚ะธะฝะบะธ
    #
    ffmpeg -y -hide_banner -i "${BUFFER}/%03d.png" -i sound/silence.mp3 -r 25 -y -acodec aac -vcodec libx264 -pix_fmt yuv420p -profile:v high -coder 1 -shortest clips/${clip}
    rm -f ${BUFFER}/*
  fi
  prevpic=${pic}
done

rmdir ${BUFFER}

์–ด๋–ค ์ด์œ ์—์„œ์ธ์ง€ ์ €๋Š” ์Šฌ๋ผ์ด๋“œ๋ฅผ ์ ์œผ๋กœ ํฉ๋ฟŒ๋ฆฌ๊ณ  ๋‹ค์Œ ์Šฌ๋ผ์ด๋“œ๋ฅผ ์ ์œผ๋กœ ์กฐ๋ฆฝํ•˜๊ธฐ๋ฅผ ์›ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ์ €๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. fade.pl ๋ฐ ImageMagick๋ฅผ, ์‹ค์ œ Linux ์‚ฌ์šฉ์ž๋Š” ํŠน์ˆ˜ ํšจ๊ณผ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์ง€๋งŒ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๋ถ„์‚ฐ์— ๋Œ€ํ•œ ๋‚ด ์•„์ด๋””์–ด๋ฅผ ์ข‹์•„ํ•œ๋‹ค๋ฉด ์Šคํฌ๋ฆฝํŠธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

#!/usr/bin/perl

use strict;
use warnings;
use locale;
use utf8;
use open qw(:std :utf8);
use Encode qw(decode);
use I18N::Langinfo qw(langinfo CODESET);

my $codeset = langinfo(CODESET);
@ARGV = map { decode $codeset, $_ } @ARGV;

my ($source, $target, $width, $height, $pixsize, $rev, $file_no) = @ARGV;

my @rects;
$rects[$_] = "0123456789AB" for 0..$width*$height/$pixsize/$pixsize/12 - 1;

for my $i (0..11) {
  substr($_,int(rand(12-$i)),1) = "" for (@rects);
  my $s = $source;
  $s =~ s#^.*/##;
  open(PICTURE,"| convert - -transparent white PNG:- | convert "$source" - -composite "$target/".substr("00".($file_no+$i),-3).".png"");
  printf PICTURE ("P3n%d %dn255n",$width,$height);
  for my $row (1..$height/$pixsize/3) {
    for my $j (0..2) {
      my $l = "";
      for my $col (1..$width/$pixsize/4) {
        for my $k (0..3) {
          $l .= (index($rects[($row-1)*$width/$pixsize/4+$col-1],sprintf("%1X",$j*4+$k))==-1 xor $rev eq "reverse") ? "0 0 0n" : "255 255 255n" for (1..$pixsize);
        }
      }
      print PICTURE ($l) for (1..$pixsize);
    }
  }
  close(PICTURE);
}

์™„์„ฑ๋œ ์˜์ƒ์„ ๋งˆ์šดํŠธํ•ฉ๋‹ˆ๋‹ค

์ด์ œ ์šฐ๋ฆฌ๋Š” ๋ชจ๋“  ์กฐ๊ฐ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์นดํƒˆ๋กœ๊ทธ๋กœ ์ด๋™ ํด๋ฆฝ ๋‘ ๊ฐ€์ง€ ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ ์™„์„ฑ๋œ ํ•„๋ฆ„์„ ์กฐ๋ฆฝํ•ฉ๋‹ˆ๋‹ค.

ls -1 ???-?.mp4 | gawk -e '{print "file " $0}' >list.txt
ffmpeg -y -hide_banner -f concat -i list.txt -c copy MOVIE.mp4

๊ฐ์‚ฌํ•œ ํ•™์ƒ๋“ค์„ ์ฆ๊ฒ๊ฒŒ ์‹œ์ฒญํ•ด์ฃผ์„ธ์š”!

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€