2012-02-23 14 views
0

Gstreamerは非常に新しくなっています。私は次のように_chain()関数で別のバッファにBUF(チェーンへの引数)からデータをコピーしようとしたとき、私はセグメンテーションフォールトを取得2でYUVビデオの高さを低くするプラグインを書いています:コピーGStreamerのあるバッファから別のバッファへのYUVビデオフレーム

GstBuffer *バッファ;

グングサイズ;

サイズ= GST_BUFFER_SIZE(buf);

バッファ= gst_buffer_new();

GST_BUFFER_SIZE(バッファ)=サイズ;

GST_BUFFER_MALLOCDATA(バッファ)= g_malloc(サイズ)。

GST_BUFFER_DATA(バッファ)= GST_BUFFER_MALLOCDATA(バッファ)

memcpy(バッファ、buf、サイズ);

親切に初心者を助ける:) あなたはバッファオブジェクトの上にコピーしているあなたに

答えて

3

をありがとうございました!使用してみてください:あなたはまた、行うことができ

 
buffer = gst_buffer_new_and_alloc(size); 
memcpy(GST_BUFFER_DATA(buffer),GST_BUFFER_DATA(buf),size); 

 
buffer = gst_buffer_copy(buf); 
GST_BUFFER_SIZE (buffer) = size; 
関連する問題