Hello,
i am new the wowza and got simple Icecast MP3 Restreaming to work quite easily ;)
I can listen to different icecast streams now via Flash Player, VLC (rtsp) and iOS.
But i can't get the transcoding to work ;(
My Application.xml based on the wowza tutorials and suggestions:
My audioonly template:Code:<Root> <Application> <!-- Uncomment to set application level timeout values <ApplicationTimeout>60000</ApplicationTimeout> <PingTimeout>12000</PingTimeout> <ValidationFrequency>8000</ValidationFrequency> <MaximumPendingWriteBytes>0</MaximumPendingWriteBytes> <MaximumSetBufferTime>60000</MaximumSetBufferTime> <MaximumStorageDirDepth>25</MaximumStorageDirDepth> --> <Connections> <AutoAccept>true</AutoAccept> <AllowDomains></AllowDomains> </Connections> <!-- StorageDir path variables ${com.wowza.wms.AppHome} - Application home directory ${com.wowza.wms.ConfigHome} - Configuration home directory ${com.wowza.wms.context.VHost} - Virtual host name ${com.wowza.wms.context.VHostConfigHome} - Virtual host config directory ${com.wowza.wms.context.Application} - Application name ${com.wowza.wms.context.ApplicationInstance} - Application instance name --> <Streams> <StreamType>live</StreamType> <StorageDir>${com.wowza.wms.context.VHostConfigHome}/content</StorageDir> <KeyDir>${com.wowza.wms.context.VHostConfigHome}/keys</KeyDir> <!-- LiveStreamPacketizers (separate with commas): cupertinostreamingpacketizer, smoothstreamingpacketizer, sanjosestreamingpacketizer, cupertinostreamingrepeater, smoothstreamingrepeater, sanjosestreamingrepeater --> <LiveStreamPacketizers>cupertinostreamingpacketizer,smoothstreamingpacketizer,sanjosestreamingpacketizer</LiveStreamPacketizers> <!-- Properties defined here will override any properties defined in conf/Streams.xml for any streams types loaded by this application --> <Properties> </Properties> </Streams> <Transcoder> <!-- To turn on transcoder set to: transcoder --> <LiveStreamTranscoder>transcoder</LiveStreamTranscoder> <!-- [templatename].xml or ${SourceStreamName}.xml --> <!-- <Templates>${SourceStreamName}.xml,transrate.xml</Templates> --> <!-- <Templates>${SourceStreamName}.xml,transcode.xml</Templates> --> <Templates>audioonly.xml</Templates> <ProfileDir>${com.wowza.wms.context.VHostConfigHome}/transcoder/profiles</ProfileDir> <TemplateDir>${com.wowza.wms.context.VHostConfigHome}/transcoder/templates</TemplateDir> <Properties> </Properties> </Transcoder> <DVR> <!-- As a single server or as an origin, use dvrstreamingpacketizer in LiveStreamPacketizers above --> <!-- Or, in an origin-edge configuration, edges use dvrstreamingrepeater in LiveStreamPacketizers above --> <!-- As an origin, also add dvrchunkstreaming to HTTPStreamers below --> <!-- To turn on DVR recording set Recorders to dvrrecorder. This works with dvrstreamingpacketizer --> <Recorders></Recorders> <!-- As a single server or as an origin, set the Store to dvrfilestorage--> <!-- edges should have this empty --> <Store></Store> <!-- Window Duration is length of live DVR window in seconds. 0 means the window is never trimmed. --> <WindowDuration>0</WindowDuration> <!-- Storage Directory is top level location where dvr is stored. e.g. c:/temp/dvr --> <StorageDir>${com.wowza.wms.context.VHostConfigHome}/dvr</StorageDir> <!-- valid ArchiveStrategy values are append, version, delete --> <ArchiveStrategy>append</ArchiveStrategy> <!-- If this is a dvrstreamingrepeater, define ChunkOriginURL to point back to origin --> <!-- And define Application/Repeater/OriginURL to point back to the origin --> <Repeater> <ChunkOriginURL></ChunkOriginURL> </Repeater> <!-- Properties for DVR --> <Properties> </Properties> </DVR> <!-- HTTPStreamers (separate with commas): cupertinostreaming, smoothstreaming, sanjosestreaming, dvrchunkstreaming --> <HTTPStreamers>cupertinostreaming,smoothstreaming,sanjosestreaming</HTTPStreamers> <SharedObjects> <StorageDir></StorageDir> </SharedObjects> <Client> <IdleFrequency>-1</IdleFrequency> <Access> <StreamReadAccess>*</StreamReadAccess> <StreamWriteAccess>*</StreamWriteAccess> <StreamAudioSampleAccess></StreamAudioSampleAccess> <StreamVideoSampleAccess></StreamVideoSampleAccess> <SharedObjectReadAccess>*</SharedObjectReadAccess> <SharedObjectWriteAccess>*</SharedObjectWriteAccess> </Access> </Client> <RTP> <!-- RTP/Authentication/[type]Methods defined in Authentication.xml. Default setup includes; none, basic, digest --> <Authentication> <PublishMethod>digest</PublishMethod> <PlayMethod>none</PlayMethod> </Authentication> <!-- RTP/AVSyncMethod. Valid values are: senderreport, systemclock, rtptimecode --> <AVSyncMethod>senderreport</AVSyncMethod> <MaxRTCPWaitTime>12000</MaxRTCPWaitTime> <IdleFrequency>75</IdleFrequency> <RTSPSessionTimeout>90000</RTSPSessionTimeout> <RTSPMaximumPendingWriteBytes>0</RTSPMaximumPendingWriteBytes> <RTSPBindIpAddress></RTSPBindIpAddress> <RTSPConnectionIpAddress>0.0.0.0</RTSPConnectionIpAddress> <RTSPOriginIpAddress>127.0.0.1</RTSPOriginIpAddress> <IncomingDatagramPortRanges>*</IncomingDatagramPortRanges> <!-- Properties defined here will override any properties defined in conf/RTP.xml for any depacketizers loaded by this application --> <Properties> </Properties> </RTP> <MediaCaster> <RTP> <RTSP> <!-- udp, interleave --> <RTPTransportMode>interleave</RTPTransportMode> </RTSP> </RTP> <!-- Properties defined here will override any properties defined in conf/MediaCasters.xml for any MediaCasters loaded by this applications --> <Properties> <Name>shoutcastMP3GroupCount</Name> <Value>1</Value> <Type>Integer</Type> </Properties> </MediaCaster> <MediaReader> <!-- Properties defined here will override any properties defined in conf/MediaReaders.xml for any MediaReaders loaded by this applications --> <Properties> </Properties> </MediaReader> <MediaWriter> <!-- Properties defined here will override any properties defined in conf/MediaWriter.xml for any MediaWriter loaded by this applications --> <Properties> </Properties> </MediaWriter> <LiveStreamPacketizer> <!-- Properties defined here will override any properties defined in conf/LiveStreamPacketizers.xml for any LiveStreamPacketizers loaded by this applications --> <Properties> </Properties> </LiveStreamPacketizer> <HTTPStreamer> <!-- Properties defined here will override any properties defined in conf/HTTPStreamers.xml for any HTTPStreamer loaded by this applications --> <Properties> </Properties> </HTTPStreamer> <Repeater> <OriginURL></OriginURL> <QueryString><![CDATA[]]></QueryString> </Repeater> <Modules> <Module> <Name>base</Name> <Description>Base</Description> <Class>com.wowza.wms.module.ModuleCore</Class> </Module> <Module> <Name>properties</Name> <Description>Properties</Description> <Class>com.wowza.wms.module.ModuleProperties</Class> </Module> <Module> <Name>logging</Name> <Description>Client Logging</Description> <Class>com.wowza.wms.module.ModuleClientLogging</Class> </Module> <Module> <Name>flvplayback</Name> <Description>FLVPlayback</Description> <Class>com.wowza.wms.module.ModuleFLVPlayback</Class> </Module> </Modules> <!-- Properties defined here will be added to the IApplication.getProperties() and IApplicationInstance.getProperties() collections --> <Properties> </Properties> </Application> </Root>
The system is an Debian (still Lenny) 64bit running a Wowza 3.1.2 with java 1.6.0_26Code:<!-- Example template for audio only transcoding to AAC from any support audio codec --> <Root> <Transcode> <Encodes> <!-- Example Encode block for source, not required unless Member of StreamNameGroup. --> <Encode> <Enable>true</Enable> <Name>aac</Name> <StreamName>mp4:${SourceStreamName}_aac</StreamName> <Video> <!-- H.264, PassThru, Disable --> <Codec>Disable</Codec> <Bitrate>${SourceVideoBitrate}</Bitrate> <Parameters> </Parameters> </Video> <Audio> <!-- AAC, PassThru, Disable --> <Codec>AAC</Codec> <Bitrate>48000</Bitrate> <Parameters> </Parameters> </Audio> <Properties> </Properties> </Encode> </Encodes> <Decode> </Decode> <StreamNameGroups> </StreamNameGroups> <Properties> </Properties> </Transcode> </Root>
In the access.log the following lines are listed:
Listening to ***.stream works well, but listening to mp4:***.stream_aac plays no music at all and from time to time some rubbish (like extreme fast forwarding) can be heard.Code:JNI:TranscoderSession.audioDecoderCreate[_defaultVHost_:live/_definst_/***.stream]: Create audio decoder: MP3: default transcoder INFO 200 ***.stream {codec:MP3, objectType:MPEG1LAYER3, sampleRate:44100, channels:2} JNI:TranscoderSession.audioEncoderAdd[_defaultVHost_:live/_definst_/***.stream:aac]: Create audio encoder: AAC: default JNI:AudioEncoderAAC.initialize[_defaultVHost_:live/_definst_/***.stream:aac]: channels:2 sampleRate:44100 bitRate:48000
What do i miss? Any ideas?
Regards
.nowrap


Reply With Quote
