All Projects → Abson → Camerartmpsdk

Abson / Camerartmpsdk

CameraRtmpSDK is an audio and video based on ffmpeg SDK, is committed to creating a cross-platform audio and video sampling, encoding, mixing, protocol upload program.

Projects that are alternatives of or similar to Camerartmpsdk

Conv2mp4 Ps
This Powershell script will recursively search through a user-defined file path and convert all videos of user-specified file types to MP4 with H264 video and AAC audio using ffmpeg. The purpose of this script is to reduce transcoding CPU load on a media server like Plex or Emby and increase video compatibility across platforms.
Stars: ✭ 97 (+2.11%)
Mutual labels:  ffmpeg, aac, h264
Trinity
android video record editor muxer sdk
Stars: ✭ 609 (+541.05%)
Mutual labels:  ffmpeg, aac, h264
Androidffmpeg
android 读取摄像头和麦克风,使用rtmp推流
Stars: ✭ 298 (+213.68%)
Mutual labels:  ffmpeg, aac, h264
Analysisavp
音视频学习,相关文件格式/协议分析。h264 nalu aac adts flv
Stars: ✭ 38 (-60%)
Mutual labels:  ffmpeg, aac, h264
laav
Asynchronous Audio / Video Library for H264 / MJPEG / OPUS / AAC / MP2 encoding, transcoding, recording and streaming from live sources
Stars: ✭ 50 (-47.37%)
Mutual labels:  h264, aac
smart rtmpd
RTMP server, smart, compact, high performance(c, c++), high concurrency, easy to maintain, easy to deploy, (supports multiple operating systems Windows and Linux, ARM, FreeBSD)
Stars: ✭ 159 (+67.37%)
Mutual labels:  h264, ffmpeg
dji-ryze-tello
Pythonic DJI Ryze Tello Workbench
Stars: ✭ 17 (-82.11%)
Mutual labels:  h264, ffmpeg
Libstreaming
A solution for streaming H.264, H.263, AMR, AAC using RTP on Android
Stars: ✭ 3,167 (+3233.68%)
Mutual labels:  aac, h264
conv2mp4-py
Python script that recursively searches through a user-defined file path and converts all videos of user-specified file types to MP4 with H264 video and AAC audio using ffmpeg. If a conversion failure is detected, the script re-encodes the file with HandbrakeCLI. Upon successful encoding, Plex libraries are refreshed and source file is deleted. …
Stars: ✭ 37 (-61.05%)
Mutual labels:  h264, aac
Ffmpeg Build Script
The FFmpeg build script provides an easy way to build a static FFmpeg on OSX and Linux with non-free codecs included.
Stars: ✭ 290 (+205.26%)
Mutual labels:  ffmpeg, h264
Mpc Hc
MPC-HC's main repository. For support use our Trac: https://trac.mpc-hc.org/
Stars: ✭ 3,567 (+3654.74%)
Mutual labels:  ffmpeg, h264
live-stream-media-source-extensions
Live stream h264 encoded mp4 video on media source extensions using ffmpeg, node.js, socket.io, and express. Works in chrome, firefox, safari, and android. Not iOS compatible. Work has moved to mse-live-player repo =>
Stars: ✭ 24 (-74.74%)
Mutual labels:  h264, ffmpeg
RtmpPublishKit
rtmp publish kit for android , encode with mediacodec
Stars: ✭ 106 (+11.58%)
Mutual labels:  h264, aac
camstudio
CamStudio fork
Stars: ✭ 83 (-12.63%)
Mutual labels:  h264, ffmpeg
demuxer
A tool for demux ts/mp4/flv by typescript. Support HEVC/AVC/AAC codec
Stars: ✭ 108 (+13.68%)
Mutual labels:  h264, aac
Nwjs Ffmpeg Prebuilt
FFmpeg prebuilt binaries for NW.js / Chromium
Stars: ✭ 465 (+389.47%)
Mutual labels:  ffmpeg, h264
Ffmediaelement
FFME: The Advanced WPF MediaElement (based on FFmpeg)
Stars: ✭ 733 (+671.58%)
Mutual labels:  ffmpeg, h264
Swiftffmpeg
A Swift wrapper for the FFmpeg API
Stars: ✭ 243 (+155.79%)
Mutual labels:  ffmpeg, h264
epsAndroidPlayer
易居PGC直播Saas平台Android播放器SDK,Android平台原生播放器,性能高,画质好,直播延迟最低可达1秒。支持HLS,RTMP等流媒体协议,支持H264,AAC音视频编码技术。可灵活设置画幅,显示方向。
Stars: ✭ 13 (-86.32%)
Mutual labels:  h264, aac
Voukoder
Provides an easy way to include the FFmpeg encoders in other windows applications.
Stars: ✭ 436 (+358.95%)
Mutual labels:  ffmpeg, h264

Which is CameraRtmpSDK

CameraRtmpSDK is an audio and video based on ffmpeg SDK, is committed to creating a cross-platform audio and video sampling, encoding, mixing, protocol upload program. But all current creation is based on the iOS platform and CameraRtmpSDK was coded by c++.

Blog to Introduction

利用FFmpeg 开发音视频流(三)——将视频 YUV 格式编码成 H264

深入浅出理解视频编码H264结构

i did write a blog to introduce this project , hope it can help you to comprehend it.

How to Use

If you want to test Vido (H.264编码)

self.session = [[ABSSimpleSession alloc] initWithVideoSize:CGSizeMake(640, 480)
                                                       fps:30
                                                   bitrate:1000000
                                   useInterfaceOrientation:true
                                               cameraState:ABSCameraStateFront previewFrame:self.view.bounds];
self.session.delegate = self;
[self.view addSubview:self.session.previewView];

[self.session startVideoRecord];

// close it 
[self.session endVidoeRecord];

if you want to test audio for AAC (AAC编码)

self.session = [[ABSSimpleSession alloc] initWithAudioSampleRate:16000 bitRate:16000
                                                      channelCount:2 encode:ABSEncodeTypeAAC];
self.session.delegate = self;
[self.session startAudioRecord];

// close it 
[self.session endAudioRecord];

if you want to test audio for Opus (Opus编码)

self.session = [[ABSSimpleSession alloc] initWithAudioSampleRate:16000 bitRate:16000
                                                      channelCount:2 encode:ABSEncodeTypeOpus];
self.session.delegate = self;
[self.session startAudioRecord];

// close it 
[self.session endAudioRecord];

if you want to test amix(混音) of ffmpeg

NSString* path1 = [[NSBundle mainBundle] pathForResource:@"audio1.wav" ofType:nil];
NSString* path2 = [[NSBundle mainBundle] pathForResource:@"audio2.wav" ofType:nil];
NSString* outputPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, true).lastObject 
stringByAppendingPathComponent:@"audio127.wav"];

const char* input1 = [path1 cStringUsingEncoding:NSUTF8StringEncoding];
const char* input2 = [path2 cStringUsingEncoding:NSUTF8StringEncoding];
const char* output = [outputPath cStringUsingEncoding:NSUTF8StringEncoding];

std::vector<std::string> inputs{std::string(input1), std::string(input2)};

PushSDK::ffmpeg::audio_mixer mixer(inputs, output);
mixer.StartMixAudio();

Update

2017.11.1 Update project to runnable and and modify test API, enjoy it.

2018.1.2 Fix audio encode bug, make it encode correctly,enjoy it.

Feature

As far as this moment, This project looks very confusing,i will take more time make it more usable. hope you can supports me, leaving you stars, Thanks.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].