找回密码
 加入怎通
查看: 515|回复: 3

[IT资讯] 直播APP源码,视频直播系统

[复制链接]
yb2016 发表于 2017-03-13 13:46:30 | 显示全部楼层 |阅读模式
- J( `+ q* S$ J, Z% e$ [
直播行业现在是越发的火热,人们对于视频直播的热情也是久盛不衰,云豹直播的技术人员在这里就教大家编写一个小小的视频直播片段。
Windows Media Player 系列(不同面板样式)
图片1.jpg
引用内容
媒体播放器的外观界面
在网页中,你可以通过相关属性来**体播放器的哪些部分出现,哪些部分不出现。3 ^' L: @+ h0 I% T: ~6 |
媒体播放器包括如下元素:
3 Z. s% o# c6 ZVideo Display Panel:视频显示面板;
/ {( m$ _" r5 X$ ^) A  _Video Border:视频边框;1 K% T% \+ d0 _1 c
Closed Captioning Display Panel;字幕显示面板;
2 N1 ?2 u* z# V1 A* sTrack Bar;搜索栏;$ C  c3 ^  |7 Z. t1 ?
Control Bar with Audio and Position Controls:带有声音和位置控制的控制栏;- u; }0 K7 i& e8 Z: g5 E6 y+ X" {
Go To Bar:转到栏;
1 _! F2 {, S( }9 R: RDisplay Panel:显示面板;
) C# V7 d+ b$ fStatus Bar:状态栏;
. f/ b- N9 ^, L下面的属性用来决定显示哪一个元素:
& U, G$ ^: L  M9 O* V% `2 tShowControls 属性:是否显示控制栏(包括播放控件及可选的声音和位置控件);
, f5 T* h$ }" c# aShowAudioControls 属性:是否在控制栏显示声音控件(静音按钮和音量滑块);
, C; ~1 K# a+ }ShowPositionControls 属性:是否在控制栏显示位置控件(包括向后跳进、快退、快进、向前跳进、预览播放列表中的每个剪辑);
  J3 ~9 Y0 [# {7 e4 Y) i) n& CShowTracker 属性:是否显示搜索栏;4 s3 p  x( u' F
ShowDisplay 属性:是否显示显示面板(用来提供节目与剪辑的信息);9 _# J2 \8 g; y" C
ShowCaptioning 属性:是否显示字幕显示面板;
/ O3 ~) n* m# V  ~3 g; `ShowGotoBar 属性:是否显示转到栏;
. y0 X/ d. ?6 {1 u6 g2 ~ShowStatusBar 属性:是否显示状态栏;
播放列表
媒体播放器提供下面的方法来访问播放列表中的剪辑:
+ t! @2 t9 a1 J) d. oNext 方法,跳到节目(播放列表)中的下一个剪辑;" _8 U) w9 G  ?: V5 E" J
Previous 方法,跳回到节目中的上一个剪辑;, n! T4 k2 y% S6 ~* s0 E
媒体播放器的一个特性是能够预览节目中的每一个剪辑,使用如下属性:9 ?$ D2 f0 H8 e# x+ K
PreviewMode 属性,决定媒体播放器当前是否处于预览模式;# g9 F6 z, S/ [  @' K0 c
CanPreview 属性,决定媒体播放器能否处于预览模式;
9 {$ }& ^4 y! X9 C7 B  F* mwindows 媒体元文件中,可以为每一个剪辑指定预览时间——PREVIEWDURATION,如果没有指定,那么默认的预览时间是10秒钟。( h# ], x# W% S: X$ `5 u# K5 y
你也可以用Windows 媒体元文件来添加 watermarks banners,元文件也支持插入广告时的无间隙流切换。
节目信息
使用 GetMediaInfoString 方法可以返回相关剪辑或节目的如下信息:* a/ N3 S# j0 v7 t0 E+ b' P1 ?
文件名:File name
% ?3 j& [1 ^4 e9 N标题:Title
) g, {/ R0 a" M: z) M描述:Description/ k' n' }. i3 N
作者:Author
* h* Y* W5 y: `. y- _" w  z; C版权:Copyright
) C0 g+ S: r. f# _级别:Rating% w  c7 [- j0 [! W# \
URLslogo iconwatermarkbanner的地址
4 N& V( N- ]! j剪辑信息可以放在媒体文件中,也可以放在Windows 媒体元文件中,或者两者都放。如果在元文件中指定了剪辑信息,那么用 GetMediaInfoString 方法返回的就是元文件中的信息,而不会返回剪辑中包含的信息。
; B( F/ F- s. X8 w; X' r4 w& |在元文件中,附加信息可以放置在每一个剪辑或节目的 PARAM标签中。你可以为每个剪辑添加任意多个 PARAM 标签,用来存储自定义的信息或链接到相关站点。在 PARAM 标签中的信息可以通过 GetMediaParameter 方法来访问。. t8 ^3 P9 B7 k0 ?
下面的属性返回有关大小和时间的信息:
) g, `% g4 ~3 N- wImageSourceHeightImageSourceWidth:返回图像窗口的显示尺寸;. X0 C  w: ~$ T  v9 t
Duration 属性,返回剪辑的长度(), 要检测这个属性是否包含有效的数值,请检查IsDurationValid 属性。(对于广播的视频,其长度是不可预知的)
字幕
你可以用 .smi 文件来为你的节目添加字幕。媒体播放器支持下面的属性来处理字幕:8 j+ r# J2 R! `; g3 x
SAMIFileName 属性,指定 .smi 文件的名字;$ U* l8 L  _: y
SAMILang 属性,指定字幕的语言(如果没有指定则使用第一种语言)
! z& i3 I' C1 d- r* X$ [SAMIStyle 属性,指定字幕的文字大小和样式;
0 p" I% F. p( }4 W" VShowCaptioning 属性,决定是否显示字幕显示面板;
脚本命令
伴随音频、视频流,你可以在流媒体文件中加入脚本命令。脚本命令是多媒体流中与特定时间同步的多对Unicode串。第一个串标识待发命令的类型,第二个串指定要执行的命令。
  m  I: E! Q; ^  u% L( Q/ a3 K4 A* L当流播放到与脚本相关的时间时,控件会向网页发送一个 ScriptCommand事件,然后由事件处理进程来响应这个事件。脚本命令字符串会作为脚本命令事件的参数传递给事件处理器。
8 Y  k" F1 \& y8 J' ?/ E" s: e媒体播放器会自动处理下面类型的内嵌脚本命令:
& o& k, B4 ~! E2 ?/ {0 N! W2 |) B1) URL型命令:当媒体播放器控件收到一个URL型的命令时,指定的URL会被装载到用户的默认浏览器。如果媒体播放器嵌在一个分帧的HTML文件中,URL页可以装载到由脚本命令指定的帧内。如果脚本命令没有指定一个帧,将由 DefaultFrame 属性决定将 URL 页装入哪一帧。! C) \" ]( n. k9 M, A8 [0 h
你可以通过设置 InvokeURLs 属性来决定是否自动处理 URL 型的脚本命令。如果这个属性的值为 false ,媒体播放器控件将忽视 URL型命令。但是脚本命令事件仍会触发,这就允许你有选择地处理 URL 型命令。
2 @1 G/ U" n- A; _URL 型命令指定的是 URL 的相对地址。基地址是由 BaseURL属性指定的。媒体播放器控件传送的脚本命令事件的命令参数是链接好的地址。7 h& s1 _; J+ {" ]
2) FILENAME型命令:当媒体播放器控件收到一个FILENAME型的命令时,它将 FileName属性设置为脚本命令提供的文件,之后媒体播放器会打开这个文件开始播放。 媒体播放器控件总是自动处理 FILENAME 型命令,不象 URL 型命令,它们不能被禁止。
0 b2 r0 m+ ]* |6 c5 D0 |* w3) TEXT型命令:当媒体播放器控件收到一个 TEXT型的命令时,它会将命令的内容显示在控件的字幕窗口。内容可以是纯文本的,也可以是 HTML
8 z+ v! @+ g' B% A6 r; I. E4) EVENT型命令:当媒体播放器控件收到一个 EVENT型的命令时,它会在媒体元文件中搜索 EVENT 元素的 NAME 属性。如果 NAME 属性与脚本命令中的第二个字符串匹配,媒体播放器控件就执行包含在 EVENT 元素中的条目。
* }# q/ X9 t9 c3 K  ^: f5) OPENEVENT型命令:当媒体播放器控件收到一个 OPENEVENT型的命令时,它会在媒体元文件中检查 EVENT 元素,并打开匹配的标题,但不播放,直到收到来自 EVENT型命令的同名真实事件。
云豹直播 .jpg
简单的视频直播就是如此浩大的编写过程,可想而知,一整套直播APP源码需要耗费多少的时间,各位有意向进入直播市场的小伙伴们还是选择云豹直播(官方Q Q3561248084),直接搭建起属于自己的直播平台吧!

& w& L) r. ^+ z2 c3 x3 p. _

暂时无法加载帖子列表

回复

使用道具 举报

江枫渔火 发表于 2017-03-13 13:48:02 | 显示全部楼层
说的很对,江枫渔火支持
回复

使用道具 举报

q475364102 发表于 2025-11-10 08:41:47 | 显示全部楼层
这个思路很新颖,打开了新世界的大门,谢谢分享
回复

使用道具 举报

南昌人流价格 发表于 2026-09-18 06:55:53 | 显示全部楼层
分析得很透彻,很多细节都说到点子上了~
回复

使用道具 举报

    您需要登录后才可以回帖 登录 | 加入怎通

    本版积分规则

    QQ|手机版|小黑屋|网站地图|真牛社区 ( 苏ICP备2023040716号-2 )

    GMT+8, 2026-9-18 08:31 , Processed in 0.045661 second(s), 29 queries , Gzip On.

    免责声明:本站信息来自互联网,本站不对其内容真实性负责,如有侵权等情况请联系420897364#qq.com(把#换成@)删除。

    Powered by Discuz! X3.5

    快速回复 返回顶部 返回列表