{"id":13989027,"url":"https://github.com/subinps/VCPlayerBot","last_synced_at":"2025-07-22T10:30:54.438Z","repository":{"id":37897393,"uuid":"404805104","full_name":"subinps/VCPlayerBot","owner":"subinps","description":"Telegram bot to stream videos in telegram voicechat for both groups and channels. Supports live steams, YouTube videos and telegram media. Supports scheduling streams, recording and many more.","archived":false,"fork":false,"pushed_at":"2023-10-09T19:22:27.000Z","size":214,"stargazers_count":536,"open_issues_count":28,"forks_count":1393,"subscribers_count":16,"default_branch":"main","last_synced_at":"2024-11-29T07:37:09.683Z","etag":null,"topics":["bot","hacktoberfest","hacktoberfest-accepted","hacktoberfest2021","telegram","telegram-bot","videoplayer"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/subinps.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2021-09-09T17:04:50.000Z","updated_at":"2024-11-28T22:59:37.000Z","dependencies_parsed_at":"2024-01-15T16:52:43.816Z","dependency_job_id":null,"html_url":"https://github.com/subinps/VCPlayerBot","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/subinps/VCPlayerBot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subinps%2FVCPlayerBot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subinps%2FVCPlayerBot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subinps%2FVCPlayerBot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subinps%2FVCPlayerBot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/subinps","download_url":"https://codeload.github.com/subinps/VCPlayerBot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subinps%2FVCPlayerBot/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266474964,"owners_count":23934846,"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","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["bot","hacktoberfest","hacktoberfest-accepted","hacktoberfest2021","telegram","telegram-bot","videoplayer"],"created_at":"2024-08-09T13:01:29.258Z","updated_at":"2025-07-22T10:30:54.120Z","avatar_url":"https://github.com/subinps.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# VCPlayerBot\n\n![GitHub Repo stars](https://img.shields.io/github/stars/subinps/VCPlayerBot?color=blue\u0026style=flat)\n![GitHub issues](https://img.shields.io/github/issues/subinps/VCPlayerBot)\n![GitHub pull requests](https://img.shields.io/github/issues-pr/subinps/VCPlayerBot)\n![GitHub contributors](https://img.shields.io/github/contributors/subinps/VCPlayerBot?style=flat)\n![GitHub forks](https://img.shields.io/github/forks/subinps/VCPlayerBot?style=flat)\n\nTelegram bot to stream videos in telegram voicechat for both groups and channels. Supports live streams, YouTube videos and telegram media. With record stream support, Schedule streams, and many more.\n\n## Config Vars:\n### Mandatory Vars\n1. `API_ID` : Get From [my.telegram.org](https://my.telegram.org/)\n2. `API_HASH` : Get from [my.telegram.org](https://my.telegram.org)\n3. `BOT_TOKEN` : [@Botfather](https://telegram.dog/BotFather)\n4. `SESSION_STRING` : Generate From here [![GenerateStringName](https://img.shields.io/badge/repl.it-generateStringName-yellowgreen)](https://repl.it/@subinps/getStringName)\n5. `CHAT` : ID of Channel/Group where the bot plays Music.\n\n## Recommended Optional Vars\n\n1. `DATABASE_URI`: MongoDB database Url, get from [mongodb](https://cloud.mongodb.com). This is an optional var, but it is recomonded to use this to experiance the full features.\n2. `HEROKU_API_KEY`: Your heroku api key. Get one from [here](https://dashboard.heroku.com/account/applications/authorizations/new)\n3. `HEROKU_APP_NAME`: Your heroku apps name.\n4. `FILTERS`: Filter the search for channel play. Channel play means you can play all the files in a purticular channel using /cplay command. Current filters are `video document` . For searching audio files use `video document audio` . for video only search , use `video` and so on.\n\n### Optional Vars\n1. `LOG_GROUP` : Group to send Playlist, if CHAT is a Group()\n2. `ADMINS` : ID of users who can use admin commands.\n3. `STARTUP_STREAM` : This will be streamed on startups and restarts of bot. You can use either any STREAM_URL or a direct link of any video or a Youtube Live link. You can also use YouTube Playlist.Find a Telegram Link for your playlist from [PlayList Dumb](https://telegram.dog/DumpPlaylist) or get a PlayList from [PlayList Extract](https://telegram.dog/GetAPlaylistbot). The PlayList link should in form `https://t.me/DumpPlaylist/xxx`.\n4. `REPLY_MESSAGE` : A reply to those who message the USER account in PM. Leave it blank if you do not need this feature. (Configurable through bot if mongodb added.)\n5. `ADMIN_ONLY` : Pass `True` If you want to make /play command only for admins of `CHAT`. By default /play is available for all.(Configurable through bot if mongodb added.)\n6. `DATABASE_NAME`: Database name for your mongodb database.\n7. `SHUFFLE` : Make it `False` if you dont want to shuffle playlists. (Configurable through bot if mongodb added.)\n8. `EDIT_TITLE` : Make it `False` if you do not want the bot to edit video chat title according to playing song. (Configurable through bot if mongodb added.)\n9. `RECORDING_DUMP` : A Channel ID with the USER account as admin, to dump video chat recordings.\n10. `RECORDING_TITLE`: A custom title for your videochat recordings.\n11. `TIME_ZONE` : Time Zone of your country, by default IST\n12. `IS_VIDEO_RECORD` : Make it `False` if you do not want to record video, and only audio will be recorded.(Configurable through bot if mongodb added.)\n13. `IS_LOOP` ; Make it `False` if you do not want 24 / 7 Video Chat. (Configurable through bot if mongodb added.)\n14. `IS_VIDEO` : Make it `False` if you want to use the player as a musicplayer without video. (Configurable through bot if mongodb added.)\n15. `PORTRAIT`: Make it `True` if you want the video recording in portrait mode. (Configurable through bot if mongodb added.)\n16. `DELAY` : Choose the time limit for commands deletion. 10 sec by default.\n18. `QUALITY` : Customize the quality of video chat, use one of `high`, `medium`, `low` . \n19. `BITRATE` : Bitrate of audio (Not recommended to change).\n20. `FPS` : Fps of video to be played (Not recommended to change.)\n\n\n\n## Requirements\n- Python 3.8 or Higher.\n- [FFMpeg](https://www.ffmpeg.org/).\n\n\n\n## Deploy to Heroku\n\n[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://telegram.dog/XTZ_HerokuBot?start=c3ViaW5wcy9WQ1BsYXllckJvdCBtYWlu)\n\n## Deploy to Railway\n\u003cp\u003e\u003ca href=https://github.com/subinps/VCPlayerBot/issues/7\u003e \u003cimg src=\"https://img.shields.io/badge/Deploy%20To%20Railway-blueviolet?style=for-the-badge\u0026logo=railway\" width=\"200\"\"/\u003e\u003c/a\u003e\u003c/p\u003e\n\n \n## Deploy to VPS\n\n```sh\ngit clone https://github.com/subinps/VCPlayerBot\ncd VCPlayerBot\npip3 install -r requirements.txt\n# install node js\nsudo bash install_node.sh\n# \u003cCreate Variables appropriately (.env [optional])\u003e\npython3 main.py\n```\n\n## Features\n\n- Playlist, queue.\n- Zero downtime in playing.\n- Supports Video Recording.\n- Supports Scheduling voicechats.\n- Cool UI for controling the player.\n- Customizabe to audio or video.\n- Custom quality for video chats.\n- Supports Play from Youtube Playlist.\n- Change VoiceChat title to current playing song name.\n- Supports Live streaming from youtube\n- Play from telegram file supported.\n- Starts Radio after if no songs in playlist.\n- Automatic restart even if heroku restarts. (Configurable)\n- Support exporting and importing playlist.\n\n### Note\n\n[Note To A So Called Dev](https://telegram.dog/subin_works/203): \n\nKanging this codes and and editing a few lines and releasing a V.x  or an [alpha](https://telegram.dog/subin_works/204), beta , gama branches of your repo wont make you a Developer.\nFork the repo and edit as per your needs.\n\n## LICENSE\n\n- [GNU General Public License](./LICENSE)\n\n\n## CREDITS\n\n- [Laky-64](https://github.com/Laky-64) for [py-tgcalls](https://github.com/pytgcalls/pytgcalls)\n- [Dan](https://github.com/delivrance) for [Pyrogram](https://github.com/pyrogram/pyrogram)\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubinps%2FVCPlayerBot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsubinps%2FVCPlayerBot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubinps%2FVCPlayerBot/lists"}