Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • P PyAV
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 37
    • Issues 37
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 26
    • Merge requests 26
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • PyAV
  • PyAV
  • Issues
  • #1101
Closed
Open
Issue created Mar 13, 2023 by XenonZinc@XenonZinc

Allow SWS_CS_BT2020 to Colorspace

Overview

FFmpeg support BT2020 colorspace,the enum is SWS_CS_BT2020。

Existing FFmpeg API

in file libswscale/swscale.h

#define SWS_CS_ITU709         1
#define SWS_CS_FCC            4
#define SWS_CS_ITU601         5
#define SWS_CS_ITU624         5
#define SWS_CS_SMPTE170M      5
#define SWS_CS_SMPTE240M      7
#define SWS_CS_DEFAULT        5
#define SWS_CS_BT2020         9

Expected PyAV API

in file av/video/reformatter.pyx

Colorspace = define_enum('Colorspace', __name__, (

    ('ITU709', lib.SWS_CS_ITU709),
    ('FCC', lib.SWS_CS_FCC),
    ('ITU601', lib.SWS_CS_ITU601),
    ('ITU624', lib.SWS_CS_ITU624),
    ('SMPTE170M', lib.SWS_CS_SMPTE170M),
    ('SMPTE240M', lib.SWS_CS_SMPTE240M),
    ('DEFAULT', lib.SWS_CS_DEFAULT),
    ('BT2020', lib.SWS_CS_BT2020),

    # Lowercase for b/c.
    ('itu709', lib.SWS_CS_ITU709),
    ('fcc', lib.SWS_CS_FCC),
    ('itu601', lib.SWS_CS_ITU601),
    ('itu624', lib.SWS_CS_SMPTE170M),
    ('smpte240', lib.SWS_CS_SMPTE240M),
    ('default', lib.SWS_CS_DEFAULT),
    ('bt2020', lib.SWS_CS_BT2020),

))

in file include/libswscale/swscale.pxd

cdef int SWS_CS_BT2020

Example:

frame.reformat(src_colorspace='bt2020', dst_colorspace=’itu709', format="bgr24")
Assignee
Assign to
Time tracking