LogoLogo
  • About
  • Installation
  • Update & migration
  • Configuration
    • Hostname
    • TLS / HTTPS
    • Database
    • Logging
    • API Security
    • Storage
      • Disk
      • In-memory
      • S3
    • RTMP
    • SRT
    • FFmpeg
    • Sessions
    • Metrics
    • Router
    • Debug
  • API Swagger-Documentation
  • API Clients
  • Web-Interface
  • Guides
    • Beginner
    • RTMP
    • SRT
    • Filesystems
  • General
    • Prometheus metrics
  • API
    • Login
    • Config
    • Log
    • Filesystem
      • Disk
      • In-memory
      • S3
    • Metrics
    • Sessions
    • Profiling
    • Ping
  • API / FFmpeg
    • Process
      • Command
      • Metadata
      • State
      • Probe
      • Report
    • Skills
    • Widget (Website)
  • API / RTMP
    • RTMP
  • API / SRT
    • SRT
  • Development
    • Architecture
    • Coding
    • Custom Docker images
    • Benchmark
    • Support
Powered by GitBook
On this page

Was this helpful?

Export as PDF
  1. API / FFmpeg

Skills

PreviousReportNextWidget (Website)

Last updated 2 years ago

Was this helpful?

Skills denote the capabilities of the used FFmpeg binary. It includes version information, supported input and output protocols, available hardware accelerators, supported formats for muxing and demuxing, filters, and available input and output devices.

Read

Example:

curl http://127.0.0.1:8080/api/v3/skills \
   -H 'accept: application/json' \
   -X GET
from core_client import Client

client = Client(
    base_url="http://127.0.0.1:8080"
)
client.login()

core_ffmpeg_skills = client.v3_skills_get()
print(core_ffmpeg_skills)
import (
    "fmt"
    "github.com/datarhei/core-client-go/v16"
)

client, _ := coreclient.New(coreclient.Config{
    Address: "https://127.0.0.1:8080",
})

skills, err := client.Skills()
fmt.Printf("%+v\n", skills)

Description:

Reload

Reloading the skills might be necessary if you plug e.g. an USB device. It will only show up in the list of available devices if they are probed again.

Example:

curl http://127.0.0.1:8080/api/v3/skills/reload \
   -H 'accept: application/json' \
   -X GET
from core_client import Client

client = Client(
    base_url="http://127.0.0.1:8080"
)
client.login()

client.v3_skills_reload()
import (
    "fmt"
    "github.com/datarhei/core-client-go/v16"
)

client, _ := coreclient.New(coreclient.Config{
    Address: "https://127.0.0.1:8080",
})

err := client.SkillsReload()
if err != nil {
    ...
}

skills, err := client.Skills()
fmt.Printf("%+v\n", skills)

FFmpeg capabilities

get

List all detected FFmpeg capabilities.

Authorizations
Responses
200
OK
application/json
get
GET /v3/skills HTTP/1.1
Host: api
Authorization: YOUR_API_KEY
Accept: */*
200

OK

{
  "codecs": {
    "audio": [
      {
        "decoders": [
          "text"
        ],
        "encoders": [
          "text"
        ],
        "id": "text",
        "name": "text"
      }
    ],
    "subtitle": [
      {
        "decoders": [
          "text"
        ],
        "encoders": [
          "text"
        ],
        "id": "text",
        "name": "text"
      }
    ],
    "video": [
      {
        "decoders": [
          "text"
        ],
        "encoders": [
          "text"
        ],
        "id": "text",
        "name": "text"
      }
    ]
  },
  "devices": {
    "demuxers": [
      {
        "devices": [
          {
            "extra": "text",
            "id": "text",
            "media": "text",
            "name": "text"
          }
        ],
        "id": "text",
        "name": "text"
      }
    ],
    "muxers": [
      {
        "devices": [
          {
            "extra": "text",
            "id": "text",
            "media": "text",
            "name": "text"
          }
        ],
        "id": "text",
        "name": "text"
      }
    ]
  },
  "ffmpeg": {
    "compiler": "text",
    "configuration": "text",
    "libraries": [
      {
        "compiled": "text",
        "linked": "text",
        "name": "text"
      }
    ],
    "version": "text"
  },
  "filter": [
    {
      "id": "text",
      "name": "text"
    }
  ],
  "formats": {
    "demuxers": [
      {
        "id": "text",
        "name": "text"
      }
    ],
    "muxers": [
      {
        "id": "text",
        "name": "text"
      }
    ]
  },
  "hwaccels": [
    {
      "id": "text",
      "name": "text"
    }
  ],
  "protocols": {
    "input": [
      {
        "id": "text",
        "name": "text"
      }
    ],
    "output": [
      {
        "id": "text",
        "name": "text"
      }
    ]
  }
}

Refresh FFmpeg capabilities

get

Refresh the available FFmpeg capabilities.

Authorizations
Responses
200
OK
application/json
get
GET /v3/skills/reload HTTP/1.1
Host: api
Authorization: YOUR_API_KEY
Accept: */*
200

OK

{
  "codecs": {
    "audio": [
      {
        "decoders": [
          "text"
        ],
        "encoders": [
          "text"
        ],
        "id": "text",
        "name": "text"
      }
    ],
    "subtitle": [
      {
        "decoders": [
          "text"
        ],
        "encoders": [
          "text"
        ],
        "id": "text",
        "name": "text"
      }
    ],
    "video": [
      {
        "decoders": [
          "text"
        ],
        "encoders": [
          "text"
        ],
        "id": "text",
        "name": "text"
      }
    ]
  },
  "devices": {
    "demuxers": [
      {
        "devices": [
          {
            "extra": "text",
            "id": "text",
            "media": "text",
            "name": "text"
          }
        ],
        "id": "text",
        "name": "text"
      }
    ],
    "muxers": [
      {
        "devices": [
          {
            "extra": "text",
            "id": "text",
            "media": "text",
            "name": "text"
          }
        ],
        "id": "text",
        "name": "text"
      }
    ]
  },
  "ffmpeg": {
    "compiler": "text",
    "configuration": "text",
    "libraries": [
      {
        "compiled": "text",
        "linked": "text",
        "name": "text"
      }
    ],
    "version": "text"
  },
  "filter": [
    {
      "id": "text",
      "name": "text"
    }
  ],
  "formats": {
    "demuxers": [
      {
        "id": "text",
        "name": "text"
      }
    ],
    "muxers": [
      {
        "id": "text",
        "name": "text"
      }
    ]
  },
  "hwaccels": [
    {
      "id": "text",
      "name": "text"
    }
  ],
  "protocols": {
    "input": [
      {
        "id": "text",
        "name": "text"
      }
    ],
    "output": [
      {
        "id": "text",
        "name": "text"
      }
    ]
  }
}
  • Read
  • GETFFmpeg capabilities
  • Reload
  • GETRefresh FFmpeg capabilities