Re: [Ekiga-devel-list] Ekiga trunk version and H.264
- From: Eugen Dedu <Eugen Dedu pu-pm univ-fcomte fr>
- To: Ekiga mailing list <ekiga-devel-list gnome org>
- Subject: Re: [Ekiga-devel-list] Ekiga trunk version and H.264
- Date: Fri, 28 May 2010 12:48:11 +0200
Are you sure latest H264 works with these changes? I remember having
made these changes, still there was a crash right after the video
started to be shown.
On 28/05/10 12:37, Thierry Simonnet wrote:
diff --git a/include/h323/h323ep.h b/include/h323/h323ep.h
--- a/include/h323/h323ep.h
+++ b/include/h323/h323ep.h
@@ -60,6 +60,7 @@ class H225_H221NonStandard;
class H225_H221NonStandard;
class H225_ServiceControlDescriptor;
class H225_FeatureSet;
+class H225_ArrayOf_SupportedProtocols;
class H235SecurityInfo;
diff --git a/plugins/video/H.264/shared/h264frame.cxx
b/plugins/video/H.264/shared/h264frame.cxx
--- a/plugins/video/H.264/shared/h264frame.cxx
+++ b/plugins/video/H.264/shared/h264frame.cxx
@@ -86,7 +86,6 @@ H264Frame::~H264Frame ()
#ifndef LICENCE_MPL
void H264Frame::SetFromFrame (x264_nal_t *NALs, int numberOfNALs) {
- int vopBufferLen;
int currentNAL = 0;
uint8_t* currentPositionInFrame=(uint8_t*) _encodedFrame;
@@ -99,8 +98,9 @@ void H264Frame::SetFromFrame (x264_nal_t
// read the nals out of the encoder and create meta data about their
location and size in the frame
for (currentNAL = 0; currentNAL< numberOfNALs; currentNAL++) {
- int currentNALLen;
- currentNALLen = X264_NAL_ENCODE(currentPositionInFrame,&vopBufferLen,
1,&NALs[currentNAL]);
+ int currentNALLen = NALs[currentNAL].i_payload;
+ memcpy(currentPositionInFrame, NALs[currentNAL].p_payload,
NALs[currentNAL].i_payload);
+
if (currentNALLen> 0)
{
_NALs[_numberOfNALsInFrame].length = currentNALLen;
diff -u ./plugins/video/H.264/gpl/x264loader_unix.cxx_ORI
./plugins/video/H.264/gpl/x264loader_unix.cxx
--- ./plugins/video/H.264/gpl/x264loader_unix.cxx_ORI 2010-05-28
12:35:14.000000000 +0200
+++ ./plugins/video/H.264/gpl/x264loader_unix.cxx 2010-05-28
12:36:43.000000000 +0200
@@ -53,7 +53,7 @@
return false;
}
- if (!GetFunction("x264_encoder_open", (Function &)Xx264_encoder_open)) {
+ if (!GetFunction("x264_encoder_open_96", (Function
&)Xx264_encoder_open)) {
TRACE (1, "H264\tDYNA\tFailed to load x264_encoder_open");
return false;
}
On 05/28/2010 11:44 AM, Eugen Dedu wrote:
Could you post the patches? We need to register on that page.
On 28/05/10 11:20, Thierry Simonnet wrote:
For H264 under Linux:
it is necessary to use these patches :
http://www.aef.info/public/fr/abonne/depeche/depeche_detail.php?page=depeche_detail&rub=dep&id=79912
but also patch opal/plugins/video/H.264/gpl/x264loader_unix.cxx file
Replace line #56
if (!GetFunction("x264_encoder_open", (Function &)Xx264_encoder_open)) {
by
if (!GetFunction("x264_encoder_open_96", (Function
&)Xx264_encoder_open)) {
where 96 is the version of libx264.so (libx264.so.96 for the trunk
version)
Performances are not very good!!
For Windows version, I investigate.
On 05/24/2010 12:11 PM, Eugen Dedu wrote:
On 21/05/10 16:16, Thierry Simonnet wrote:
I had this trouble (old one). Even applying patch on h264frame.cxx.
.
It compiles for Win32 version, detect H.264 but crashes when using it.
Well, H264 and H263+ do not work for the moment, if someone with crash
debugging knowledge could help...
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]