Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/harrypython/itsagramlive
It's A Gram Live is a Python script that create a Instagram Live and provide you a rtmp server and stream key to streaming using sofwares like OBS-Studio.
https://github.com/harrypython/itsagramlive
help-wanted instagram instagram-live needs-work obs-studio python-script
Last synced: 2 months ago
JSON representation
It's A Gram Live is a Python script that create a Instagram Live and provide you a rtmp server and stream key to streaming using sofwares like OBS-Studio.
- Host: GitHub
- URL: https://github.com/harrypython/itsagramlive
- Owner: harrypython
- License: gpl-3.0
- Archived: true
- Created: 2020-04-03T17:04:32.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2022-07-30T01:11:29.000Z (over 2 years ago)
- Last Synced: 2024-03-14T19:06:01.787Z (10 months ago)
- Topics: help-wanted, instagram, instagram-live, needs-work, obs-studio, python-script
- Language: Python
- Homepage:
- Size: 85.9 KB
- Stars: 175
- Watchers: 13
- Forks: 52
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
![GitHub](https://img.shields.io/github/license/harrypython/itsagramlive)
![PyPI](https://img.shields.io/pypi/v/itsagramlive)
![GitHub tag (latest by date)](https://img.shields.io/github/v/tag/harrypython/itsagramlive?label=Version)# It's A Gram Live
It's A Gram Live is a Python script that create a Instagram Live and provide you a rtmp server and stream key to streaming using sofwares like [OBS-Studio](https://obsproject.com/) or [XSplit Broadcaster](https://www.xsplit.com/).
## Installation
```bash
pip install ItsAGramLive
```## Usage
```python
from ItsAGramLive import ItsAGramLivelive = ItsAGramLive()
# or if you want to pre-define the username and password without args
# live = ItsAGramLive(
# username='foo',
# password='bar'
# )live.start()
``````bash
python3 live_broadcast.py -u yourInstagramUsername -p yourPassword -proxy user:password@ip:port
```The output will give you the RTMP Server address and the Stream key (automatically copied to your clipboard)
### Usage with FFMPEG
Note: It is not possible use commands like ```chat``` or ```wave``` with this script.
The live will be finish when the file finish the streaming.
```python
import argparse
import subprocess
from ItsAGramLive import ItsAGramLive
parser = argparse.ArgumentParser(add_help=True)
parser.add_argument("-u", "--username", type=str, help="username", required=True)
parser.add_argument("-p", "--password", type=str, help="password", required=True)
parser.add_argument("-f", "--file", type=str, help="File", required=True)
args = parser.parse_args()
live = ItsAGramLive(username=args.username, password=args.password)
if live.login():
print("You'r logged in")
if live.create_broadcast():
if live.start_broadcast():
ffmpeg_cmd = "ffmpeg " \
"-rtbufsize 256M " \
"-re " \
"-i '{file}' " \
"-acodec libmp3lame " \
"-ar 44100 " \
"-b:a 128k " \
"-pix_fmt yuv420p " \
"-profile:v baseline " \
"-s 720x1280 " \
"-bufsize 6000k " \
"-vb 400k " \
"-maxrate 1500k " \
"-deinterlace " \
"-vcodec libx264 " \
"-preset veryfast " \
"-g 30 -r 30 " \
"-f flv '{stream_server}{stream_key}'".format(
file=args.file,
stream_server=live.stream_server,
stream_key=live.stream_key
)
print('CTRL+C to quit.')
try:
subprocess.call(ffmpeg_cmd, shell=True)
except KeyboardInterrupt:
pass
except Exception as error:
print(error)
live.end_broadcast()
live.end_broadcast()
``````bash
python3 live_broadcast_ffmpeg.py -u yourInstagramUsername -p yourPassword -f /path/to/video/file.mp4
```
## Commands- **info**
Show details about the broadcast
- **mute comments**
Prevent viewers from commenting
- **unmute comments**
Allow viewers do comments
- **viewers**
List viewers
- **chat**
Send a comment
- **pin**
Send a comment and pin it
- **unpin**
Remove a pinned comment
- **comments**
Get the list of comments
- **wave**
Wave to a viewer
- **stop**
Terminate broadcast## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
## License
[ GNU GPLv3 ](https://choosealicense.com/licenses/gpl-3.0/)
## Buy me a coffee
## Instagram Bot
Check my Instagram Bot: [BurbnBot](https://github.com/harrypython/BurbnBot)