pcfl


Namepcfl JSON
Version 1.0.0 PyPI version JSON
download
home_pagehttps://github.com/skywinz/pcfl
SummaryPinao Compensator for FLstudio
upload_time2023-12-03 05:23:20
maintainer
docs_urlNone
authorrecoma
requires_python>=3.10,<4.0
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # pcfl

![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/skywinz/pcfl/test-ubuntu.yml?label=test-ubuntu)
![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/skywinz/pcfl/test-windows.yml?label=test-windows)
[![CI](https://github.com/skywinz/pcfl/actions/workflows/ci.yml/badge.svg)](https://github.com/skywinz/pcfl/actions/workflows/ci.yml)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pcfl?logo=python&logoColor=white)
![PyPI - Version](https://img.shields.io/pypi/v/pcfl)
![GitHub](https://img.shields.io/github/license/skywinz/pcfl)





* MuseScore4에서 FL Studio에 피아노 페달(CC64)이 포함된 미디파일을 임포트할 때, 페달 사이의 간격을 벌려 정상적으로 임포트를 하게 하는
전처리 라이브러리 및 프로그램 입니다.
* 페달이 연속으로 붙어있는 미디파일을 FL Studio에 임포트 하면 그 두 개의 페달이 하나로 합쳐저 불협화음을 발생시킵니다.
* PCFL는 이를 막기 위해 두 페달 사이의 간격을 3 ticks 정도 벌립니다.
* [이전 구현체](https://github.com/skywinz/pcfl-legacy)에서는 Musescore3까지만 대응할 수 있고 Musescore4 부터 대응이 불가능 하여 새 구현체를 구현하게 되었습니다.


## Installation (As User)
```shell
$ pip install pcfl
```

## Installation (As Dev)
```shell
$ git clone https://github.com/skywinz/pcfl.git
$ poetry install
```

## Usage
### As CLI
```shell
$ python -m pcfl -f input.mid -o output.mid
```

### As Library
```python
import mido
from pcfl import pcfl, pcfl_by_file

# 파일을 사용할 경우
output_filepath = pcfl_by_file("input.mid", "output.mid")

# mido.MidiFile을 사용할 경우
midi = mido.MidiFile("input.mid")
pcfl(midi)
```

### ThirdParty
* [mido](https://github.com/mido/mido)
  * 이전 legacy 버전에서 사용했던 [music21](https://github.com/cuthbertLab/music21)대신 mido를 사용했습니다.
  * 기본 midi R/W 말고도 많은 분석 툴까지 포함되어 상당히 무거운 music21과는 달리 mido는 단순히 midi 데이터를 R/W하는 데만 집중되어 있어 훨씬 가볍습니다.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/skywinz/pcfl",
    "name": "pcfl",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.10,<4.0",
    "maintainer_email": "",
    "keywords": "",
    "author": "recoma",
    "author_email": "seokbong60@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/fe/a2/a337e9d967c4c4439db7867b055250c3394511e38523091e5c7c00248937/pcfl-1.0.0.tar.gz",
    "platform": null,
    "description": "# pcfl\n\n![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/skywinz/pcfl/test-ubuntu.yml?label=test-ubuntu)\n![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/skywinz/pcfl/test-windows.yml?label=test-windows)\n[![CI](https://github.com/skywinz/pcfl/actions/workflows/ci.yml/badge.svg)](https://github.com/skywinz/pcfl/actions/workflows/ci.yml)\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pcfl?logo=python&logoColor=white)\n![PyPI - Version](https://img.shields.io/pypi/v/pcfl)\n![GitHub](https://img.shields.io/github/license/skywinz/pcfl)\n\n\n\n\n\n* MuseScore4\uc5d0\uc11c FL Studio\uc5d0 \ud53c\uc544\ub178 \ud398\ub2ec(CC64)\uc774 \ud3ec\ud568\ub41c \ubbf8\ub514\ud30c\uc77c\uc744 \uc784\ud3ec\ud2b8\ud560 \ub54c, \ud398\ub2ec \uc0ac\uc774\uc758 \uac04\uaca9\uc744 \ubc8c\ub824 \uc815\uc0c1\uc801\uc73c\ub85c \uc784\ud3ec\ud2b8\ub97c \ud558\uac8c \ud558\ub294\n\uc804\ucc98\ub9ac \ub77c\uc774\ube0c\ub7ec\ub9ac \ubc0f \ud504\ub85c\uadf8\ub7a8 \uc785\ub2c8\ub2e4.\n* \ud398\ub2ec\uc774 \uc5f0\uc18d\uc73c\ub85c \ubd99\uc5b4\uc788\ub294 \ubbf8\ub514\ud30c\uc77c\uc744 FL Studio\uc5d0 \uc784\ud3ec\ud2b8 \ud558\uba74 \uadf8 \ub450 \uac1c\uc758 \ud398\ub2ec\uc774 \ud558\ub098\ub85c \ud569\uccd0\uc800 \ubd88\ud611\ud654\uc74c\uc744 \ubc1c\uc0dd\uc2dc\ud0b5\ub2c8\ub2e4.\n* PCFL\ub294 \uc774\ub97c \ub9c9\uae30 \uc704\ud574 \ub450 \ud398\ub2ec \uc0ac\uc774\uc758 \uac04\uaca9\uc744 3 ticks \uc815\ub3c4 \ubc8c\ub9bd\ub2c8\ub2e4.\n* [\uc774\uc804 \uad6c\ud604\uccb4](https://github.com/skywinz/pcfl-legacy)\uc5d0\uc11c\ub294 Musescore3\uae4c\uc9c0\ub9cc \ub300\uc751\ud560 \uc218 \uc788\uace0 Musescore4 \ubd80\ud130 \ub300\uc751\uc774 \ubd88\uac00\ub2a5 \ud558\uc5ec \uc0c8 \uad6c\ud604\uccb4\ub97c \uad6c\ud604\ud558\uac8c \ub418\uc5c8\uc2b5\ub2c8\ub2e4.\n\n\n## Installation (As User)\n```shell\n$ pip install pcfl\n```\n\n## Installation (As Dev)\n```shell\n$ git clone https://github.com/skywinz/pcfl.git\n$ poetry install\n```\n\n## Usage\n### As CLI\n```shell\n$ python -m pcfl -f input.mid -o output.mid\n```\n\n### As Library\n```python\nimport mido\nfrom pcfl import pcfl, pcfl_by_file\n\n# \ud30c\uc77c\uc744 \uc0ac\uc6a9\ud560 \uacbd\uc6b0\noutput_filepath = pcfl_by_file(\"input.mid\", \"output.mid\")\n\n# mido.MidiFile\uc744 \uc0ac\uc6a9\ud560 \uacbd\uc6b0\nmidi = mido.MidiFile(\"input.mid\")\npcfl(midi)\n```\n\n### ThirdParty\n* [mido](https://github.com/mido/mido)\n  * \uc774\uc804 legacy \ubc84\uc804\uc5d0\uc11c \uc0ac\uc6a9\ud588\ub358 [music21](https://github.com/cuthbertLab/music21)\ub300\uc2e0 mido\ub97c \uc0ac\uc6a9\ud588\uc2b5\ub2c8\ub2e4.\n  * \uae30\ubcf8 midi R/W \ub9d0\uace0\ub3c4 \ub9ce\uc740 \ubd84\uc11d \ud234\uae4c\uc9c0 \ud3ec\ud568\ub418\uc5b4 \uc0c1\ub2f9\ud788 \ubb34\uac70\uc6b4 music21\uacfc\ub294 \ub2ec\ub9ac mido\ub294 \ub2e8\uc21c\ud788 midi \ub370\uc774\ud130\ub97c R/W\ud558\ub294 \ub370\ub9cc \uc9d1\uc911\ub418\uc5b4 \uc788\uc5b4 \ud6e8\uc52c \uac00\ubccd\uc2b5\ub2c8\ub2e4.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Pinao Compensator for FLstudio",
    "version": "1.0.0",
    "project_urls": {
        "Homepage": "https://github.com/skywinz/pcfl",
        "Repository": "https://github.com/skywinz/pcfl"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9efb8de035bb841a814bf67f9a3e58efb009580e7efdcaf7d27f02d7845c21f8",
                "md5": "57a86fced1e957058a177a1bebae3a75",
                "sha256": "84760189ed461b5e6d80b291f63d8379226a9963d65080e2fb7ccbe618d33527"
            },
            "downloads": -1,
            "filename": "pcfl-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "57a86fced1e957058a177a1bebae3a75",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10,<4.0",
            "size": 7074,
            "upload_time": "2023-12-03T05:23:19",
            "upload_time_iso_8601": "2023-12-03T05:23:19.359763Z",
            "url": "https://files.pythonhosted.org/packages/9e/fb/8de035bb841a814bf67f9a3e58efb009580e7efdcaf7d27f02d7845c21f8/pcfl-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fea2a337e9d967c4c4439db7867b055250c3394511e38523091e5c7c00248937",
                "md5": "08a6063733ff440e7915d72cff682d99",
                "sha256": "72234276af66cf7bd0da03e8939516db79b42b0aadf4962223849e91649d68e5"
            },
            "downloads": -1,
            "filename": "pcfl-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "08a6063733ff440e7915d72cff682d99",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10,<4.0",
            "size": 4946,
            "upload_time": "2023-12-03T05:23:20",
            "upload_time_iso_8601": "2023-12-03T05:23:20.783900Z",
            "url": "https://files.pythonhosted.org/packages/fe/a2/a337e9d967c4c4439db7867b055250c3394511e38523091e5c7c00248937/pcfl-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-12-03 05:23:20",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "skywinz",
    "github_project": "pcfl",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pcfl"
}
        
Elapsed time: 0.31446s