                          VLC media player for OS/2
                         ---------------------------
                         
1. 소개
-------

  이 프로그램은 VLC media player 를 OS/2 로 포팅한 것입니다.
  
2. 특징들...
------------
  
  .Qt4 인터페이스 지원
  .DART/UNIAUD 지원
  .SNAP/WarpOverlay!/VMAN/DIVE 지원
                             
3. 실행에 필요한 것들...
------------------------
  
  .LIBCn v0.1.12
  .Qt v4.7.3GA2

4. 실행하기
-----------

  1) x:\vlc2\usr\local\lib 디렉토리를 CONFIG.SYS 의 LIBPATH 에 추가합니다.
     (x 는 vlc 가 설치된 드라이브 문자)
  
  2) 재부팅합니다.
  
  3) 명령행 또는 WPS 에서 vlc.exe 를 실행시킵니다. 

5. 제한 사항 또는 알려진 벌레들...
----------------------------------
  
  .SDL 비디오 드라이버를 쓰는 경우, 비디오 파일을 재생한 후 비정상적으로 
   종료됩니다.
  
6. 할 것들...
-------------
  
  .모든 플러그인 제공
  .공식판에 합치기
  
7. OS/2 관련 판보기...
----------------------

  - vlc-3.0.20 (2023/11/07)
    .VLC v3.0.20 소스 사용

  - vlc-3.0.19 (2023/10/19)
    .VLC v3.0.19 소스 사용
    .dav1d 플러그인 추가(dav1d v1.1.0 사용)
    
  - vlc-3.0.18 (2022/12/27)
    .VLC v3.0.18 소스 사용

  - vlc-3.0.16 (2021/07/26)
    .VLC v3.0.16 소스 사용

  - vlc-3.0.14 (2021/05/22)
    .VLC v3.0.14 소스 사용
    .mkv 플러그인 빠짐(libebml, libmatroska 의 .pc 파일 사용). Issue #19. 고침.
     cultorhei 씨 제보
    .mkv 내장 자막이 겹쳐 보이거나 다르게 보임
     (freetype 플러그인에서 UCS4 사용). Issue #20. 고침. cultorhei 씨 제보
    .메뉴 글씨 밑으로 영상이 보임(colorkey 변경). Issue #21. 고침. 
     dspiatkowski 제보 
     
  - vlc-3.0.12 (2021/01/19)
    .VLC v3.0.12 소스 사용

  - vlc-3.0.11 (2020/07/18)
    .VLC v3.0.11 소스 사용
    .KVA_AUTOMODE 환경 변수로 기본 비디오 모드 변경 가능(libkva v1.2.4 사용)
     예) SET KVA_AUTOMODE=DIVE 또는 SNAP, WO, VMAN 

  - vlc-3.0.10 (2020/04/30)
    .VLC v3.0.10 소스 사용
    
  - vlc-3.0.8 (2019/08/23)
    .VLC v3.0.8 소스 사용
    .qt: '보기' 메뉴를 볼 때마다 항목들이 배로 늘어남. Issue #16. 고침.
     mrwarper 씨 제보.

  - vlc-3.0.7.1 (2019/06/29)
    .VLC v3.0.7.1 소스 사용

  - vlc-3.0.7 (2019/06/08)
    .VLC v3.0.7 소스 사용

  - vlc-3.0.6 (2019/01/12)
    .VLC v3.0.6 소스 사용

  - vlc-3.0.5 (2018/12/31)
    .VLC v3.0.5 소스 사용

  - vlc-3.0.4 (2018/09/03)
    .VLC v3.0.4 소스 사용

  - vlc-3.0.3 (2018/06/19)
    .VLC v3.0.3 소스 사용
    .qt: 퍼센트 인코딩된 파일 이름(%XX)이 나타남. 고침.
    
  - vlc-3.0.2 (2018/05/08)
    .VLC v3.0.2 소스 사용
    .console: 시스템 로케일로 메세지 출력
    
  - vlc-3.0.1 (2018/03/22)
    .VLC v3.0.1 소스 사용

  - vlc-3.0.0 (2018/02/11)
    .VLC v3.0.0 소스 사용
    .일부 GUI 기능이 제한될 수 있음(Qt4 가 더 이상 지원되지 않음).
    
  - vlc-2.2.8 (2017/12/17)
    .VLC v2.2.8 소스 사용
    .libass 플러그인 추가(libass v0.13.7 과 fribidi v0.19.7 사용)
    .fontconfig mzfntcfgft 판 대신에 rpm판 사용
    .faad: 오디오 재생할 때, 
     `faad warning: PNS not allowed in DRM data stream' 메세지가 출력되면서, 
     오디오가 뚝뚝 끊김. 고침. Heikki Kekki 씨 제보.
     (faad 플러그인 대신에 avcodec 플러그인 사용)
    .패키징 실수(snapwrap.dll 빠짐). 고침. Heikki Kekki 씨 제보

  - vlc-2.2.6 (2017/06/05)
    .VLC v2.2.6 소스 사용
    
  - vlc-2.2.4 (2016/06/06)
    .VLC v2.2.4 소스 사용
    
  - vlc-2.2.3 (2016/05/06)
    .VLC v2.2.3 소스 사용
    
  - vlc-2.2.2 (2016/02/11)
    .VLC v2.2.2 소스 사용
    .core : 때때로 조건 변수 대기 실패. 고침
    .httplive : 유튜브 라이브 동영상 재생시 CPU 점유율 99.9% 됨. 고침
                (조건 변수 대기 실패가 원인)
    
  - vlc-2.2.1 (2015/04/25)
    .VLC v2.2.1 소스 사용
    
  - vlc-2.2.0-fix1 (2015/03/10)
    .DVD 재생 못함(dvdcss2.dll 빠짐). 고침. Issue #9. DavidMcKenna 씨 제보.

  - vlc-2.2.0 (2015/02/08)
    .VLC v2.2.0 소스 사용
    .gnutls 플러그인 추가
    .https 지원(gnutls 사용)
    .skins2 : SIGFPE 발생. 고침.
    .lua : 잘못된 스크립트 디렉토리 사용. 고침. Maurice GUERON 씨 제보
    
  - vlc-2.1.5-r2 (2014/07/31)
    .패키징 실수(bin 디렉토리 빠짐). 고침. Harald Kamm 씨 제보
    
  - vlc-2.1.5 (2014/07/30)
    .VLC v2.1.5 소스 사용
    
  - vlc-2.1.3 (2014/02/15)
    .VLC v2.1.3 소스 사용
    
  - vlc-2.1.1 (2013/12/07)
    .VLC v2.1.1 소스 사용
    
  - vlc-2.1.0 (2013/10/09)
    .VLC v2.1.0 소스 사용
    
  - vlc-2.0.7 (2013/06/16)
    .VLC v2.0.7 소스 사용
    .skins2 플러그인 추가 
    
  - vlc-2.0.6 ( 2013/04/14 )
    .VLC v2.0.6 소스 사용
    
  - vlc-2.0.5 ( 2013/01/01 )
    .VLC v2.0.5 소스 사용
    .core : 'One instance' 기능 지원( Jerry Rash 씨 제안 )
    .kva : 'Always on top' 기능 지원
    
  - vlc-2.0.4 ( 2012/10/20 )
    .VLC v2.0.4 소스 사용
    .stream_out_rtp : DLL 이름이 8자보다 긺. 고침
    .straem_out_raop : DLL 이름이 8자보다 긺. 고침
    .kva : vman 모드일 때, 때때로 이미지가 출력되지 않음. 고침
           ( libkva v1.2.1 사용 )
    .qt : timetooltip 이 나타나면 촛점이 바뀜. 고침
    
  - vlc-2.0.2 ( 2012/07/14 )
    .VLC v2.0.2 소스 사용
    .core : '디렉토리 열기...' 작동 안 함. 고침( Andrew Elzenaar 씨 제보 )
    .kai : Uniaud 드라이버가 설치되지 않았을 때, uniaud.dll 이 있으면 죽음. 
           고침( libkai v1.1.2 사용, Erick 씨 제보 )
    
  - vlc-2.0.1 ( 2012/03/30 )
    .VLC v2.0.1 소스 사용
    .mkv 플러그인 추가( libebml, libmatroska 사용 )
    .os2drive 플러그인 추가
    .kva : vman 지원
    .kva : BGR4 지원( dive/vman )
    .kva : snap > wo > vman > dive 순서로 자동 탐지
    .qt4 : CD/DVD 드라이브 자동 탐지
    .모질라 플러그인 삭제
    
  - vlc-1.1.13 ( 2011/12/24 )
    .VLC v1.1.13 소스 사용
    .일부 플러그인의 이름을 짧게 함
    .때때로 AMD CPU ID 를 인식하지 못함. 고침
    
  - vlc-1.1.11 ( 2011/08/07 )
    .VLC v1.1.11 소스 사용
    
  - vlc-1.1.9 ( 2011/05/14 )
    .VLC v1.1.9 소스 사용
    .mux_ts 플러그인 추가( libdvbpsi 사용 )
    .ts 플러그인 추가( libdvbpsi 사용 )
    .access_realrtsp 플러그인 추가( rtsp:// 지원 )
    .live555 플러그인 추가( rtsp:// 지원 )
    .모질라용 플러그인 지원( 추천하지 않음 ) 
    
  - vlc-1.1.7 ( 2011/02/06 )
    .VLC v1.1.7 소스 사용
    .kai: uniaud 모드와 snap 모드가 동시에 쓰일 때, 비디오가 초기화되기 전에 
          오디오가 재생되면 시스템이 멈춤. 고침
    .kai: uniaud 모드일 때 소리가 찌그러짐. 고침
    
  - vlc-1.1.5 ( 2010/12/05 )
    .VLC v1.1.5 소스 사용
    .core : /usr/local 이외의 곳에 설치를 하면 NLS 지원 안됨. 고침
    
  - vlc-1.1.4 ( 2010/11/20 )
    .VLC v1.1.4 소스 사용
    .cdda 플러그인 추가
    .vcd 플러그인 추가
    .freetype 플러그인 추가
    .lua 플러그인 추가
    .xml 플러그인 추가
    .kai : dart/uniaud 모드 선택 지원
    .kai : 공유/독점 모드 선택 지원
    .kva : 영상 내장 모드 지원
    .kva : snap/wo/dive 모드 선택 지원
    .kva : T23 모델의 비디오 문제 해결 지원
    .kva : 가로세로비, 잘라내기 지원
    .kai : AAC 오디오 재생할 때 SIGFPE 발생. 고침
    .kva : 독립창 모드일 때, 재생창을 닫아도 정지 안됨. 고침
    .dvdnav : 재생 안됨. 고침
    .LANG 환경 변수에 코드 페이지를 지정해야 함. 고침 
     ( 현재 코드 페이지를 사용 )
    
  - vlc-1.0.5-beta1 ( 2010/05/30 )
    .KVA vout 모듈 추가
    .DBCS 파일 재생 안됨. 고침
    .DBCS 환경에서 '\' 작동 안 함. 고침
    .--plugin-path 를 써야 함. 고침
    .오디오가 나오지 않음. 고침
    .DVD 장치를 지정하면 알 수 없는 문자로 저장됨. 고침.
    .DVD 재생하면 LIBC063 에서 SYS3171 발생. 고침.
    .KAI 드라이버로 음악을 재생하면 재생 도중 SIGSEGV 발생. 고침.
    .Qt4 인터페이스를 쓰는 경우, 없는 파일을 재생하고 끝내면 종료 안 됨. 고침.
     (Qt 4.6.2GA 사용)

  - vlc-1.0.5-tp2 ( 2010/04/11 )
    .libavcodec, libavformat, libswscale, libpostproc, liba52 지원
    .KAI aout 모듈 추가
    .환경변수 HOME 의 '/' 를 '\' 로 바꿈
    .input 쓰레드에서 assertion 실패. 고침
     ( vlc_object_release() 전에 vlc_thread_join() 호출 )

  - vlc-1.0.5-tp1 ( 2010/03/14 )
    .Technology Preview 1

8. 소스 컴파일하기
------------------

8.1 필요한 것들
---------------

  자세한 것은 다음 사이트를 참조하세요.
  
	http://wiki.videolan.org/Contrib_Status

8.2 OS/2 판에서 사용하는 빌드 도구들...
---------------------------------------

  .GCC v9.2.0(rpm)
  .binutils v2.33.1(rpm)
  .GNU Make 4.4.1
  .wl(Open Watcom Linker) v2.0beta1
  .GNU coreutils v8.31
  .GNU sed v4.7
  .GNU grep v3.8(rpm)
  .mksh R59c
  .autoconf v2.71
  .automake v1.16.5
  .pkg-config v0.29.1
  .libtool v2.4.6-r2
  .OS/2 ToolKit v4.5
  .gettext v0.21.1
  .flex v2.6.4
  
8.3 OS/2 판에서 사용하는 라이브러리들...
----------------------------------------

  .libvorbis v1.3.5
  .ligogg v1.3.2
  .flac v1.3.2
  .x264 0.150.4482
  .a52 v0.7.4
  .libmpeg2 v0.5.1
  .faac v1.29.9.2
  .ffmpeg N-103078-gbc5faacc3f
  .libmad v0.15.1b
  .libdvdcss v1.4.3
  .libdvdnav v6.1.1
  .libdvdread v6.1.2
  .libcddb v1.3.2
  .libcdio 0.81
  .libgpg-error v1.26
  .libgcrypt v1.7.5
  .libxml2 v2.7.8
  .libpng v1.6.28
  .freetype2 v2.10.1
  .fontconfig v2.13.1(rpm)
  .zlib v1.2.11
  .Qt4 v4.7.3GA2
  .lua v5.1.4
  .pthread(rpm)
  .libkva v1.2.4
  .libkai v2.2.1
  .libdvbpsi v1.3.0
  .live555 2012.10.16
  .libebml v1.4.1
  .libmastroska v1.6.2
  .gnutls 3.5.8
  .gmp v6.1.2
  .nettle v3.3
  .libass v0.13.7
  .fribidi v0.19.7
    
8.4 컴파일하기
--------------

8.4.1 패치 적용하기
-------------------

  우선, VLC 홈페이지(http://www.videolan.org/vlc/download-sources.html)에서 
소스를 내려받습니다. 소스를 원하는 디렉토리에 풀고, src.zip 도 마찬가지로 해당 
디렉토리에 풉니다. os2.diff 를 다음과 같이 적용하시기 바랍니다.

    patch -p1 < os2.diff

8.4.2 WLINK 설정하기
--------------------
   
  링커를 WLINK 로 설정합니다.
  
    예) gccenv gcc-usr-directory WLINK

8.4.3 QtCore.pc/QtGui.pc/QtSvg.pc 수정하기
------------------------------------------

  소스 묶음에 들어 있는 QtCore.pc/QtGui.pc/QtSvg.pc 를 다음처럼 수정합니다.
  
    .prefix 를 Qt4 가 설치되어 있는 디렉토리로 바꾸기
    .QtCore.pc/QtGui.pc/QtSvg.pc 를 pkgconfig 디렉토리(예: /usr/lib/pkgconfig) 
     에 복사

8.4.4 configure.cmd 수정하기
----------------------------

  소스 묶음에 들어 있는 configure.cmd 를 다음처럼 수정합니다.
  
    .LIVE555_PREFIX 를 live555 가 설치되어 있는 디렉토리로 바꾸기

8.4.5 컴파일 및 설치
--------------------

  vlc 소스 최상위 디렉토리에 configure.cmd 를 복사한 후, configure.cmd 를 
실행시킵니다.

  configure 가 끝난 후, 다음을 실행합니다.
  
    make SHELL=/bin/sh
    
  컴파일이 끝난 후, 다음을 실행합니다.
  
    make SHELL=/bin/sh install
    
  실행이 끝나면 /usr/local 디렉토리에 vlc 프로그램이 설치됩니다.
  
9. VLC media player 공식 홈페이지
---------------------------------

  VLC media player 공식 홈페이지는 다음과 같습니다. 

    http://www.videolan.org/vlc/
    
  기본적인 사용법은 다음을 참조하세요( Ed Durrant 씨 제보 )
    
    http://www.videolan.org/doc/play-howto/en/ch03.html

10. 문제가 있을 때...
---------------------

  사용에 문제가 있다면 다음의 내용을 보내주시기 바랍니다.
  
  - 증상
  - SMP 사용 유무
  - 오디오 드라이버 종류( Uniaud, SBLive 등등 ) 및 판번호
  - 비디오 드라이버 종류( SNAP, Panorama 등등 ) 및 판번호
  - 로그 파일
  
  로그 파일은 다음과 같이 생성할 수 있습니다.
  
      vlc.exe -vvv --file-logging 동영상-파일이름 > vlc-err.txt 2>&1
      
  이렇게 생성된 vlc-log.txt 와 vlc-err.txt 를 함께 GitHub 의 이슈 트래커에 
등록해 주시기 바랍니다.
  
      https://github.com/komh/vlc-os2/issues
  
11. 후원하기
------------

  이 프로그램이 마음에 들어 후원하고 싶으시면, 아래 URL 을 방문해 주십시오.

    http://www.os2.kr/komh/os2factory/

  또는 다음 블로그에서 광고를 클릭해 주십시오.

    https://lvzuufx.blogspot.com/
      
12. 하고 싶은 말이 있을 때...
-----------------------------

  github 의 이슈 트래커를 이용해 주십시오.
  
      https://github.com/komh/vlc-os2/issues

고명훈
