{"id":15091509,"url":"https://github.com/vitrivr/cineast","last_synced_at":"2025-04-11T16:53:21.705Z","repository":{"id":3716189,"uuid":"50677285","full_name":"vitrivr/cineast","owner":"vitrivr","description":"Cineast is a multi-feature content-based mulitmedia retrieval engine. It is capable of retrieving images, audio- and video sequences as well as 3d models based on edge or color sketches, textual descriptions and example objects.","archived":false,"fork":false,"pushed_at":"2024-07-08T10:55:42.000Z","size":20176,"stargazers_count":58,"open_issues_count":22,"forks_count":49,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-03-25T13:01:50.323Z","etag":null,"topics":["3d","audio","images","java","oas","retrieval","video"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vitrivr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-01-29T17:03:10.000Z","updated_at":"2024-12-20T00:17:10.000Z","dependencies_parsed_at":"2023-07-06T16:16:21.310Z","dependency_job_id":"b9df9ee2-344a-4fe4-8d97-1cd8665842fe","html_url":"https://github.com/vitrivr/cineast","commit_stats":{"total_commits":2639,"total_committers":39,"mean_commits":67.66666666666667,"dds":0.7480106100795756,"last_synced_commit":"4aacc010aea802af3b0d7e83c6db9fdc1d466b08"},"previous_names":[],"tags_count":41,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitrivr%2Fcineast","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitrivr%2Fcineast/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitrivr%2Fcineast/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitrivr%2Fcineast/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vitrivr","download_url":"https://codeload.github.com/vitrivr/cineast/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248443575,"owners_count":21104450,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d","audio","images","java","oas","retrieval","video"],"created_at":"2024-09-25T10:41:28.934Z","updated_at":"2025-04-11T16:53:21.683Z","avatar_url":"https://github.com/vitrivr.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![vitrivr - cineast](https://img.shields.io/static/v1?label=vitrivr\u0026message=cineast\u0026color=blue\u0026logo=github)](https://github.com/vitrivr/cineast)\n[![GitHub release](https://img.shields.io/github/release/vitrivr/cineast?include_prereleases=\u0026sort=semver\u0026color=2ea44f)](https://github.com/vitrivr/cineast/releases/)\n[![License](https://img.shields.io/badge/License-MIT-blueviolet)](LICENSE)\n[![swagger-editor](https://img.shields.io/badge/open--API-in--editor-green.svg?style=flat\u0026label=Open-Api%20(Release))](https://editor.swagger.io/?url=https://raw.githubusercontent.com/vitrivr/cineast/master/docs/openapi.json)\n[![swagger-editor](https://img.shields.io/badge/open--API-in--editor-green.svg?style=flat\u0026label=Open-Api%20(Dev))](https://editor.swagger.io/?url=https://raw.githubusercontent.com/vitrivr/cineast/dev/docs/openapi.json)\n[![Java CI with Gradle](https://github.com/vitrivr/cineast/workflows/Java%20CI%20with%20Gradle/badge.svg)](https://github.com/vitrivr/cineast/actions?query=workflow:\"Java+CI+with+Gradle\")\n\n# Cineast\nCineast is a multi-feature content-based multimedia retrieval engine. It is capable of retrieving images, audio- and video sequences as well as 3d models based on edge or color sketches, sketch-based motion queries and example objects.\nCineast is written in Java and uses [CottontailDB](https://github.com/vitrivr/cottontaildb) as a storage backend.\n\n## Building Cineast\nCineast can be built using [Gradle](https://gradle.org/). It needs Java 17+. Building and running it is as easy as\n```\ngit clone https://github.com/vitrivr/cineast.git\ncd cineast\n./gradlew getExternalFiles cineast-runtime:shadowJar\njava -jar cineast-runtime/build/libs/cineast-runtime-x.x-all.jar cineast.json\n ```\n\nFor more setup information, consult our [Wiki](https://github.com/vitrivr/cineast/wiki)\n\n## Docker image\n\nThere is a Docker image available [on Docker\nHub](https://hub.docker.com/r/vitrivr/cineast).\n\nYou can run the CLI with:\n```\ndocker run vitrivr/cineast cli cineast.json help\n```\n\nTo change the configuration you can use a bind mount, e.g. to run the API\nserver with custom configuration file cineast.json in the current directory:\n```\ndocker run -v \"$PWD\"/cineast.json:/opt/cineast/cineast.json:ro,Z vitrivr/cineast api cineast.json\n```\n\n## Generate OpenApi Specification\n\nIf you need to rebuild the OpenApi Specification (OAS), there is a gradle task for this purpose:\n\n```\n./gradlew -PcineastConfig=\u003cpath/to/your/config\u003e generateOpenApiSpecs\n```\n\nYou can omit `-PcineastConfig`, then the default config (`cineast.json`) is used.\nThe generated OAS is stored at `docs/openapi.json`\n\n\n## Prerequisites\n### System dependencies\n* git\n* JDK 17 or higher\n\n### 3D rendering\nFor 3D rendering (required in order to support 3D models) you either need a video card or Mesa 3D. The JOGL library supports both. Rendering on Headless devices has been successfully tested with Xvfb. The following steps are required to enable\n3D rendering support on a headless device without video card (Ubuntu 16.04.1 LTS)\n\n1. Install Mesa 3D (should come pre-installed on Ubuntu). Check with `dpkg -l | grep mesa`\n2. Install Xvfb:\n\n ```\n $\u003e sudo apt-get install xvfb\n ```\n \n3. Start a new screen:\n\n ```\n $\u003e sudo Xvfb :1 -ac -screen 0 1024x768x24 \u0026\n ```\n \n4. Using the new screen, start Cineast:\n\n ```\n $\u003e DISPLAY=:1 java -jar cineast.jar -3d\n ```\n \nThe -3d option will perform a 3D test. If it succeeds, cineast should generate a PNG image depicting two coloured\ntriangles on a black background.\n\n### Versioning\n\nCineast uses [semantic versioning](https://semver.org). See [the releases page](https://github.com/vitrivr/cineast/releases).\n\n### Code Style\n\nCineast primarily uses the [Google Java Styleguide](https://google.github.io/styleguide/javaguide.html).\nPlease use the file supplied in the `docs/` folder\n\nTo automatically apply the styleguide in [IntelliJ IDEA](https://www.jetbrains.com/idea/) go to_File_ -\u003e _Settings_ -\u003e _Editor_ -\u003e _Code Style_ -\u003e _Java_ and import the supplied file via the gear icon.\n\nYou can also use [Eclipse](https://www.eclipse.org/) for development and use Google's [styleguide for eclipse](https://github.com/google/styleguide/blob/gh-pages/eclipse-java-google-style.xml).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvitrivr%2Fcineast","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvitrivr%2Fcineast","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvitrivr%2Fcineast/lists"}