「javaspeex转码」Java 转码

博主:adminadmin 2023-01-19 03:48:10 353

本篇文章给大家谈谈javaspeex转码,以及Java 转码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

如何为一个直播流配置转码功能

对硬件和驱动的要求

Wowza Transcoder 只能在64位的Windows和Linux系统上运行。此外也不支持Mac OS X

系统。

Wowza Transcoder在64位的Windows Server 上运行时, 系统必须先具备以下功能:

.NET Framework 3.5.1

Desktop Experience

硬件加速

Wowza Transcoder

支持Windows 和 LinuxIntel系统上的Quick Sync 和 NVIDIA NVENC 加速编码以及Windows系统上的NVIDIA CUDA

加速编码。 下面的文章介绍了关于这些技术的更多硬件要求:

Server

specifications for Intel Quick Sync acceleration

Intel

Quick Sync acceleration on Linux

Server

specifications for NVIDIA NVENC and NVIDIA CUDA acceleration

NVIDIA

NVENC accelerated encoding on Linux

注意:

你应该在尝试硬件加速转码技术之前,先使用默认的MainConcept软件转码技术。MainConcept软件使用任何硬件加速功能。关于如何调试硬件编码的更多信息,请阅读如何验证Wowza

Transcoder正在使用哪一种编码技术。

在较新版本的Windows系统上,当Wowza Media Server作为系统服务运行时,由于Session 0

Isolation的安全原因,Intel Quick Sync 和 NVIDIA CUDA

硬件加速功能可能无法使用。要了解更多关于如何解决这个问题,请阅读作为Windows系统服务运行时,Transcoder插件如何使用硬件加速功能。

当使用Windows远程桌面时, Quick Sync 加速可能无法使用。

支持的音视频编码格式

为了将输入流(被称作"channels")进行转码或转换为多个不同输出码率的输出流,Wowza

Transcoder 插件提供了很多功能,它支持以下音视品编码格式:

输入流:

视频解码: H.264, MPEG-2, MPEG-4 Part 2

音频解码: AAC, MP3, MPEG-1 Layer 1/2, Speex, G.711 (μ-law and

A-law)

输出流:

视频编码: H.264, H.263v2

音频编码: AAC

注意:

对于mp3格式的音频,系统支持以下采样率: 48000, 44100, and 32000

Instream CEA-608 隐藏字幕(closed caption)可以通过Wowza Transcoder 插件采用Apple HLS

流媒体被传送给基于iOS的终端设备。要了解更多信息,请阅读如何为HLS流媒体配置隐藏字幕(closed captioning)。

当使用硬件加速特性时,不支持H.263 视频输出。

关于Transcoder模版

Wowza Transcoder

使用一个模版系统来为输出流创建转码后的输出流,这个模版可以控制各种编码参数。在[install-dir]/transcoder/templates目录下有三个默认的模版文件,基本满足了常规的转码要求:

transrate.xml, transcode.xml, 以及 audioonly.xml。

要了解更多关于个性化的的转码模版,请阅读模版的配置.

Wowza

Transcoder 模版系统提供一个将多个输出流组合在一个逻辑组的方法(被称作 Stream Name

Groups)。可以用ngrp:前缀来引用这个逻辑组以实现码率自适应。

Server.license 的配置(Wowza Media Server Perpetual Edition)

Wowza Media

Server和增值插件的授权码(license key) (包括Wowza Transcoder

插件)被存储在[install-dir]/conf/Server.license。

%WMSCONFIG_HOME%\conf\Server.license

- Windows

/Library/WowzaMediaServer/conf/Server.license

- Mac OS X

/usr/local/WowzaMediaServer/conf/Server.license

-

Linux/Unix

试用、日租、月租模式的授权只需要一个license key,但是永久授权模式需要多个license

key。

使用增值插件时,用文本编辑器打开Server.license文件,在每一个新行输入一个新的license

key。当服务被重启后,新的license将会生效。

由于多个授权码是叠加的,因此在添加一个新的授权码时,去保留文件中原有的授权码,然后在新的一行填写新的授权码。多个授权码在文件中的前后顺序是无关紧要的。

授权码的前5位和后5位字符将显示在控制台的输出中信息。

下面是一个Server.license

文件的示例,包括一个永久授权的Wowza Media Server 授权码、两个Wowza Transcoder 插件授权码以及一个Wowza nDVR

插件授权码:

SVRP3-LaGpC-ZrTD9-F4Y3S-a9bR2-h5t3C

TRN23-Ry6qe-4mT8J-yKj2W-4N5sH-2Td3a

TRN13-y9Gj2-kneqT-2zjHp-GadzB-N6fwa

DVRA3-k3r3R-nzxCB-ypjs5-Sk3y9-ahFdF

Application.xml的配置

建立一个直播应用,然后对Application.xml文件进行一些配置以使用Wowza

Transcoder插件,请按下面进行:

创建一个应用的目录[install-dir]/applications/live.

创建一个配置目录[install-dir]/conf/live

,将[install-dir]/conf/Application.xml 文件拷贝到这个新目录下

用文本编辑器打开这个新拷贝的Application.xml 文件,然后做如下改动(有些设置可能已经配好了):

将Streams/StreamType 设置为:

Code:

StreamTypelive/StreamType

将HTTPStreamers 设置为:

Code:

HTTPStreamerscupertinostreaming,smoothstreaming,sanjosestreaming/HTTPStreamers

将Streams/LiveStreamPacketizers 设置为:

Code:

LiveStreamPacketizerscupertinostreamingpacketizer,smoothstreamingpacketizer,sanjosestreamingpacketizer/LiveStreamPacketizers

将RTP/Authentication/PlayMethod 设置为:

Code:

PlayMethodnone/PlayMethod

将Transcoder/LiveStreamTranscoder 设置为:

Code:

LiveStreamTranscodertranscoder/LiveStreamTranscoder

如果输入流是H.264视频编码AAC 或 MP3

音频编码,你希望创建多个不同码率的输出流,以实现码率自适应,请将Transcoder/Templates 设置为:

Code:

Templates${SourceStreamName}.xml,transrate.xml/Templates

如果输入流是MPEG-2

或 MPEG-4 Part 2 视频编码,你希望转码为H.264 和 AAC,以面向Wowza支持的例如Adobe

Flash播放器、Apple iOS 设备和Microsoft Silverlight的播放器技术, 请将Transcoder/Templates

设置为:

Code:

Templates${SourceStreamName}.xml,transcode.xml/Templates

注意:

当使用transcode.xml时,同样也支持多码率自适应。

如果你希望转码的输入流时SHOUTcast 或 Icecast MP3

媒体流,请在MediaCaster/Properties 中添加下面的属性以配置Wowza Media Server

在每个包中发送一个MP3 帧:

Code:

Property

NameshoutcastMP3GroupCount/Name

Value1/Value

TypeInteger/Type

/Property

(只针对基于RTSP/RTP的编码器),用文本编辑器打开[install-dir]/conf/publish.password文件,添加一个用户名和密码来控制对RTSP/RTP

推流的访问。 下面是一个例子,用户名为myuser,密码为mypassword)。

Code:

# Publish password file (format [username][space][password])

# username password

myuser mypassword

启动 Wowza Media Server.

模版的配置

如果你使用系统自带的transrate.xml 或 transcode.xml 模版文件,

转码后的输出流将使用下面的stream names:

[stream-name]_360p: Main Profile stream

[stream-name]_160p: Baseline Profile stream

ngrp:[stream-name]_all: 面向Apple HTTP Live Streaming (cupertino)、

Microsoft Smooth Streaming以及 Adobe HTTP Dynamic Streaming

(sanjose)的码率自适应

[stream-name] 是输入到Wowza Media

Server的输入流。例如,一个输入是myStream,

那么转码后的输出流就是myStream_360p、myStream_160p以及

ngrp:myStream_all。

转码的工作机制很简单。推送到live应用的所有输入流将被采用在[install-dir]/conf/[application]/Application.xml文件Transcoder/Templates中设置的转码模版文件中的参数来转码。

你可以根据需要配置多个转码后的输出流。

让我们仔细看以下转码模版中的配置。下面是随Wowza Media

Server安装后自带的transrate.xml模版文件:

Code:

!-- Example template for transrate, producing four new streams at different bitrates. Resultant streams can be played back individually or as a group. source, 360p and 160p encode blocks are enabled through the Enable property, other examples are not enabled. Add additional encode blocks to your template as needed. --

Root

Transcode

Encodes

!-- Example Encode block for source, not required unless Member of StreamNameGroup. --

Encode

Enabletrue/Enable

Namesource/Name

StreamNamemp4:${SourceStreamName}_source/StreamName

Video

!-- H.264, H.263, PassThru, Disable --

CodecPassThru/Codec

Bitrate${SourceVideoBitrate}/Bitrate

Parameters

/Parameters

/Video

Audio

!-- AAC, PassThru, Disable --

CodecPassThru/Codec

Bitrate${SourceAudioBitrate}/Bitrate

Parameters

/Parameters

/Audio

Properties

/Properties

/Encode

!-- Setup for 720p, high bandwith, main profile for desktop or set-top box --

Encode

Enablefalse/Enable

Name720p/Name

StreamNamemp4:${SourceStreamName}_720p/StreamName

Video

!-- H.264, H.263, PassThru, Disable --

CodecH.264/Codec

!-- default, CUDA, QuickSync, NVENC --

Transcoderdefault/Transcoder

GPUID-1/GPUID

FrameSize

!-- letterbox, fit-width, fit-height, crop, stretch, match-source --

FitModefit-height/FitMode

Width1280/Width

Height720/Height

!-- Crop0,0,0,0/Crop --

!-- SourceRectangle0,0,320,240/SourceRectangle --

/FrameSize

!-- baseline, main, high --

Profilemain/Profile

Bitrate1300000/Bitrate

关于javaspeex转码和Java 转码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。