GSplit 프로그램.

연습 2016. 11. 13. 22:00

 파일을 분할 처리하는 프로그램 GSplit프로그램을 소개하도록 하겠다.


 링크 : http://www.gdgsoft.com/gsplit/


 GSplit 동일한 파일을 분할하고, 해당 프로그램이 없어도 EXE파일을 생성해서 실행 파일로 분할을 처리하는 프로그램이다.(Self-Uniting)


 분할 했을때, CRC32등을 이용해서 분할 프로그램의 문제를 점검할 수도 있다.


 파일을 분할해야 할 경우는 거진 없을 경우도 있지만(대부분 분할 압축을 처리한다.)


 zip의 분할 압축과 유사한 것이므로, zip으로 분할하지 못할 경우에 사용하면 효율적일 것이다.


 CD/DVD/USB을 이용해서 바로 넣을 수도 있다.


 블로그에서도 사용을 할 수 있다.


 사용법이 간편하다. 라는 점이 있다.

Posted by JunkMam
,

 최근 기계식 키보드를 사용하고 있다.(덕분에 한글 타속이 200~300사이였는데, 300~400이 되었다.)


 그런데, 기계식 키보드의 특징이 기판이 무사하다고 할 경우에 기계식 스위치의 수명으로 키가 입력이 안되는 경우도 있다는 점이 있다.


 이것은 자주 사용하지 않는 스위치는 수명이 남아 있지만, 자주 사용하는 스위치는 수명이 빨리 나간다. 라는걸 알 수 있게 된다.


 그래서 이걸 해결하기 위해서 키보드의 키의 정보를 확인하는 장치가 필요하다. 라고 생각하여 검색해보았다.


 키보드 입력을 확인 하는 프로그램이다.


 해당 키보드의 입력이 이상한지 아닌지를 확인 하는 용도로 사용할 수 있다.


 


 해당 프로그램의 모습이다.


 이 프로그램은 터치할 경우에 생기는 프로그램의 정보를 가지고 올 수 있다.


 Num 위에 있는 숫자는 해당 키의 상태를 뜻하는 것이고, 검은색(Ctrl에 있는 부분)은 누르고 있는 상태, 주황색으로 되어 있는 경우는 키보드의 눌렀었던 정보이다.


 Led Test는 키보드의 LED을 확인하는 것으로 Num(Number Lock)이나 ScrLk(Scroll Lock), CapsLock의 불이 제대로 들어오는지 여부를 보여준다.


 해당 키보드에서 불이 들어오는 것으로 LED가 고장났는지 여부를 확인 할 수 있다.


 Clear라는 버튼은 해당 데이터를 전부다 없어진다.


 이렇게해서 키보드를 확인 할 수 있다.


 파일

key_test.exe



'연습' 카테고리의 다른 글

MySQL 백업/복원  (0) 2016.10.10
리눅스 사용법 -사용자 추가하기-  (0) 2016.10.09
Notepad++의 FTP 플러그인(Npp FPT) 설치 및 사용법.  (0) 2016.10.07
Notepad++ 설치  (0) 2016.10.06
그누보드 메뉴 설정.  (0) 2016.10.05
Posted by JunkMam
,

 https://sourceforge.net/projects/mpc-hc/files/?source=navbar


 Open Source로 만들어져 있는 동영상 플레이어이다.


 mp4를 플레이 하는걸 할 수 있으며, URL을 이용해서도 플레이어처럼 사용이 가능하다.


 MPC-B64를 이용해서 유튜브 플레이어를 설정 및 다운로드가 가능하다.


 사용 방법은 


 File -> file/URL Open 을 사용하면 된다.


 추가하는 걸로 체크하면 목록에 추가가 되고, 체크를 하지 않으면, 바로 실행이 된다.


 사용법은 한번 사용하면 좋을 듯 싶다.

Posted by JunkMam
,

Kompozer - 웹에디터

연습 2016. 7. 22. 00:00

 내가 처음 웹 서버를 배우면서 사용한 맵 에디터가 Dreamweaver이다. 그런데, Dreamweaver는 유료 툴이라는게 문제이다.


 점점 저작권에 관련되서 많은 걸 알게되고 점점 저작권을 지키며, 살려고 노력하자. 라는 것으로 살다보니. 내가 지금까지 사용하는 프로그램을 보게 되었다.

 내가 사용하는 프로그램들은 대부분 정품으로 사서 사용하는가?


 그래서 점점 무료 제품들과 조금은 불편하더라도 수정이 가능한 오픈 소스들을 찾게 되었다. 참고로 프로그래밍을 배우면서 항상 느끼는 것은, 모든 것은 내가 하기 나름이다. 내가 불편함을 감수하고 조금만 더 노력한다면, 불편함을 어느정도 해소해 나갈 수 있다. 라는 것이다.


 사이트 : http://www.kompozer.net/


 이 툴은 Dreamweaver처럼 엄청 깔금하다고 생각이 들진 않는다. 하지만, Open Source로 공개되는 방식이며, 수정이 가능한 형태인 걸 확인을 하였다.

 그리고 한글을 지원하는거와 영어로 지원하는 것등. 다양하게 지원하는 언어를 고를 수 있다는 장점이 있다.


 이 툴을 이용해서 웹 세팅등을 할 수 있다.


 예을 들어서 특정 사이트를 연결해서 사용하고 싶을때, 다음과 같이 하면된다.


 


 여기서 지구본 모양의 아이콘 옆에 있는 모니터 2개 이상이 있는 것이 사이트를 수정및 관리해주는 것이다.

 옆에 있는 지구본은 배포 기능을 가지고 있는 것으로. 사용자가 사이트에 연결하여 값을 정리및 적용하는데 사용이 된다.


 여기서 주의할 점.


 kompozer는 sftp을 지원을 해주지 못한다.


 뭐, src을 분석해서 sftp을 사용할 수 있게 개량을 할 수 있겠지만, 그냥은 못 쓰는 것 같다.

Posted by JunkMam
,

 ffmpeg를 이용해서 영상에 있는 소리를 mp3로 추출하는 방법이다.


 

1
ffmpeg -i input.mp4 -codec:a libmp3lame -qscale:a 2 output.mp3
cs



 여기서 mp3로 변환하기 위해서 libmp3lame이라는 라이브러리를 사용하였다.


 qscale는 퀄리티이다. 얼마나 좋음 음색을 표현하는가? 라고 이해하면 될 것 같다.


 여기서 mp3등 연속적인 데이터를 저장시키는 스트림 파일들의 특징은 bitrate라는 것을 가진다.


 bitrate란, bit 데이터 전송률이라고 한다.


 이 데이터가 높으면 높을수록 전송 속도가 빠르고, 효과가 좋다.(하지만, 원본 보다 상향되진 않는다.)

Posted by JunkMam
,

 현재 인공지능을 이용해서 파일을 압축하는 프로그램이 나왔다.

 대표적인 방법으로는 paq라는 프로그램이다.[각주:1]



 paq를 개량해서 lite paq, fast paq 등 경량화 및 속도를 올린 paq 프로그램들이 나왔고, 혹은 paq 방식의 알고리즘인 CM(Context Mixing)을 이용해서 만든 프로그램이 있다.


 여기서 MCM또한 CM 알고리즘을 이용해서 만들어낸 프로그램이다.


 MCM를 사용하는 방법을 작성할려고한다.


 MCM은 일단, 폴더를 제작해서 압축하는 방식이 없다.(단일 파일만 압축할 수 있다는 뜻이다.)


 일단, 각각의 파일을 압축해서 합치는 방식은 오히려 파일 용량의 압축이 적으니 단일 파일을 압축시키는 것이 좋은 경우가 많이 발견되었다.


 MCM을 사용할려면 기본적으로 기준 환경을 맞춰줘야지 속도가 잘 나온다.


 환경

 Memory 최대 8G 이상.


 최고 압축을 사용할려면, Memory가 최대 8G 이상이 아니라면, 오히려 설명이 되어 있는 파일보다 속도가 제대로 안나온다.(페이징 작업에 의해서 속도가 감소하는 걸 느낄 수 있다.)


 paq보다 mcm가 메모리 사용량과 속도명에서 좀 더 좋은 점이 있다.(drt|lpaq을 이용하면 더 낫다 라는 설명이 되어 있지만, drt랑 lpaq가 제대로 안 돌아갔다.)


 아직까진 미완성이지만, mcm를 잘만 사용한다면, 용량을 줄여서 들고 다닐 수 있을 것이라고 나는 생각하고 있다.


 그럼, 이제 MCM을 사용하는 방법을 설명할려고 한다.


 mcm을 친다면, 다음과 같은 문장이 나오는 걸 알 수 있다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Error, input or output files missing
======================================================================
mcm compressor v0.83, by Mathieu Chartier (c)2015 Google Inc.
Experimental, may contain bugs. Contact mathieu.a.chartier@gmail.com
Special thanks to: Matt Mahoney, Stephan Busch, Christopher Mattern.
======================================================================
Caution: Experimental, use only for testing!
Usage: mcm.exe [command] [options] <infile> <outfile>
Options: d for decompress
-{t|f|m|h|x}{1 .. 11} compression option
t is turbo, f is fast, m is mid, h is high, x is max (default mid)
0 .. 11 specifies memory with 32mb .. 5gb per thread (default 6)
10 and 11 are only supported on 64 bits
-test tests the file after compression is done
Examples:
Compress: mcm.exe -m9 enwik8 enwik8.mcm
Decompress: mcm.exe d enwik8.mcm enwik8.ref
Failed to parse arguments
cs


 MCM은 총 4가지의 설정과 0~11까지 설정하는 것이 있다.


 t는 turbo, f는 fast, m는 mid, h는 high, x는 Max이다.(기본적으로 mid로 설정되어 있다.)


 t에서 x로 가면 갈 수록 속도가 느리고, 압축률이 높아진다.


 0~11의 설정이 되는데, 이것은 32Mb에서 5~6GByte까지 사용이 된다.


 여기서 10과 11은 64Bit에서만 지원이 가능하므로, 주의를 요한다. 라고 되어있다.


 그리고 압축을 풀려면, d을 사용하면, decompression이라고 할 수 있다.


 압축/풀기 예제

1
2
mcm -x11 enwik8 enwik8.mcm
mcm d enwik8.mcm enwki8
cs

 

 이렇게 해서 사용을 할 수 있게 된다.


 이것이 조금 더 발전을 해서 압축율이 높은 프로그램이 완성이 되었으면 한다.

  1. 참조 : https://en.wikipedia.org/wiki/PAQ(2016-07-08) [본문으로]
Posted by JunkMam
,

 ffmpeg을 병합이 있다면, 잘라내는 방법이 있어야 될 것이다.


 이것 또한, ffmpeg wiki에 들어간다면, 찾을 수 있을 것이다.



 ffmpeg는 병합과 다른 점이 하나의 문서 파일을 이용하는 것이 아닌, 각각의 파일로 처리하는 것이다.


 파일로 출력하는 방식은 다음과 같다.


 

1
ffmpeg -i 자를영상.mp4 -ss 0 -62 -vcodec copy -acodec copy 잘려진 결과.mp4 -y
cs


 여기서 -i는 입력 파일을 뜻하고, -ss는 Start Second, -t는 해당 파일 범위를 뜻한다.


 -t는 Second 단위를 뜻한다.


 -vcodec 혹은 -c:v로도 표현이 가능한 것으로 video codec 혹은 codec : video를 뜻한다.


 -acodec 혹은 -c:a는 audio codec을 뜻한다. codec : audio를 뜻하기도 한다.


 여기서 각각 copy라는 뜻은 잘려나가는 영상의 코덱과 오디오의 설정을 동일화시킨거라도 이해하면 된다.


 -y는 동일 파일을 가지고 있을 경우에는 항상 덮어씌우는 작업을 뜻한다.


 그래서 위의 예제는 자를영상.mp4에서 0초에서 62초까지 잘라서 잘려진 결과.mp4라는 파일이 나오게 되는 것이다.

Posted by JunkMam
,

 ffmpeg을 병합해야되는 경우가 있다.

 병합을 하게 된다면, 용량이 증가하는 경우가 많다. 그래서 병합을 할려면, 한번에 볼려고 생각하는거 아닌이상, 병합을 하지 않는게 나은 것이다.


 ffmpeg의 사용법이 영어로는 존재한다.[각주:1]


 먼저 ffmpeg의 병합을 하기 위해서는 먼저 텍스트 파일로 만들어야한다.


 list.txt

 

1
2
3
4
# this is a comment
file '/path/to/file1'
file '/path/to/file2'
file '/path/to/file3'
cs



 이렇게 제작한다.


 여기서 '#'은 주석처리하는 것이다.


 file '파일명' 으로 설정을 할 수 있다.


 이렇게해서 list.txt을 넣어서 처리하면 된다.


 그런데, 이것이 영상파일이 아닌 정보를 병합하는 것이다. 라는걸 표시해야된다.


 

1
ffmpeg -f concat -i list.txt -c copy output
cs


 이렇게 사용해줘야한다.


 그리고 list.txt을 만드는 방법은 bash shell을 이용해서 넣는 것이다.


 컴퓨터 command을 이용해서 명령어를 이용해서 만들어 낼 수 있다.


 

1
(for %i in (*.wav) do @echo file '%i') > list.txt

cs


 이런식으로 말이다.


 powershell을 이용해서 만드는 것이라면, 다음과 같은 방식으로 표현을 할 수 있다.


 

1
2
3
4
$n=((Get-childItem ./*.mp4).name);
for($i=0; $i -le $n.length; $i++){
    $n[$i]>>list.txt
}
cs


 이렇게하면, 이름순으로 나와서 영상의 이름을 순차적으로 처리해줘야한다.

  1. https://trac.ffmpeg.org/wiki/Concatenate(2016-07-05) [본문으로]
Posted by JunkMam
,

 webp의 lossless 결과물을 비교해보았다.


 비교해보는 이유는 bmp에서 webp로 바꾼 다음 bmp로 바꿔서 원본이랑 디코딩한 결과물을 비교해보니, 파일이 전혀 바뀌어 져있었다.


 7z h -scrcsha256으로 하여 sha256의 값이 바뀐 것뿐만 아니라, hexeditor로 읽어 본 바이너리 내용물도 바뀌었다.(sha256으로 확인했을때, 다른 것은 당연히 바이너리 내용물이 다르다는 것을 알 수 있다.)


 그래서 진짜 내용물이 손실 없이 되는지 궁금했다.


 먼저 webp에서 인코딩을 이용하고, 다른 프로그램을 이용해서 비교하는기로 했다.


 webp에서 인코딩을 이용하기 위해서 샘플로 나와있는게 있다.[각주:1]


 cwebp을 이용해서 인코딩을 표현할 수 있다.


 libwebp이라고 하여, bin파일과 함께 include 및 라이브러리를 구성할 수 있다.


 PNG을 이용해서 만들어지는 무손실 압축 그래픽인 것에서 webp은 png보다 용량을 적게 할 수 있는걸 확인 했다.



 정말 webp에서 그래픽이 손실이 심할지 궁금해서 확인 하기 위해서 비교 프로그램을 돌리기로 했다.[각주:2]



 libwebp을 다운 받고.[각주:3] 설명에 맞춰서 사용해 보았다.



 cwebp -q 100 -lossless test.bmp -o text.webp


 이렇게 하면, 압축률이 높은 무손실 압축이 된다. 라고 한다.[각주:4] 그래서 이걸 이용해서 압축 했다.


 png와 비교했을 경우. 용량이 약 10%정도 감소되는걸 확인 했다.


 내가 궁금한건 png의 용량 감소가 아닌 내용물의 무손실인지 확인 하는 것이다.


 그래서 bmp으로 추출하는걸 해보았다.


 dwebp -bmp test.webp -o test_1.bmp


 이렇게 해서 나오는 결과물인 test_1.bmp과 test.bmp을 diffimg을 이용해서 제작하도록 했다.


 결과물을 얻기 위해서 test.bmp을 원본으로 하고, test_1.bmp랑 비교하는걸 해보았다.

 결론은 webp에서 lossless는 bmp의 형태가 달라서 그런 것이지.(무압축 bmp으로 나타낸다.) 값이 변화되는건 아닌걸 확인 하였다.


 webp에서 lossless를 이용하면, 확실히 무손실 압축이며, png보다 용량이 10%정도 적어진 파일이 완성된다는 것을 알 수 있게 되었다.


 실수로 cwebp -q 100만을 이용해서 압축하고 푸니, 원본 bmp보다 어두워진 bmp 파일이 만들어 졌다.


 추측하곤데 webp는 명암을 증가 시켜서 화질을 개선하고, 이것을 압축하는 방식인 것 같다.


 맞는진 모르겠지만, lossless에선 확실히 무손실이 된다. 라는걸 알게 되었다.

  1. https://developers.google.com/speed/webp/docs/cwebp (2016-05-25) [본문으로]
  2. https://sourceforge.net/projects/diffimg/(2016-05-25) [본문으로]
  3. https://storage.googleapis.com/downloads.webmproject.org/releases/webp/index.html(2016-05-25) [본문으로]
  4. https://developers.google.com/speed/webp/docs/cwebp#name(2016-05-25) [본문으로]
Posted by JunkMam
,

 Hutter 상의 결과물을 본 것 중에 xwrt라는 프로그램을 찾아 봤다.[각주:1]


 압축률이 약 18%가량이고, 메모리 사용량도 약 1.5G이다.


 LPAQ6을 변경한 프로그램이다.


 여기서 LPAQ란, Lite PAQ의 약칭이다.

 Lite PAQ는, 가벼운 PAQ 모델을 만들고, 그 모델로 압축하는 프로그램이다.

 lpaq9m또한 Lite PAQ에 속하는 것이다.

 현재, Hutter 상을 받은 제품이 drt|lpaq9m이며, 이것은 압축률은 약 10위 안에 든다.

 거기에 처리속도, 메모리에서 효율적이며, 압축률 또한 높아서 받은 것 같다.


 Tangelo는 문제가 2G이상을 처리할 수 없다.(이건 drt|lpaq9m에서도 동일하다고 적혀 있다.)


 mcm은 2G이상은 처리할 수 있지만, 문제는 메모리 사용량에 문제이다.


 xwrt는 2G이상을 처리 할 수 있으며, Lite PAQ에 변형체인 만큼 메모리 량도 2G이상을 넘치지 않는다.(MCM은 Hutter 상의 결과물 만큼 볼려면, 5.6G이상의 메모리를 사용한다.)


 xwrt와 tangelo의 차이는

 xwrt는 paq에서도 lpaq에서 파생된 압축이고, tangelo는 paq에서 fpaq에서 파생된것이다.(fpaq의 약자로 fp라고 한다.)


 최대 값으로 처리하는 방법으로

 -l14 -b255 -m96 -s -e4000 -f200 대상 파일명.


 이렇게 처리한다.

 -l14는 level 14라는 뜻이고,

 -b255는 255의 수를 뜻하고,

 -e4000는 단어가 40000단어 라는 뜻이라고 한다.

 자세한건 도움말을 참조 할것.

  1. xwrt(2015-11-05) [본문으로]

'연습' 카테고리의 다른 글

GAR --Help  (0) 2015.11.11
GCC --help  (0) 2015.11.10
GAS --help  (0) 2015.11.07
TANGELO - PAQ8 / FP8 에서 파생된 압축 파일 -  (0) 2015.11.05
MCM -압축과 속도가 빠른 압축 툴-  (0) 2015.11.03
Posted by JunkMam
,