|
List Info
Thread: 3GP support fails to compile
|
|
| 3GP support fails to compile |

|
2006-06-30 14:35:28 |
Here's an update on my quest to stream 3GPs
I found:
- building datatype_aac_fileformat, datatype_mp4_fileformat
datatype_amr_format datatype_h263 plugins improves things.
- Trying to actually stream to quicktime player 7 fails.
Quicktime tries to point me to some codec download page.
Then it 'plays' i.e. it displays the stream duration and a
progress bar counting seconds, but no audio, nor video.
Looking into it a bit more Ive found that the Real Helix DNA
server deviates from the standard and specifies mime type:
"video/X-RN-3GPP-H264" instead of (Darwin
Streaming server, and others): "video/H263-1998"
Im pretty positive this is why quicktime chokes. The realone
player plays the stream properly, but also is the only
player that does so. (VLC chokes too)
While Im (masochistically?) curious why this deviation from
the standards is done, Im of course more interested in
rectifying this. Is there some compile or config switch to
force the server to give the standard mime types?
-Marten
> Hello,
>
> I apologise for asking questions on my first
contribution here, plus I hope 'here' is the appropriate
place. Anyway, I did do my best to find the solution myself
by searching but I'm stumped.
>
> Situation is a win32 build environment, python,
cygwin(cvs/ssh) and vc7++ (from Studio .net 2003) all in
place and working.
>
> The question is simply this:
>
> - How do I enable 3GP streaming support in the Helix
DNA Server.
>
> After doing the base build (servinstplus) I get a
working installer, which gets me up and running in no time.
But I get:
>
> 28-Jun-2006 16:51:43.UNKNOWN tmplgpln(3240): No handler
for 3gp
>
> When I try to stream a 3gp off the server.
>
> So then I tried to fix this.
> What I tried to do was compile various components by
selecting the build target 0 -> 79, i.e. core targets
-> datatype, which indeed compiles some extra dll's. (I
tried more than this, serverplugins_plus for example, but no
server targets seem to give any better results here)
>
> Anyway, with the datatype target, indeed, some of these
new DLL's seem to work, it now for example properly loads:
> I: mp4fformat.dll 60D910B0 RealNetworks Mpeg4 File
Format Plugin
> D: 2953838902 0000000000000100
>
> However quite a few of the really important ones for
3GP fail:
> 28-Jun-06 16:19:09.550 hlxserverplus(1516): C:\Program
Files\Helix\Helix
> Server\Plugins\amrn.dll NO HXCreateInstance
> ***28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program
> Files\Helix\Helix Server\Plugins\amrn.dll Not a
valid library
> 28-Jun-06 16:19:09.550 hlxserverplus(1516): C:\Program
Files\Helix\Helix
> Server\Plugins\amrw.dll NO HXCreateInstance
> ***28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program
> Files\Helix\Helix Server\Plugins\amrw.dll Not a
valid library
>
> And in the end the stream fails to play.
>
> Am I doing something wrong? Could someone describe the
process to compile (or acquire, Im willing to go with
binaries here if necessary) to get the server to stream
3gp's?
>
> Im positive the source file works by the way, it's
hinted and a darwin streaming server handles it just fine.
>
> Id appreciate any help.
>
_______________________________________________
Helix-server-dev mailing list
Helix-server-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
|
|
| 3GP support fails to compile |

|
2006-06-30 17:23:49 |
These are client side plugins you are building. The Helix
DNA Server 11.1
(and earlier) does not have support for 3gp content.
On the HEAD and going forward, there is limited support for
3gp content
in datatype_mp4_fileformat (this is the file format for
mp4/3gp). But
this does not include hint track support, which is only
available in the
Helix Server Mobile/Universal from RealNetworks and is not
open source.
The plugin on the HEAD will support packetization of MP4V,
H.263, MP4A-AAC,
and AMR/AMR-WB. It does not support H.264.
The reason this seems to work with the helix client is that
since you're
using the helix client side file format plugin, you are
getting the
packetization that the client uses for internal local
playback, so it of
course knows how to handle it. This is not optimized for or
tested with
streaming, so it may or may not work well for that purpose.
Jamie
Marten van Wezel wrote:
> Here's an update on my quest to stream 3GPs
>
> I found:
>
> - building datatype_aac_fileformat,
datatype_mp4_fileformat datatype_amr_format datatype_h263
plugins improves things.
> - Trying to actually stream to quicktime player 7
fails. Quicktime tries to point me to some codec download
page. Then it 'plays' i.e. it displays the stream duration
and a progress bar counting seconds, but no audio, nor
video.
>
> Looking into it a bit more Ive found that the Real
Helix DNA server deviates from the standard and specifies
mime type: "video/X-RN-3GPP-H264" instead of
(Darwin Streaming server, and others):
"video/H263-1998"
>
> Im pretty positive this is why quicktime chokes. The
realone player plays the stream properly, but also is the
only player that does so. (VLC chokes too)
>
> While Im (masochistically?) curious why this deviation
from the standards is done, Im of course more interested in
rectifying this. Is there some compile or config switch to
force the server to give the standard mime types?
>
> -Marten
>
>
>> Hello,
>>
>> I apologise for asking questions on my first
contribution here, plus I hope 'here' is the appropriate
place. Anyway, I did do my best to find the solution myself
by searching but I'm stumped.
>>
>> Situation is a win32 build environment, python,
cygwin(cvs/ssh) and vc7++ (from Studio .net 2003) all in
place and working.
>>
>> The question is simply this:
>>
>> - How do I enable 3GP streaming support in the
Helix DNA Server.
>>
>> After doing the base build (servinstplus) I get a
working installer, which gets me up and running in no time.
But I get:
>>
>> 28-Jun-2006 16:51:43.UNKNOWN tmplgpln(3240): No
handler for 3gp
>>
>> When I try to stream a 3gp off the server.
>>
>> So then I tried to fix this.
>> What I tried to do was compile various components
by selecting the build target 0 -> 79, i.e. core targets
-> datatype, which indeed compiles some extra dll's. (I
tried more than this, serverplugins_plus for example, but no
server targets seem to give any better results here)
>>
>> Anyway, with the datatype target, indeed, some of
these new DLL's seem to work, it now for example properly
loads:
>> I: mp4fformat.dll 60D910B0 RealNetworks Mpeg4
File Format Plugin
>> D: 2953838902 0000000000000100
>>
>> However quite a few of the really important ones
for 3GP fail:
>> 28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program Files\Helix\Helix
>> Server\Plugins\amrn.dll NO HXCreateInstance
>> ***28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program
>> Files\Helix\Helix Server\Plugins\amrn.dll Not a
valid library
>> 28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program Files\Helix\Helix
>> Server\Plugins\amrw.dll NO HXCreateInstance
>> ***28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program
>> Files\Helix\Helix Server\Plugins\amrw.dll Not a
valid library
>>
>> And in the end the stream fails to play.
>>
>> Am I doing something wrong? Could someone describe
the process to compile (or acquire, Im willing to go with
binaries here if necessary) to get the server to stream
3gp's?
>>
>> Im positive the source file works by the way, it's
hinted and a darwin streaming server handles it just fine.
>>
>> Id appreciate any help.
>>
>>
>
> _______________________________________________
> Helix-server-dev mailing list
> Helix-server-dev helixcommunity.org
> http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
>
_______________________________________________
Helix-server-dev mailing list
Helix-server-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
|
|
| 3GP support fails to compile |

|
2006-07-01 13:17:10 |
Thank you for your answer Jamie.
Since you work Real I'll take your word for it, but Im
quite confused now how it can be that Seneca, i.e. 11.0 (and
one would assume 11.1 and HEAD) documents says that 3GPP
Rel6 streaming is: "Current Status Feature is
complete". (https://helix-server.helixcommunity.org/2005/devdocs/
seneca)
Also I saw this announcement:
https://helixcommunity.org/forum/forum.php?forum_id=583
a>
"The HelixCommunity today released source code for
various 3GPP
packetizers compliant with IETF standards. Helix DNA Server
will now
support on-the-fly packetization of on-demand media"
Am I to understand that Rel6 streaming (which has hinting
support) does not imply the 'older' 3GP format support?
Also, while looking through the code, in numerous spots the
'proper' Mime type (video/H263-1998 for example) is at
least mentioned.. I haven't looked closely enough but it
does seem like enabling H263 'standard' support would be a
matter of setting one define here, or even bluntly
search/replacing the "video/X-RN-3GPP-H264" with
"video/H263-1998". In the end, the actual
audio/video data is the same..
Could you perhaps shed some more light on what is and isn't
supported here?
(In the end my personal goal is streaming 3gp (amr+h263 and
aac+mp4) to mobile phones)
Thanks for your patience, and have a good weekend,
-Marten
On Fri, Jun 30, 2006 at 10:23:49AM -0700, Jamie Gordon
wrote:
> These are client side plugins you are building. The
Helix DNA Server
> 11.1
> (and earlier) does not have support for 3gp content.
>
> On the HEAD and going forward, there is limited support
for 3gp content
> in datatype_mp4_fileformat (this is the file format for
mp4/3gp). But
> this does not include hint track support, which is only
available in the
> Helix Server Mobile/Universal from RealNetworks and is
not open source.
> The plugin on the HEAD will support packetization of
MP4V, H.263,
> MP4A-AAC,
> and AMR/AMR-WB. It does not support H.264.
>
> The reason this seems to work with the helix client is
that since you're
> using the helix client side file format plugin, you are
getting the
> packetization that the client uses for internal local
playback, so it of
> course knows how to handle it. This is not optimized
for or tested with
> streaming, so it may or may not work well for that
purpose.
>
> Jamie
>
> Marten van Wezel wrote:
> >Here's an update on my quest to stream 3GPs
> >
> >I found:
> >
> >- building datatype_aac_fileformat,
datatype_mp4_fileformat
> >datatype_amr_format datatype_h263 plugins improves
things.
> >- Trying to actually stream to quicktime player 7
fails. Quicktime
> >tries to point me to some codec download page. Then
it 'plays' i.e. it
> >displays the stream duration and a progress bar
counting seconds, but
> >no audio, nor video.
> >
> >Looking into it a bit more Ive found that the Real
Helix DNA server
> >deviates from the standard and specifies mime type:
> >"video/X-RN-3GPP-H264" instead of
(Darwin Streaming server, and
> >others): "video/H263-1998"
> >
> >Im pretty positive this is why quicktime chokes.
The realone player
> >plays the stream properly, but also is the only
player that does so.
> >(VLC chokes too)
> >
> >While Im (masochistically?) curious why this
deviation from the
> >standards is done, Im of course more interested in
rectifying this. Is
> >there some compile or config switch to force the
server to give the
> >standard mime types?
> >-Marten
> >
> >
> >>Hello,
> >>
> >>I apologise for asking questions on my first
contribution here, plus
> >>I hope 'here' is the appropriate place.
Anyway, I did do my best to
> >>find the solution myself by searching but I'm
stumped.
> >>
> >>Situation is a win32 build environment, python,
cygwin(cvs/ssh) and
> >>vc7++ (from Studio .net 2003) all in place and
working.
> >>The question is simply this:
> >>
> >>- How do I enable 3GP streaming support in the
Helix DNA Server.
> >>
> >>After doing the base build (servinstplus) I get
a working installer,
> >>which gets me up and running in no time. But I
get:
> >>
> >>28-Jun-2006 16:51:43.UNKNOWN tmplgpln(3240): No
handler for 3gp
> >>
> >>When I try to stream a 3gp off the server.
> >>
> >>So then I tried to fix this.
> >>What I tried to do was compile various
components by selecting the
> >>build target 0 -> 79, i.e. core targets
-> datatype, which indeed
> >>compiles some extra dll's. (I tried more than
this,
> >>serverplugins_plus for example, but no server
targets seem to give
> >>any better results here)
> >>
> >>Anyway, with the datatype target, indeed, some
of these new DLL's
> >>seem to work, it now for example properly
loads:
> >>I: mp4fformat.dll 60D910B0 RealNetworks
Mpeg4 File Format Plugin
> >>D: 2953838902 0000000000000100
> >>
> >>However quite a few of the really important
ones for 3GP fail:
> >>28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program
> >>Files\Helix\Helix
> >>Server\Plugins\amrn.dll NO HXCreateInstance
> >>***28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program
> >>Files\Helix\Helix Server\Plugins\amrn.dll
Not a valid library
> >>28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program
> >>Files\Helix\Helix
> >>Server\Plugins\amrw.dll NO HXCreateInstance
> >>***28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program
> >>Files\Helix\Helix Server\Plugins\amrw.dll
Not a valid library
> >>
> >>And in the end the stream fails to play.
> >>
> >>Am I doing something wrong? Could someone
describe the process to
> >>compile (or acquire, Im willing to go with
binaries here if
> >>necessary) to get the server to stream 3gp's?
> >>Im positive the source file works by the way,
it's hinted and a
> >>darwin streaming server handles it just fine.
> >>
> >>Id appreciate any help.
> >>
> >>
> >
> >_______________________________________________
> >Helix-server-dev mailing list
> >Helix-server-dev helixcommunity.org
> >http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
> >
>
>
_______________________________________________
Helix-server-dev mailing list
Helix-server-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
|
|
| 3GP support fails to compile |

|
2006-07-02 03:52:47 |
Marten van Wezel wrote:
> Thank you for your answer Jamie.
>
> Since you work Real I'll take your word for it, but Im
quite confused now how it can be that Seneca, i.e. 11.0 (and
one would assume 11.1 and HEAD) documents says that 3GPP
Rel6 streaming is: "Current Status Feature is
complete". (https://helix-server.helixcommunity.org/2005/devdocs/
seneca)
>
I'm not very familiar with that document, but there are
many features
and requirements defined in various 3GPP specs. Hint track
support
however is not available in the helix community source code
(we are
not able to open source this code), but is rather available
only in
our retail servers. I am sorry if this has caused some
confusion on
feature support.
> Also I saw this announcement:
> https://helixcommunity.org/forum/forum.php?forum_id=583
a>
> "The HelixCommunity today released source code
for various 3GPP
> packetizers compliant with IETF standards. Helix DNA
Server will now
> support on-the-fly packetization of on-demand
media"
>
Yep, this announcement refers to the packetizers I mentioned
which were
made available at that time on the cvs HEAD (not 11.0/11.1)
and will also
be available in future branches going forward.
> Am I to understand that Rel6 streaming (which has
hinting support) does not imply the 'older' 3GP format
support?
>
I'm not sure what you are asking about here. Hint track
support is not
available
in the helix community. Rel 5 and rel 6 files are supported
only with those
datatypes for which packetizers are available.
> Also, while looking through the code, in numerous spots
the 'proper' Mime type (video/H263-1998 for example) is at
least mentioned.. I haven't looked closely enough but it
does seem like enabling H263 'standard' support would be a
matter of setting one define here, or even bluntly
search/replacing the "video/X-RN-3GPP-H264" with
"video/H263-1998". In the end, the actual
audio/video data is the same..
>
I think you must be looking at the client side
depacketizers.
Again, there are packetizers are available for h.263, mp4v,
mp4a-aac,
and amr/amr-wb on the HEAD. These all use standard
packetizations
(in case of h.263, it uses video/H263-2000, not
video/H263-1998).
You mention "video/X-RN-3GPP-H264" vs.
"video/H263-1998", but please
note that the first is H.264 whereas the second is H.263.
These are not
the same datatype. H.263 is supported, H.264 is not.
> Could you perhaps shed some more light on what is and
isn't supported here?
>
> (In the end my personal goal is streaming 3gp (amr+h263
and aac+mp4) to mobile phones)
>
All these data types are supported in source on the HEAD
(through server
side packetization rather than hint tracks) but it looks
like you are
trying to use H.264 as well, which is not supported in the
DNA source.
If you need H.264 support or advanced mobile features such
as congestion
control, 3gpp-adaptation, multi-rate 3gpp support, these
features are
not available in the helixcommunity, but are available in
our retail
servers. In order to test this plugin, you need to build
from the HEAD
(SERVER_CURRENT) using an appropriate server profile. This
however is
the cvs HEAD, and not guaranteed to be stable.
> Thanks for your patience, and have a good weekend,
>
Thanks, I hope you are having a good weekend as well!
Jamie
> -Marten
>
>
>
> On Fri, Jun 30, 2006 at 10:23:49AM -0700, Jamie Gordon
wrote:
>
>> These are client side plugins you are building. The
Helix DNA Server
>> 11.1
>> (and earlier) does not have support for 3gp
content.
>>
>> On the HEAD and going forward, there is limited
support for 3gp content
>> in datatype_mp4_fileformat (this is the file format
for mp4/3gp). But
>> this does not include hint track support, which is
only available in the
>> Helix Server Mobile/Universal from RealNetworks and
is not open source.
>> The plugin on the HEAD will support packetization
of MP4V, H.263,
>> MP4A-AAC,
>> and AMR/AMR-WB. It does not support H.264.
>>
>> The reason this seems to work with the helix client
is that since you're
>> using the helix client side file format plugin, you
are getting the
>> packetization that the client uses for internal
local playback, so it of
>> course knows how to handle it. This is not
optimized for or tested with
>> streaming, so it may or may not work well for that
purpose.
>>
>> Jamie
>>
>> Marten van Wezel wrote:
>>
>>> Here's an update on my quest to stream 3GPs
>>>
>>> I found:
>>>
>>> - building datatype_aac_fileformat,
datatype_mp4_fileformat
>>> datatype_amr_format datatype_h263 plugins
improves things.
>>> - Trying to actually stream to quicktime player
7 fails. Quicktime
>>> tries to point me to some codec download page.
Then it 'plays' i.e. it
>>> displays the stream duration and a progress bar
counting seconds, but
>>> no audio, nor video.
>>>
>>> Looking into it a bit more Ive found that the
Real Helix DNA server
>>> deviates from the standard and specifies mime
type:
>>> "video/X-RN-3GPP-H264" instead of
(Darwin Streaming server, and
>>> others): "video/H263-1998"
>>>
>>> Im pretty positive this is why quicktime
chokes. The realone player
>>> plays the stream properly, but also is the only
player that does so.
>>> (VLC chokes too)
>>>
>>> While Im (masochistically?) curious why this
deviation from the
>>> standards is done, Im of course more interested
in rectifying this. Is
>>> there some compile or config switch to force
the server to give the
>>> standard mime types?
>>> -Marten
>>>
>>>
>>>
>>>> Hello,
>>>>
>>>> I apologise for asking questions on my
first contribution here, plus
>>>> I hope 'here' is the appropriate place.
Anyway, I did do my best to
>>>> find the solution myself by searching but
I'm stumped.
>>>>
>>>> Situation is a win32 build environment,
python, cygwin(cvs/ssh) and
>>>> vc7++ (from Studio .net 2003) all in place
and working.
>>>> The question is simply this:
>>>>
>>>> - How do I enable 3GP streaming support in
the Helix DNA Server.
>>>>
>>>> After doing the base build (servinstplus) I
get a working installer,
>>>> which gets me up and running in no time.
But I get:
>>>>
>>>> 28-Jun-2006 16:51:43.UNKNOWN
tmplgpln(3240): No handler for 3gp
>>>>
>>>> When I try to stream a 3gp off the server.
>>>>
>>>> So then I tried to fix this.
>>>> What I tried to do was compile various
components by selecting the
>>>> build target 0 -> 79, i.e. core targets
-> datatype, which indeed
>>>> compiles some extra dll's. (I tried more
than this,
>>>> serverplugins_plus for example, but no
server targets seem to give
>>>> any better results here)
>>>>
>>>> Anyway, with the datatype target, indeed,
some of these new DLL's
>>>> seem to work, it now for example properly
loads:
>>>> I: mp4fformat.dll 60D910B0 RealNetworks
Mpeg4 File Format Plugin
>>>> D: 2953838902 0000000000000100
>>>>
>>>> However quite a few of the really important
ones for 3GP fail:
>>>> 28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program
>>>> Files\Helix\Helix
>>>> Server\Plugins\amrn.dll NO
HXCreateInstance
>>>> ***28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
>>>> Files\Helix\Helix
Server\Plugins\amrn.dll Not a valid library
>>>> 28-Jun-06 16:19:09.550 hlxserverplus(1516):
C:\Program
>>>> Files\Helix\Helix
>>>> Server\Plugins\amrw.dll NO
HXCreateInstance
>>>> ***28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
>>>> Files\Helix\Helix
Server\Plugins\amrw.dll Not a valid library
>>>>
>>>> And in the end the stream fails to play.
>>>>
>>>> Am I doing something wrong? Could someone
describe the process to
>>>> compile (or acquire, Im willing to go with
binaries here if
>>>> necessary) to get the server to stream
3gp's?
>>>> Im positive the source file works by the
way, it's hinted and a
>>>> darwin streaming server handles it just
fine.
>>>>
>>>> Id appreciate any help.
>>>>
>>>>
>>>>
>>> _______________________________________________
>>> Helix-server-dev mailing list
>>> Helix-server-dev helixcommunity.org
>>> http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
>>>
>>>
>>
>
>
_______________________________________________
Helix-server-dev mailing list
Helix-server-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
|
|
| 3GP support fails to compile |

|
2006-07-02 15:21:44 |
Hello Jamie,
While your long mail (thanks for taking the time!) would
warrant a point
for point reply, I figure Ill get straight to the core
here...
First, my apologies for calling it 'video/X-RN-3GPP-H264',
this was just
a typo on my part. All I am trying is streaming 'standard'
3GP files, ie.
AMR+H263 and AAC+MP4 over RTSP.
With that cleared up, you said:
> Hint track support however is not available in the
helix community source code (we are not able to open source
this code)
Fair enough, a company has to make a living.
But also you said:
> All these (amr,h263,aac,mp4) data types are supported
in source on the HEAD (through server side packetization
rather than hint tracks)
Am I to understand from this that:
- Helix DNA can actually stream 3gp to clients such as
mobiles, only it will 'make up its own mind' on how to
split the video data into useful chunks, instead of using
pre-generated hint tracks as a guideline. (I apologise
fudging terminology but Im still kinda fuzzy on how the hint
track theory)
And if so, my line of thought:
- In my current testbed, playing a hinted 3GP file over RTSP
served by Helix DNA fails when I try to use quicktime player
or VLC. Real one player works.
- Quicktime tries to go to a codec download page when trying
to play off DNA
- RealOne player reports mime type
"video/X-RN-3GPP-H263" when playing off DNA
- RealOne reports mime type "video/H263-1998"
when streaming the same file off Darwin Streaming server.
- Both servers don't "re-compress" the data on
the fly so the actual compressed video data should be the
same.
- My conclusion is that Quicktime just doesn't recognise
this mime type. The actual raw video data is 'playable'
by quicktime, obviously.
And therefore:
- Will somehow forcing Helix DNA to report
"video/H263-1998" as the mime type break things?
What's in a name here, is this 'server side
packetization' as opposed to 'using/supporting
pregenerated hint tracks' something that totally breaks
compatibility with everything other than RealOne player?
Also, since Real Helix DNA is Open source, what's keeping
you from nabbing the hint track code from one of the ongoing
open source projects that already have this built in?
(ffmpeg and catra streaming server, but also perhaps your
arch nemesis' open source Darwin Streaming Server come to
mind.. I think it is legal to use parts of that code as long
as you keep things open source and give credit where
credit's due..)
Again, I appreciate your time in responding, I hope I don't
come off as too ignorant of all this. And heh I suppose a
quicker line of questioning would be 'why dont streaming
3gp work?', but hey, this is turning out to be quite the
informative discussion (for others than us), no?
-Marten
>
> >-Marten
> >
> >
> >
> >On Fri, Jun 30, 2006 at 10:23:49AM -0700, Jamie
Gordon wrote:
> >
> >>These are client side plugins you are building.
The Helix DNA Server
> >>11.1
> >>(and earlier) does not have support for 3gp
content.
> >>
> >>On the HEAD and going forward, there is limited
support for 3gp
> >>content
> >>in datatype_mp4_fileformat (this is the file
format for mp4/3gp). But
> >>this does not include hint track support, which
is only available in
> >>the
> >>Helix Server Mobile/Universal from RealNetworks
and is not open
> >>source.
> >>The plugin on the HEAD will support
packetization of MP4V, H.263,
> >>MP4A-AAC,
> >>and AMR/AMR-WB. It does not support H.264.
> >>
> >>The reason this seems to work with the helix
client is that since
> >>you're
> >>using the helix client side file format plugin,
you are getting the
> >>packetization that the client uses for internal
local playback, so it
> >>of
> >>course knows how to handle it. This is not
optimized for or tested
> >>with
> >>streaming, so it may or may not work well for
that purpose.
> >>
> >>Jamie
> >>
> >>Marten van Wezel wrote:
> >>
> >>>Here's an update on my quest to stream
3GPs
> >>>
> >>>I found:
> >>>
> >>>- building datatype_aac_fileformat,
datatype_mp4_fileformat
> >>>datatype_amr_format datatype_h263 plugins
improves things.
> >>>- Trying to actually stream to quicktime
player 7 fails. Quicktime
> >>>tries to point me to some codec download
page. Then it 'plays' i.e.
> >>>it displays the stream duration and a
progress bar counting seconds,
> >>>but no audio, nor video.
> >>>
> >>>Looking into it a bit more Ive found that
the Real Helix DNA server
> >>>deviates from the standard and specifies
mime type:
> >>>"video/X-RN-3GPP-H264" instead
of (Darwin Streaming server, and
> >>>others): "video/H263-1998"
> >>>
> >>>Im pretty positive this is why quicktime
chokes. The realone player
> >>>plays the stream properly, but also is the
only player that does so.
> >>>(VLC chokes too)
> >>>
> >>>While Im (masochistically?) curious why
this deviation from the
> >>>standards is done, Im of course more
interested in rectifying this.
> >>>Is there some compile or config switch to
force the server to give
> >>>the standard mime types?
> >>>-Marten
> >>>
> >>>
> >>>
> >>>>Hello,
> >>>>
> >>>>I apologise for asking questions on my
first contribution here,
> >>>>plus I hope 'here' is the appropriate
place. Anyway, I did do my
> >>>>best to find the solution myself by
searching but I'm stumped.
> >>>>
> >>>>Situation is a win32 build environment,
python, cygwin(cvs/ssh) and
> >>>>vc7++ (from Studio .net 2003) all in
place and working.
> >>>>The question is simply this:
> >>>>
> >>>>- How do I enable 3GP streaming support
in the Helix DNA Server.
> >>>>
> >>>>After doing the base build
(servinstplus) I get a working
> >>>>installer, which gets me up and running
in no time. But I get:
> >>>>
> >>>>28-Jun-2006 16:51:43.UNKNOWN
tmplgpln(3240): No handler for 3gp
> >>>>
> >>>>When I try to stream a 3gp off the
server.
> >>>>
> >>>>So then I tried to fix this.
> >>>>What I tried to do was compile various
components by selecting the
> >>>>build target 0 -> 79, i.e. core
targets -> datatype, which indeed
> >>>>compiles some extra dll's. (I tried
more than this,
> >>>>serverplugins_plus for example, but no
server targets seem to give
> >>>>any better results here)
> >>>>
> >>>>Anyway, with the datatype target,
indeed, some of these new DLL's
> >>>>seem to work, it now for example
properly loads:
> >>>>I: mp4fformat.dll 60D910B0
RealNetworks Mpeg4 File Format Plugin
> >>>>D: 2953838902 0000000000000100
> >>>>
> >>>>However quite a few of the really
important ones for 3GP fail:
> >>>>28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
> >>>>Files\Helix\Helix
> >>>>Server\Plugins\amrn.dll NO
HXCreateInstance
> >>>>***28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
> >>>>Files\Helix\Helix
Server\Plugins\amrn.dll Not a valid library
> >>>>28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
> >>>>Files\Helix\Helix
> >>>>Server\Plugins\amrw.dll NO
HXCreateInstance
> >>>>***28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
> >>>>Files\Helix\Helix
Server\Plugins\amrw.dll Not a valid library
> >>>>
> >>>>And in the end the stream fails to
play.
> >>>>
> >>>>Am I doing something wrong? Could
someone describe the process to
> >>>>compile (or acquire, Im willing to go
with binaries here if
> >>>>necessary) to get the server to stream
3gp's?
> >>>>Im positive the source file works by
the way, it's hinted and a
> >>>>darwin streaming server handles it just
fine.
> >>>>
> >>>>Id appreciate any help.
> >>>>
> >>>>
> >>>>
>
>>>_______________________________________________
> >>>Helix-server-dev mailing list
> >>>Helix-server-dev helixcommunity.org
> >>>http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
> >>>
> >>>
> >>
> >
> >
>
>
_______________________________________________
Helix-server-dev mailing list
Helix-server-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
|
|
| 3GP support fails to compile |

|
2006-07-06 16:57:20 |
Marten van Wezel wrote:
> Am I to understand from this that:
>
> - Helix DNA can actually stream 3gp to clients such as
mobiles, only
> it will 'make up its own mind' on how to split the
video data into
> useful chunks, instead of using pre-generated hint
tracks as a
> guideline. (I apologise fudging terminology but Im
still kinda fuzzy on
> how the hint track theory)
Yep, that's essentially correct.
> And if so, my line of thought:
>
> - In my current testbed, playing a hinted 3GP file over
RTSP served
> by Helix DNA fails when I try to use quicktime player
or VLC. Real one
> player works.
> - Quicktime tries to go to a codec download page when
trying to play off DNA
> - RealOne player reports mime type
"video/X-RN-3GPP-H263" when playing off DNA
This is a problem with the fileformat plugin you are using.
You are only
getting the client side packetizers.
> - RealOne reports mime type
"video/H263-1998" when streaming the same
> file off Darwin Streaming server.
I don't believe Darwin supports unhinted content at all, so
this tells
us that the content is hinted as video/H263-1998.
> - Both servers don't "re-compress" the
data on the fly so the actual
> compressed video data should be the same.
Yes, both are H.263 video data.
> - My conclusion is that Quicktime just doesn't
recognise this mime
> type. The actual raw video data is 'playable' by
quicktime, obviously.
>
> And therefore:
>
> - Will somehow forcing Helix DNA to report
"video/H263-1998" as the
> mime type break things? What's in a name here, is this
'server side
> packetization' as opposed to 'using/supporting
pregenerated hint tracks'
> something that totally breaks compatibility with
everything other than
> RealOne player?
No, that will not work. The mime type reports the
packetization in use,
not just the codec (indeed, often the same mime
type/packetization are
used for multiple codecs and the client determines the codec
via other
means). An RTP stream is not just a stream of raw video
data. There are
headers and properties and such specific to the
packetization in use.
I'm not familiar with the client side video/X-RN-3GPP-H263,
but I doubt
it is identical to video/h263-1998 or video/2263-2000, so
you can't
simply report a different mime type with the X-RN-3GPP-H263
packetization.
> Also, since Real Helix DNA is Open source, what's
keeping you from
> nabbing the hint track code from one of the ongoing
open source projects
> that already have this built in? (ffmpeg and catra
streaming server, but
> also perhaps your arch nemesis' open source Darwin
Streaming Server come
> to mind.. I think it is legal to use parts of that code
as long as you
> keep things open source and give credit where credit's
due..)
RealNetworks has hint track support that we build into our
retail
servers, but we were not able to open source our
implementation for
some legal reasons. At least, this was the case a few years
ago.
I think it had something to do with patents or something
that Apple
has, but I am not a lawyer and am not very familiar with all
the legal
stuff.
> Again, I appreciate your time in responding, I hope I
don't come off
> as too ignorant of all this. And heh I suppose a
quicker line of
> questioning would be 'why dont streaming 3gp work?',
but hey, this is
> turning out to be quite the informative discussion (for
others than us), no?
Hah, indeed. So onto
the real question - why isn't your plugin
packetizing to the standard packetization?
The first thing is you have to make sure you are building
the plugin
from the cvs HEAD, since this is currently the only place
this is
checked in. If you are building on a branch, you will be
getting
only the client side support. Second, you need to make sure
you are
using a server profile - otherwise you will likely be
getting only
client side support. It seems one of these two things is not
right
with your plugin (or that there is a problem we need to fix
and it
is simply not building correctly).
Please be warned however that the head is not a stable
release branch,
it is the working, expiremental code base.
First you'll want to look through the server build guide.
Even though
you probably do not need to build the whole server, most of
it is still
relevant.
https://helix-server.helixcommunity.org/2005/devd
ocs/quickstart
Now, when you build, you need to select bif branch
SERVER_CURRENT and
profile helix-server-nodist (as indicated in the build
guide) and you
need to use the right SYSTEM_ID for your platform as listed
in this
guide. If you are building in an existing directory where
you have
previously built a different branch, cvs will *not* check
out the
newly specified branch. You need to start in a clean
directory. If
you are building in a directory where you have previously
built with
a different SYSTEM_ID or profile, you need to either tell
the build
system to do a 'clean' build, or else start in a clean
directory.
This will build mp4fformat.so (or .dll), which will need to
be placed
in your server's Plugins directory.
If you're positive you've built everything clean with the
right branch
and profile and you are still getting X-RN-H263 instead of
h263-2000,
then there is probably a bug in the open source plugin that
it's not
using the right packetization. In this case, I encourage you
to file a
bug against it in the helixcommunity bugzilla!
Jamie
>
> -Marten
>
>
>>>-Marten
>>>
>>>
>>>
>>>On Fri, Jun 30, 2006 at 10:23:49AM -0700, Jamie
Gordon wrote:
>>>
>>>
>>>>These are client side plugins you are
building. The Helix DNA Server
>>>>11.1
>>>>(and earlier) does not have support for 3gp
content.
>>>>
>>>>On the HEAD and going forward, there is
limited support for 3gp
>>>>content
>>>>in datatype_mp4_fileformat (this is the file
format for mp4/3gp). But
>>>>this does not include hint track support,
which is only available in
>>>>the
>>>>Helix Server Mobile/Universal from
RealNetworks and is not open
>>>>source.
>>>>The plugin on the HEAD will support
packetization of MP4V, H.263,
>>>>MP4A-AAC,
>>>>and AMR/AMR-WB. It does not support H.264.
>>>>
>>>>The reason this seems to work with the helix
client is that since
>>>>you're
>>>>using the helix client side file format
plugin, you are getting the
>>>>packetization that the client uses for
internal local playback, so it
>>>>of
>>>>course knows how to handle it. This is not
optimized for or tested
>>>>with
>>>>streaming, so it may or may not work well
for that purpose.
>>>>
>>>>Jamie
>>>>
>>>>Marten van Wezel wrote:
>>>>
>>>>
>>>>>Here's an update on my quest to stream
3GPs
>>>>>
>>>>>I found:
>>>>>
>>>>>- building datatype_aac_fileformat,
datatype_mp4_fileformat
>>>>>datatype_amr_format datatype_h263
plugins improves things.
>>>>>- Trying to actually stream to quicktime
player 7 fails. Quicktime
>>>>>tries to point me to some codec download
page. Then it 'plays' i.e.
>>>>>it displays the stream duration and a
progress bar counting seconds,
>>>>>but no audio, nor video.
>>>>>
>>>>>Looking into it a bit more Ive found
that the Real Helix DNA server
>>>>>deviates from the standard and specifies
mime type:
>>>>>"video/X-RN-3GPP-H264"
instead of (Darwin Streaming server, and
>>>>>others): "video/H263-1998"
>>>>>
>>>>>Im pretty positive this is why quicktime
chokes. The realone player
>>>>>plays the stream properly, but also is
the only player that does so.
>>>>>(VLC chokes too)
>>>>>
>>>>>While Im (masochistically?) curious why
this deviation from the
>>>>>standards is done, Im of course more
interested in rectifying this.
>>>>>Is there some compile or config switch
to force the server to give
>>>>>the standard mime types?
>>>>>-Marten
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Hello,
>>>>>>
>>>>>>I apologise for asking questions on
my first contribution here,
>>>>>>plus I hope 'here' is the
appropriate place. Anyway, I did do my
>>>>>>best to find the solution myself by
searching but I'm stumped.
>>>>>>
>>>>>>Situation is a win32 build
environment, python, cygwin(cvs/ssh) and
>>>>>>vc7++ (from Studio .net 2003) all in
place and working.
>>>>>>The question is simply this:
>>>>>>
>>>>>>- How do I enable 3GP streaming
support in the Helix DNA Server.
>>>>>>
>>>>>>After doing the base build
(servinstplus) I get a working
>>>>>>installer, which gets me up and
running in no time. But I get:
>>>>>>
>>>>>>28-Jun-2006 16:51:43.UNKNOWN
tmplgpln(3240): No handler for 3gp
>>>>>>
>>>>>>When I try to stream a 3gp off the
server.
>>>>>>
>>>>>>So then I tried to fix this.
>>>>>>What I tried to do was compile
various components by selecting the
>>>>>>build target 0 -> 79, i.e. core
targets -> datatype, which indeed
>>>>>>compiles some extra dll's. (I tried
more than this,
>>>>>>serverplugins_plus for example, but
no server targets seem to give
>>>>>>any better results here)
>>>>>>
>>>>>>Anyway, with the datatype target,
indeed, some of these new DLL's
>>>>>>seem to work, it now for example
properly loads:
>>>>>>I: mp4fformat.dll 60D910B0
RealNetworks Mpeg4 File Format Plugin
>>>>>>D: 2953838902 0000000000000100
>>>>>>
>>>>>>However quite a few of the really
important ones for 3GP fail:
>>>>>>28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
>>>>>>Files\Helix\Helix
>>>>>>Server\Plugins\amrn.dll NO
HXCreateInstance
>>>>>>***28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
>>>>>>Files\Helix\Helix
Server\Plugins\amrn.dll Not a valid library
>>>>>>28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
>>>>>>Files\Helix\Helix
>>>>>>Server\Plugins\amrw.dll NO
HXCreateInstance
>>>>>>***28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
>>>>>>Files\Helix\Helix
Server\Plugins\amrw.dll Not a valid library
>>>>>>
>>>>>>And in the end the stream fails to
play.
>>>>>>
>>>>>>Am I doing something wrong? Could
someone describe the process to
>>>>>>compile (or acquire, Im willing to
go with binaries here if
>>>>>>necessary) to get the server to
stream 3gp's?
>>>>>>Im positive the source file works by
the way, it's hinted and a
>>>>>>darwin streaming server handles it
just fine.
>>>>>>
>>>>>>Id appreciate any help.
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>________________________________________
_______
>>>>>Helix-server-dev mailing list
>>>>>Helix-server-dev helixcommunity.org
>>>>>http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
_______________________________________________
Helix-server-dev mailing list
Helix-server-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
|
|
| 3GP support fails to compile |

|
2006-07-07 14:05:04 |
Hey Jamie, All,
Another huge mail from yours truely, but I am getting the
feeling that this is a helix bug, so in the end your effort
reading and writing all this stuff might not be just a lot
of energy for just fixing one guy's problems
OK the short version:
With settings as you specified, Im evidently getting the
client plugin. Still the wrong mimetype. There's one
(fairly important) gap in your instructions though: you
didn't specify what Target I should choose for making the
mp4 plugin.
"servinst" does not produce a mp4fformat.dll
plugin, it just produces the base server installer with just
mp3 support. (servinstplus isnt any better)
And choosing "datatype_mp4_fileformat" as Target
(yes, with the server profile) results in a client plugin
(or at least, a plugin that gives X-RN-3GPP-H263 as
MimeType, according to RealPlayer) Am I using the wrong
Target? If so it's very unclear which is the 'right' one.
(see below for more about this)
Now the longer version, for the details of what I did. Note
that below I used 'servinstplus' but after your mail I did
a clean start (new dir) and tried the same process with
'servinst' and 'helix-server-nodist', no difference.
- The process: -------------------------
Step 1/ Install Ribosome. Works. (quite a challenge, how
many people in
the world have actually succeeded in this on a windows
platform? :P CVS Python vcvars ssh auth.. I even went
through fun times trying to relocate my compiler to
/dev (instead of dirnames with spaces like 'program
files'. Uninstalling
VC++ worked.. reinstalling in the new (or the old) location
didnt. Had
to fully reinstall my PC..)
Step 2/ Compile.
SYSTEM_ID=win32-i386-vc7 (and my compiler is Studio .NET
2003, as specified)
build settings:
Current Directory: C:\Dev\HOME\src\helix
[0] Set BIF branch (SERVER_CURRENT)
[1] Set Target(s) (servinstplus)
[2] Set Profile (helix-server-plus)
[3] run: build -trelease
-> Works. 0 of 79 modules failed, installer .exe.
created.
Step 3/ Install the Helix server with all defaults.
-> Works. The file format plugins that are built with
servinstplus are:
- mp3fformat.dll
- rmfformat
- smlfformat
(I don't really consider this - quote from the quick start
guide - "[support for]NUMEROUS datatypes", but
OK )
Step 4/ So we want MP4.
- There is no applicable target in the 'server
targets..." list. Some things might maybe possibly
apply indirectly but nothing clearly related to mp4. Id
expect "server_datatype_mp4" or something but no
such luck.
- In the generic "List datatype targets..."
option there's a stunning amount of options: [0]
datatype_mdf_audio_dsp. (yeah thats all there is). Neeext.
- In "List codec targets..." there are a few
ones that come close ('datatype_aac_codec') but no AMR nor
MP4
- In listing all targets I see a few useful sounding ones.
"serverplugins_plus" looks cute, but only
results in a 'rmfformat.dll' and quite a few 'lib' files
(whats the use of these lib files anyway? I tried copying
them into the plugins dir but that doesnt seem to do
anything.)
- Trying datatype_mp4_fileformat results in a mp4fformat.dll
but not one that allows me to stream properly.
sooooo I'm indeed lost. Or does this dll need more
companion plugins to function properly? Perhaps a master
packetizer plugin? Ive tried quite a few, even installed
faad sources to enable full mp4 en/decoding, didn't help,
tried datatype_amrfformat, datatype_aacfformat,
datatype_h263 (note: there's no
datatype_h263_fileformat(?)..) etc etc etc, everything that
sounded remotely applicable Ive compiled and installed into
plugins, separately or all together. but no luck with that
path either.
Has someone compiled a proper mp4fformat.dll?
Mind sharing it, see if that works in my server?
Another clue, perhaps. Are you POSITIVE Im building client
side plugins?
You see, quite a few plugins Ive tried to install over my
experience
are simply refused by the server. Example:
D: C:\Program Files\Helix\Helix Server\Plugins\d263.dll
NO HXCreateInstance
C: C:\Program Files\Helix\Helix Server\Plugins\d263.dll
Not a valid library
For me the above messages always meant 'this is not a
server plugin' in
my head. My 'mp4format.dll' plugins are always loaded.
Another hint: if I try datatype_mp4_packetizer (after having
compiled
mp4fformat.dll successfully (but not a correct plugin of
course) I get
compile errors.
C:\Dev\VS2003\Vc7\PlatformSDK\Include\WinNT.h(104) :
warning C4005: 'POINTER_64' : macro redefinition
c:\Dev\HOME\src\helix2\common\include\hxbastsd.h(83)
: see previous definition of 'POINTER_64'
..\..\..\common\include\hxtsmartpointer.h(51) : fatal
error C1189: #error : Deprecated SmartPointer header is
included, please use common/include/hxcomptr.h in stead.
NMAKE : fatal error U1077: 'cl' : return code '0x2'
Stop.
De-deprecating hxtsmartpointer.h (by removing the error exit
in it) did
make the compile work, but it only result in a
mpeg4genericpacketizerlib.lib. Sounded promising, but after
then
recompiling mp4fformat.dll too nothing changed.
Time to leave, I hope my analysis so far provides any clues!
-Marten
On Thu, Jul 06, 2006 at 09:57:20AM -0700, Jamie Gordon
wrote:
> Marten van Wezel wrote:
>
> >Am I to understand from this that:
> >
> >- Helix DNA can actually stream 3gp to clients such
as mobiles, only
> >it will 'make up its own mind' on how to split
the video data into
> >useful chunks, instead of using pre-generated hint
tracks as a
> >guideline. (I apologise fudging terminology but Im
still kinda fuzzy on
> >how the hint track theory)
>
> Yep, that's essentially correct.
>
> >And if so, my line of thought:
> >
> >- In my current testbed, playing a hinted 3GP file
over RTSP served
> >by Helix DNA fails when I try to use quicktime
player or VLC. Real one
> >player works.
> >- Quicktime tries to go to a codec download page
when trying to play off
> >DNA
> >- RealOne player reports mime type
"video/X-RN-3GPP-H263" when playing off
> >DNA
>
> This is a problem with the fileformat plugin you are
using. You are only
> getting the client side packetizers.
>
> >- RealOne reports mime type
"video/H263-1998" when streaming the same
> >file off Darwin Streaming server.
>
> I don't believe Darwin supports unhinted content at
all, so this tells
> us that the content is hinted as video/H263-1998.
>
> >- Both servers don't "re-compress" the
data on the fly so the actual
> >compressed video data should be the same.
>
> Yes, both are H.263 video data.
>
> >- My conclusion is that Quicktime just doesn't
recognise this mime
> >type. The actual raw video data is 'playable' by
quicktime, obviously.
> >
> >And therefore:
> >
> >- Will somehow forcing Helix DNA to report
"video/H263-1998" as the
> >mime type break things? What's in a name here, is
this 'server side
> >packetization' as opposed to 'using/supporting
pregenerated hint tracks'
> >something that totally breaks compatibility with
everything other than
> >RealOne player?
>
> No, that will not work. The mime type reports the
packetization in use,
> not just the codec (indeed, often the same mime
type/packetization are
> used for multiple codecs and the client determines the
codec via other
> means). An RTP stream is not just a stream of raw video
data. There are
> headers and properties and such specific to the
packetization in use.
> I'm not familiar with the client side
video/X-RN-3GPP-H263, but I doubt
> it is identical to video/h263-1998 or video/2263-2000,
so you can't
> simply report a different mime type with the
X-RN-3GPP-H263
> packetization.
>
> >Also, since Real Helix DNA is Open source, what's
keeping you from
> >nabbing the hint track code from one of the ongoing
open source projects
> >that already have this built in? (ffmpeg and catra
streaming server, but
> >also perhaps your arch nemesis' open source Darwin
Streaming Server come
> >to mind.. I think it is legal to use parts of that
code as long as you
> >keep things open source and give credit where
credit's due..)
>
> RealNetworks has hint track support that we build into
our retail
> servers, but we were not able to open source our
implementation for
> some legal reasons. At least, this was the case a few
years ago.
> I think it had something to do with patents or
something that Apple
> has, but I am not a lawyer and am not very familiar
with all the legal
> stuff.
>
> >Again, I appreciate your time in responding, I hope
I don't come off
> >as too ignorant of all this. And heh I suppose a
quicker line of
> >questioning would be 'why dont streaming 3gp
work?', but hey, this is
> >turning out to be quite the informative discussion
(for others than us),
> >no?
>
> Hah, indeed. So onto
the real question - why isn't your plugin
> packetizing to the standard packetization?
>
> The first thing is you have to make sure you are
building the plugin
> from the cvs HEAD, since this is currently the only
place this is
> checked in. If you are building on a branch, you will
be getting
> only the client side support. Second, you need to make
sure you are
> using a server profile - otherwise you will likely be
getting only
> client side support. It seems one of these two things
is not right
> with your plugin (or that there is a problem we need to
fix and it
> is simply not building correctly).
>
> Please be warned however that the head is not a stable
release branch,
> it is the working, expiremental code base.
>
> First you'll want to look through the server build
guide. Even though
> you probably do not need to build the whole server,
most of it is still
> relevant.
> https://helix-server.helixcommunity.org/2005/devd
ocs/quickstart
>
> Now, when you build, you need to select bif branch
SERVER_CURRENT and
> profile helix-server-nodist (as indicated in the build
guide) and you
> need to use the right SYSTEM_ID for your platform as
listed in this
> guide. If you are building in an existing directory
where you have
> previously built a different branch, cvs will *not*
check out the
> newly specified branch. You need to start in a clean
directory. If
> you are building in a directory where you have
previously built with
> a different SYSTEM_ID or profile, you need to either
tell the build
> system to do a 'clean' build, or else start in a
clean directory.
>
> This will build mp4fformat.so (or .dll), which will
need to be placed
> in your server's Plugins directory.
>
> If you're positive you've built everything clean with
the right branch
> and profile and you are still getting X-RN-H263 instead
of h263-2000,
> then there is probably a bug in the open source plugin
that it's not
> using the right packetization. In this case, I
encourage you to file a
> bug against it in the helixcommunity bugzilla!
>
> Jamie
>
>
> >
> >-Marten
> >
> >
> >>>-Marten
> >>>
> >>>
> >>>
> >>>On Fri, Jun 30, 2006 at 10:23:49AM -0700,
Jamie Gordon wrote:
> >>>
> >>>
> >>>>These are client side plugins you are
building. The Helix DNA Server
> >>>>11.1
> >>>>(and earlier) does not have support for
3gp content.
> >>>>
> >>>>On the HEAD and going forward, there is
limited support for 3gp
> >>>>content
> >>>>in datatype_mp4_fileformat (this is the
file format for mp4/3gp). But
> >>>>this does not include hint track
support, which is only available in
> >>>>the
> >>>>Helix Server Mobile/Universal from
RealNetworks and is not open
> >>>>source.
> >>>>The plugin on the HEAD will support
packetization of MP4V, H.263,
> >>>>MP4A-AAC,
> >>>>and AMR/AMR-WB. It does not support
H.264.
> >>>>
> >>>>The reason this seems to work with the
helix client is that since
> >>>>you're
> >>>>using the helix client side file format
plugin, you are getting the
> >>>>packetization that the client uses for
internal local playback, so it
> >>>>of
> >>>>course knows how to handle it. This is
not optimized for or tested
> >>>>with
> >>>>streaming, so it may or may not work
well for that purpose.
> >>>>
> >>>>Jamie
> >>>>
> >>>>Marten van Wezel wrote:
> >>>>
> >>>>
> >>>>>Here's an update on my quest to
stream 3GPs
> >>>>>
> >>>>>I found:
> >>>>>
> >>>>>- building datatype_aac_fileformat,
datatype_mp4_fileformat
> >>>>>datatype_amr_format datatype_h263
plugins improves things.
> >>>>>- Trying to actually stream to
quicktime player 7 fails. Quicktime
> >>>>>tries to point me to some codec
download page. Then it 'plays' i.e.
> >>>>>it displays the stream duration and
a progress bar counting seconds,
> >>>>>but no audio, nor video.
> >>>>>
> >>>>>Looking into it a bit more Ive
found that the Real Helix DNA server
> >>>>>deviates from the standard and
specifies mime type:
> >>>>>"video/X-RN-3GPP-H264"
instead of (Darwin Streaming server, and
> >>>>>others):
"video/H263-1998"
> >>>>>
> >>>>>Im pretty positive this is why
quicktime chokes. The realone player
> >>>>>plays the stream properly, but also
is the only player that does so.
> >>>>>(VLC chokes too)
> >>>>>
> >>>>>While Im (masochistically?) curious
why this deviation from the
> >>>>>standards is done, Im of course
more interested in rectifying this.
> >>>>>Is there some compile or config
switch to force the server to give
> >>>>>the standard mime types?
> >>>>>-Marten
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>Hello,
> >>>>>>
> >>>>>>I apologise for asking
questions on my first contribution here,
> >>>>>>plus I hope 'here' is the
appropriate place. Anyway, I did do my
> >>>>>>best to find the solution
myself by searching but I'm stumped.
> >>>>>>
> >>>>>>Situation is a win32 build
environment, python, cygwin(cvs/ssh) and
> >>>>>>vc7++ (from Studio .net 2003)
all in place and working.
> >>>>>>The question is simply this:
> >>>>>>
> >>>>>>- How do I enable 3GP streaming
support in the Helix DNA Server.
> >>>>>>
> >>>>>>After doing the base build
(servinstplus) I get a working
> >>>>>>installer, which gets me up and
running in no time. But I get:
> >>>>>>
> >>>>>>28-Jun-2006 16:51:43.UNKNOWN
tmplgpln(3240): No handler for 3gp
> >>>>>>
> >>>>>>When I try to stream a 3gp off
the server.
> >>>>>>
> >>>>>>So then I tried to fix this.
> >>>>>>What I tried to do was compile
various components by selecting the
> >>>>>>build target 0 -> 79, i.e.
core targets -> datatype, which indeed
> >>>>>>compiles some extra dll's. (I
tried more than this,
> >>>>>>serverplugins_plus for example,
but no server targets seem to give
> >>>>>>any better results here)
> >>>>>>
> >>>>>>Anyway, with the datatype
target, indeed, some of these new DLL's
> >>>>>>seem to work, it now for
example properly loads:
> >>>>>>I: mp4fformat.dll 60D910B0
RealNetworks Mpeg4 File Format Plugin
> >>>>>>D: 2953838902
0000000000000100
> >>>>>>
> >>>>>>However quite a few of the
really important ones for 3GP fail:
> >>>>>>28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
> >>>>>>Files\Helix\Helix
> >>>>>>Server\Plugins\amrn.dll NO
HXCreateInstance
> >>>>>>***28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
> >>>>>>Files\Helix\Helix
Server\Plugins\amrn.dll Not a valid library
> >>>>>>28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
> >>>>>>Files\Helix\Helix
> >>>>>>Server\Plugins\amrw.dll NO
HXCreateInstance
> >>>>>>***28-Jun-06 16:19:09.550
hlxserverplus(1516): C:\Program
> >>>>>>Files\Helix\Helix
Server\Plugins\amrw.dll Not a valid library
> >>>>>>
> >>>>>>And in the end the stream fails
to play.
> >>>>>>
> >>>>>>Am I doing something wrong?
Could someone describe the process to
> >>>>>>compile (or acquire, Im willing
to go with binaries here if
> >>>>>>necessary) to get the server to
stream 3gp's?
> >>>>>>Im positive the source file
works by the way, it's hinted and a
> >>>>>>darwin streaming server handles
it just fine.
> >>>>>>
> >>>>>>Id appreciate any help.
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>
>
>>>>>________________________________________
_______
> >>>>>Helix-server-dev mailing list
> >>>>>Helix-server-dev helixcommunity.org
> >>>>>http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
> >>>>>
> >>>>>
> >>>>
> >>>>
> >>>
> >>>
> >>
> >>
> >
>
--
_______________________________________________
Helix-server-dev mailing list
Helix-server-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
|
|
| 3GP support fails to compile |

|
2006-07-07 16:38:03 |
Marten-
You are building correctly. This looks like a bug in the
mp4ff plugin.
datatype_mp4_fileformat is the correct plugin. This is
shared (client/
server), but there are a few differences based on the
profile. It seems
that currently the server build is incorrectly using the
client side
packetizers instead of the server side ones. As you can
tell, the
addition of server side packetizers to the open source code
is new, and
since we have a different wrapper plugin for our retail
servers (which
adds the hint track support), the one in the community has
not yet
gotten much testing!
Jamie
_______________________________________________
Helix-server-dev mailing list
Helix-server-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinf
o/helix-server-dev
|
|
[1-8]
|
|