當前位置:首頁 » 安卓系統 » librtmpforandroid

librtmpforandroid

發布時間: 2022-06-18 18:32:03

⑴ 怎麼讓android上的播放器支持rtmp流

android原生的播放器是不支持rtmp流的,你可以利用三方播放器庫
如ijkplayer vlc等

⑵ android如何播放RTMP協議視頻流

Adboe的Red5流媒體伺服器免費並且是開源的,與Flash搭配的時候可謂是天生一對,但使用Java和Android作為客戶端調用卻可謂一波三折。

Adobe的Red5源代碼里有一個RTMPClient的類,這個類在使用上其實不復雜,但卻沒辦法成功調用。觀察日誌,發現是連接成功後在開始創建流的時候,服務端把連接斷開了。我能想到的解釋就是可能公司現在所使用的Red5伺服器的版本與這個RTMPClient不兼容。

⑶ librtmp 推流 支持 多線程 么

來自rtmpmp.c
rtmpmp 可使用命令
直播流
rtmpmp.exe -o savename.flv -r rtmp://127.0.0.1/live/testlive -v
點播流
rtmpmp.exe -o savename.flv -r rtmp://127.0.0.1/vod/test.flv

直播需要加-v參數
下面是從中提取的代碼,進行直播或點播流的錄制

伺服器使用FMS測試通過
crtmpserver需注意超時設置

#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <stdio.h>
#include <signal.h>
#include <stdint.h>
#include "librtmp/rtmp_sys.h"
#include "librtmp/log.h"
#pragma comment(lib,"ws2_32.lib")
#pragma comment(lib,"librtmp.lib")
int InitSockets()
{
WORD version;
WSADATA wsaData;
version = MAKEWORD(1, 1);
return (WSAStartup(version, &wsaData) == 0);
}

void CleanupSockets()
{
WSACleanup();
}

int main()

⑷ android有沒有能播放rtmp流媒體的開源播放器代碼

安卓設備上的播放——Vitamio安卓設備3.0以上原生支持hls,但是不支持rtmp,為了統一以及低版本兼容,可以使用第三方的一個播放器庫——vitamio。hls播放如果僅需要在移動設備的WebView上播放,可以選擇使用html中嵌入hls播放。如下html能夠在所有Safari或者安卓3.0以上的WebView上播放。這樣就不需要使用第三方的播放器。VideoJS如果要讓網頁支持在所有瀏覽器上播放,就需要使用第三方的播放器。VideoJs是一個較好的播放器庫,完全免費,不像JWPlayer一樣需要付費才能使用一些高級功能。

⑸ libRTMP 如何跟伺服器之間發送接收文字信息

先要看看你是用哪種郵箱!
對應的郵箱不同,其填寫的方式也稍微有些不同,不過大致都是一樣
郵箱收發伺服器(pop3\stmp)設置

163郵箱

POP3伺服器:POP.163.COM

SMTP伺服器:SMTP.163.COM

yahoo郵箱

注意:yahoo在foxmail 4.1以上的版本設置如下:( outlook 不行喲~)

POP3伺服器:pop.mail.yahoo.com.cn

SMTP伺服器:smtp.mail.yahoo.com.cn

sohu郵箱

POP3伺服器:pop3.sohu.com

SMTP伺服器:smtp.sohu.com

Gmail郵箱

第一步:要手動配置: POP3伺服器是pop.gmail.com

SMTP伺服器是smtp.gmail.com

第二步:使用自動配置文件 http://toolbar.google.com/gmail-helper/GmailConfig.exe

這樣就OK嘍~ 可以發送和接收 Gmail 郵件了。

QQ郵箱

POP3伺服器:pop.qq.com

SMTP伺服器:smtp.qq.com

SMTP伺服器需要身份驗證。

網址 http://www.fc0769.cn

⑹ 有沒有實現rtmp協議的android和iOS開源庫

開源的沒有 不開源好用的倒是有一個,叫:
Vitamio

用過,很好使。

---------------------------------------------------------

是一款Android與iOS平台上的全能多媒體開發框架
特點:(1) 全面支持硬體解碼與GPU渲染
(2) 能夠流暢播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常見格式的視頻
(3) 在Android與iOS上跨平台支持 MMS, RTSP, RTMP, HLS(m3u8)等常見的多種視頻流媒體協議,包括點播與直播。

⑺ 跪求好心人分享librtmp.dll免費版軟體免費百度雲資源

鏈接:

提取碼:ntbj

軟體名稱:librtmp.dll免費版

語言:簡體中文

大小:741KB

類別:系統工具

介紹:librtmp.dll是電腦中一個必不可缺的dll文件,許多的游戲或者軟體運行都需要它的支持,如果沒有這個文件可能會造成一些游戲或者軟體運行不了。缺少就快來下載吧!

⑻ 有大俠在ios下編譯過librtmp的庫文件么

編譯librtmp需要先編譯openssl,因為librtmp依賴openssl

首先編譯openssl:

把以下內容保存為shell腳本

#!/bin/sh

VERSION="1.0.1h" #指明openssl的版本信息,比如下載的是openssl-1.0.1h.tar.gz那麼對於就填寫1.0.1h
SDKVERSION="7.1" #指明ios sdk的版本號,目前最新的是7.1,不清楚的同學可以 ls /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/ 一下看看自己的iPhoneOS7.1.sdk是不是7.1

CURRENTPATH=`pwd`
ARCHS="i386 armv7 armv7s arm64"
BUILDPATH="${CURRENTPATH}/build"
LIBPATH="${CURRENTPATH}/lib"
INCLUDEPATH="${CURRENTPATH}/include"
SRCPATH="${CURRENTPATH}/src"
LIBSSL="libssl.a"
LIBCRYPTO="libcrypto.a"
DEVELOPER=`xcode-select -print-path`

if [ ! -d "$DEVELOPER" ]; then
echo "xcode path is not set correctly $DEVELOPER does not exist (most likely because of xcode > 4.3)"
echo "run"
echo "sudo xcode-select -switch <xcode path>"
echo "for default installation:"
echo "sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer"
exit 1
fi

set -e
if [ ! -e openssl-${VERSION}.tar.gz ]; then
echo "Downloading openssl-${VERSION}.tar.gz"
curl -O http://www.openssl.org/source/openssl-${VERSION}.tar.gz
else
echo "Using openssl-${VERSION}.tar.gz"

# Remove the source directory if already exist
rm -rf "${SRCPATH}/openssl-${VERSION}"
fi

mkdir -p "${SRCPATH}"
mkdir -p "${BUILDPATH}"
mkdir -p "${LIBPATH}"
mkdir -p "${INCLUDEPATH}"

tar zxf openssl-${VERSION}.tar.gz -C "${SRCPATH}"
cd "${SRCPATH}/openssl-${VERSION}"

LIBSSL_REPO=""
LIBCRYPTO_REPO=""

for ARCH in ${ARCHS}
do
if [ "${ARCH}" == "i386" ];
then
PLATFORM="iPhoneSimulator"
else
sed -ie "s!static volatile sig_atomic_t intr_signal;!static volatile intr_signal;!" "crypto/ui/ui_openssl.c"
PLATFORM="iPhoneOS"
fi
export CROSS_TOP="${DEVELOPER}/Platforms/${PLATFORM}.platform/Developer"
export CROSS_SDK="${PLATFORM}${SDKVERSION}.sdk"
export BUILD_TOOLS="${DEVELOPER}"

echo "Building openssl-${VERSION} for ${PLATFORM} ${SDKVERSION} ${ARCH}"
echo "Please stand by..."

export CC="${BUILD_TOOLS}/usr/bin/gcc -arch ${ARCH}"

OUTPATH="${BUILDPATH}/openssl-${PLATFORM}${SDKVERSION}-${ARCH}.sdk"
mkdir -p "${OUTPATH}"
LOG="${OUTPATH}/build-openssl-${VERSION}.log"

if [[ "$VERSION" =~ 1.0.0. ]]; then
./Configure BSD-generic32 --openssldir="${OUTPATH}" > "${LOG}" 2>&1
else
./Configure iphoneos-cross --openssldir="${OUTPATH}" > "${LOG}" 2>&1
fi

# add -isysroot to CC=
sed -ie "s!^CFLAG=!CFLAG=-isysroot ${CROSS_TOP}/Platforms/${PLATFORM}.platform/Developer/SDKs/${CROSS_SDK} -miphoneos-version-min=7.0 !" "Makefile"

make >> "${LOG}" 2>&1
make install >> "${LOG}" 2>&1
make clean >> "${LOG}" 2>&1

LIBSSL_REPO+="${OUTPATH}/lib/${LIBSSL} "
LIBCRYPTO_REPO+="${OUTPATH}/lib/${LIBCRYPTO} "
done

echo "Build library..."
lipo -create ${LIBSSL_REPO}-output ${LIBPATH}/${LIBSSL}
lipo -create ${LIBCRYPTO_REPO}-output ${LIBPATH}/${LIBCRYPTO}

cp -R ${BUILDPATH}/openssl-iPhoneSimulator${SDKVERSION}-i386.sdk/include/openssl ${INCLUDEPATH}/
echo "Building done."
echo "Cleaning up..."
rm -rf ${SRCPATH}/openssl-${VERSION}
echo "Done."

保存腳本,添加腳本的執行許可權(chmod +x 腳本名稱)

運行腳本
不出意外是可以編譯成功的,如果失敗,可以以打開那個log文件,查看失敗原因。

編譯成功以後,把lib文件和include拷貝到你的librtmp目錄(可以新建一個空得librtmp目錄),在librtmp目錄裡面同樣寫一個shell腳本,腳本如下:

#!/bin/sh

SDKVERSION="7.1" #這里跟openssl的地方是一個意思

CURRENTPATH=`pwd`
ARCHS="i386 armv7 armv7s arm64"

LIBPATH="${CURRENTPATH}/lib" #這里就是剛才拷貝過來的目錄,不要修改,因為librtmp最後生成的也放到了這個下面
INCLUDEPATH="${CURRENTPATH}/include" #這里就是剛才拷貝過來的目錄,不要修改,因為librtmp最後生成的也放到了這個下面

LIBRTMPREPO="git://git.ffmpeg.org/rtmpmp"
BUILDPATH="${CURRENTPATH}/build"
SRCPATH="${CURRENTPATH}/src"
LIBRTMP="librtmp.a"
DEVELOPER=`xcode-select -print-path`

if [ ! -d "$DEVELOPER" ]; then
echo "xcode path is not set correctly $DEVELOPER does not exist (most likely because of xcode > 4.3)"
echo "run"
echo "sudo xcode-select -switch <xcode path>"
echo "for default installation:"
echo "sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer"
exit 1
fi

# Check whether openssl has already installed on the machine or not.
# libcrypt.a / libssl.a

set -e
echo 'Check openssl installation'
if [ -f "${LIBPATH}/libcrypto.a" ] && [ -f "${LIBPATH}/libssl.a" ] && [ -d "${INCLUDEPATH}/openssl" ]; then
echo 'Openssl for iOS has already installed, no need to install openssl'
else
echo 'Openssl for iOS not found, will install openssl for iOS'
./build-libssl.sh
echo 'Succeeded to install openssl'
fi

# Download librtmp source code from git repository
# We assuem the user already installed git client.
echo 'Clone librtmp git repository'

# Remove the directory if already exist
rm -rf "${SRCPATH}/rtmpmp"

git clone ${LIBRTMPREPO} src/rtmpmp
cd "${SRCPATH}/rtmpmp/librtmp"

LIBRTMP_REPO=""

for ARCH in ${ARCHS}
do
if [ "${ARCH}" == "i386" ];
then
PLATFORM="iPhoneSimulator"
else
PLATFORM="iPhoneOS"
fi
export CROSS_TOP="${DEVELOPER}/Platforms/${PLATFORM}.platform/Developer"
export CROSS_SDK="${PLATFORM}${SDKVERSION}.sdk"
export BUILD_TOOLS="${DEVELOPER}"

echo "Building librtmp for ${PLATFORM} ${SDKVERSION} ${ARCH}"
echo "Please wait..."

# add arch to CC=
sed -ie "s!AR=\$(CROSS_COMPILE)ar!AR=/usr/bin/ar!" "Makefile"
sed -ie "/CC=\$(CROSS_COMPILE)gcc/d" "Makefile"
echo "CC=\$(CROSS_COMPILE)gcc -arch ${ARCH}" >> "Makefile"

export CROSS_COMPILE="${DEVELOPER}/usr/bin/"
export XCFLAGS="-isysroot ${CROSS_TOP}/SDKs/${CROSS_SDK} -miphoneos-version-min=7.0 -I${INCLUDEPATH} -arch ${ARCH}"

if [ "${ARCH}" == "i386" ];
then
export XLDFLAGS="-L${LIBPATH} -arch ${ARCH}"
else
export XLDFLAGS="-isysroot ${CROSS_TOP}/SDKs/${CROSS_SDK} -miphoneos-version-min=7.0 -L${LIBPATH} -arch ${ARCH}"
fi
OUTPATH="${BUILDPATH}/librtmp-${PLATFORM}${SDKVERSION}-${ARCH}.sdk"
mkdir -p "${OUTPATH}"
LOG="${OUTPATH}/build-librtmp.log"

make SYS=darwin >> "${LOG}" 2>&1
make SYS=darwin prefix="${OUTPATH}" install >> "${LOG}" 2>&1
make clean >> "${LOG}" 2>&1

LIBRTMP_REPO+="${OUTPATH}/lib/${LIBRTMP} "
done

echo "Build universal library..."
lipo -create ${LIBRTMP_REPO}-output ${LIBPATH}/${LIBRTMP}

mkdir -p ${INCLUDEPATH}
cp -R ${BUILDPATH}/librtmp-iPhoneSimulator${SDKVERSION}-i386.sdk/include/ ${INCLUDEPATH}/

echo "Building done."
echo "Cleaning up..."

rm -rf ${SRCPATH}/rtmpmp
echo "Done."

保存腳本

運行腳本

不出意外就編譯成功了。

⑼ android rtmp推流怎麼實現

就拿使用ZEGO即構的實時音視頻產品舉個例子,要想實現android rtmp推流操作,可以通過調用開始推流 startPublishingStream 的 API 介面,向遠端用戶發送本端的音視頻流。如果不需要繼續推流,可調用 stopPublishingStream 停止推流(開始推流前,建議開發者在開始推流前對推流參數、本地預覽視圖進行設置)。

熱點內容
網吧u盤拒絕訪問 發布:2025-05-16 14:13:50 瀏覽:260
無線網檢查網路配置是怎麼回事 發布:2025-05-16 14:04:03 瀏覽:220
網路爬蟲python代碼 發布:2025-05-16 14:03:26 瀏覽:516
汽車小組件怎麼弄到安卓桌面 發布:2025-05-16 13:51:12 瀏覽:220
linuxg編譯器下載 發布:2025-05-16 13:50:58 瀏覽:776
centosc編譯器 發布:2025-05-16 13:50:17 瀏覽:948
安卓手機如何變換桌面 發布:2025-05-16 13:39:33 瀏覽:515
sql存儲過程命令 發布:2025-05-16 13:17:54 瀏覽:146
用紙做解壓小玩具西瓜 發布:2025-05-16 13:04:09 瀏覽:936
區域網xp無法訪問win7 發布:2025-05-16 13:03:58 瀏覽:943