본문 바로가기

mpg123

(9)
FLTK MPG123 GUI Player tech demo version 0.1.2.15 간만에 여유가 생겨 FLTK MPG123 GUI Player tech demo 의 기능을 좀 더 향상 한 것을 올려 보고자 합니다. 이번 버젼은 다음과 같이 많은 기능들을 개선 하였습니다. 개선점 fl_imgtk 를 AVX 명령어만 쓰도록 하던것을 SSE 로 변경 -> 이제 Core2Duo 이상에서 실행 가능, 내부 PThread 내에서 UI 업데이트시 발생하는 이상현상 (바탕 화면에 그려 지는 문제나, UI 가 멈춘것 같이 표시 되는 현상) 수정곡 목록이 길 경우 자동으로 marquee 가 되도록 구현 함. (새로운 Fl_Marquee_Label 제작) List 화면 구성 변경, 가독성을 위해 배경을 검은색으로 처리 (사실은 다른 이유도 있지만 다음 버젼에 수정 에정)이전곡/재생(또는 멈춤)/다음곡 이..
FLTK MPG123 GUI Player, v0.1.2.10 FLTK MPG123 GUI Player 의 장족의 발전이 있었다는 느낌이 드는 버젼이 되어 가고 있어서 블로그에 지속적으로 소개 해 볼까 합니다. 현재 (당연히) 미흡하지만 파일을 끌어서 목록을 만들고, 그 목록을 선택 해서 음악을 재생 할 수 있습니다. 다만, 내부적으로 모든 음악은 100% shuffle 로 돌기 때문에 목록상 다음에 있는 곡이 재생될 확률은 매우 낮습니다. Shuffle 알고리즘은 C++ 의 STL 내 shuffle 을 사용 하고 있기 때문에, 아마 Apple 측이 사용하는 알고리즘과 그리 다르진 않아 보입니다. 윈도우 탐색기 에서 재생 하려는 음악 폴더를 끌어다 올리면 위 이미지 처럼 바뀝니다. 여기에 바로 폴더들을 놓으면 자동으로 안쪽에 있는 모든 mp3 를 찾아 목록을 만듭니..
FM123GUIP v0.1.1.8 한글 지원. Version 0.1.1.8 업데이트를 기록 합니다.내부적으로 버퍼를 10중으로 만들 수 있으나, 버퍼를 나눠 쓰는거 자체가 문제가 되는거 같기도 해서, WASAPI 로 갈아 타는게 나을거 같은 생각이 듭니다. 버젼 0.1.1.7 로 부터 개선 된 점은 실행시 목록이 만들어 져 있을 경우 바로 재생을 시작 합니다. 그외 나머지는 0.1.1.7으로 부터 그리 큰 변경이 없습니다. 다운로드는 아래에 0.1.1.7 을 대체 해 두었으나, 64bit 용 이며, 특정 CPU 에서는 구동이 되지 않을 수 있습니다. 버젼 0.1.1.7 부터 우리말 지원을 기본으로 OS 에 따라서 (불완전 한 방법) 지원 하도록 하였습니다. 사실 별거 없고, OS가 Korean 이면 맑은고딕을 기본으로 쓰도록 한것 이기에 대단한건 없..
FLTK MPG 123 GUI 디버깅 ... 어찌 100% 개인취향으로 만들고 있는 FLTK MPG123 GUI Player 를 그래픽 디버깅을 하고 있습니다만, 따로 Fl_BorderlessWindow 라고 만들어 쓰는 것을 개선, 좀 더 쌈빡한 그래픽으로 만들기 위해 노력 중 입니다. 현재 컨트롤 버튼을 넣고 왼쪽 아님 오른쪽 쯤에 목록 수정 추가 등등을 집어 넣을 생각 입니다. 물론 목록은 현재 재생 화면을 이미지로 저장후 Blur 처리 한 배경으로 만들고 그 위에 목록을 그리는 매우 Apple 스러운 디자인으로 갈 생각 입니다만 .. 기타 잡다 정보를 숨길수 있는 기능도 집어 넣어서, 위 아래 크기를 줄이면 자동으로 Album Cover art 와 컨트롤만 딱 뜨도록 만들었습니다만, 저 경우 Album 정보를 Cover art 위에 그려야 ..
FLTK MPG123 GUI Player 0.1.0.5 tech demo FLTK-1.3.4-1-ts 64bit 및 fl_imgtk, libmpg123 를 붙여 만든 플레이어의 테크 데모 입니다. Windows 64bit 에서만 제대로 동작을 하며, 일부 CPU 에서는 동작 하지 않을 수 있습니다. (일부 명령어 지원을 처리 하지 못함) MinGW-W64 6.3.0 + OpenMP 로 빌드 하였으며, 이 테크 데모는 64bit 로만 동작 하는 바이너리가 들어 있습니다. 다운로드 소스 코드https://github.com/rageworx/koobar2K/ 소스코드는 아주 오래전에 Foobar2K 를 패러디 해서 koobar2K 를 만들까 했습니다만, 이게 다 부질 없는 것이라 ffmpeg 으로 때울까 하다가 여러 문제 등으로 그냥 libmpg123 만 붙여서 만들게 되었습니다...
FLTK MPG123 GUI Player 0.1.0.2 FLTK 1.3.4-1(-ts) 64bit 와, fl_imgtk + mpg123 64bit build DirectX 를 결합한 오디오 플레이어를 진행 중 입니다. 물론 mpg123 을 쓰기 때문에 mp3 까지만 재생 하기 때문에 fl_imgtk 로 GUI 효과를 주는 것에 대한 테크 데모 정도가 될 듯 합니다. 아래는 금일 까지 만든 데모의 실행 파일 입니다. 64bit Windows 에서만 구동 됩니다. 실제 mp3 를 test.mp3 란 이름으로 바꾸고 실행 파일과 함께 구동 하시면 album art 가 있을 경우 배경 이미지와, 이미지 전체를 자동으로 읽어 오게 됩니다. 음악 컨트롤은 따로 만들지 않았고, 설계가 Mac OS X 나, Linux 모두 구동 되도록 만들고 있기 때문에 내부에 audio..
Coming soon FLTK MPG123 GUI player. 이전부터 만들고 싶었던 아이폰 플레이어 답게 생긴 mp3 player 를 만들기 시작 했습니다. fl_imgtk 에서 만든 그래픽 처리 등등을 이용해서 앨범아트에 알파 마스크 씌어서 주변을 깍을수도 있고, 특정 크기로 모두 통일시킬수도 있고 하다 보니 제한된 영역 내에서 멋지게 표시되게 할 수 있는 처리 방법을 사용할 수 있게 되었습니다. 현재 mpg123 에 Direct X sound 를 붙여 보았는데, 나쁘진 않습니다만, DirectX 가 현재 할당된 윈도우의 포커스가 벗어 나게 되면 소리가 안나오는 관계로 결국 WASAPI 나 다른 방법을 써야 하게 되었습니다. 아니면 DXsound initialize 할때 다른 handle 을 넘겨 주면 되는건지 .. ??? 아무튼 GUI 는 그리 제 능력 안의 ..
ALSA + mpg123 출력시 clicking noise 발생 대처 방안. 요즘 대부분의 Embedded Linux 환경이 좋아져서 개발 환경이 매우 용이해 졌습니다. 심지어 F*사 쪽은 Kernel 을 3.14 로 올리는 시대가 왔습니다만, 모든 환경이 그렇게 우아하게 좋을리가 없다는게 또 현실이 아닐까 합니다. 근래 하는 일 중에 ALSA 를 통해 mp3 를 재생 하는 일을 수행 하는 중, 다음과 같은 문제가 발생 하였습니다.사용된 mpg123 은 최신 버젼 (1.17.0 )mpg123 를 ALSA 와 붙이기 위해 mpg123 재생 예제를 응용하여 pthread로 play 부분을 처리.실제 Windows 환경에서는 문제가 발생 하지 않지만 Embedded Linux 상에서 mpg123 으로 decode 된 PCM buffer 를 재생시 최초 와 재생 종료시 clicking ..