Monday, July 29, 2013

Progress

The video test producer's caps could not be parsed because of the formatting. I fixed that with correct placement of commas -> [7c12ca0]
Other changes -> [5a1ac72]

Checklist:
1.
  1. Traceback (most recent call last):
  2.   File "/home/max/Desktop/flumotion-porting/flumotion/flumotion/common/gstreamer.py", line 51, in verbose_deep_notify_cb
  3.     value = orig.get_property(pspec.name)
  4. AttributeError: 'NoneType' object has no attribute 'name'

Printing the arguments in verbose_deep_notify_cb in gstreamer.py gives the following:
'print object' prints <Pipeline object at 0x9cb0c34 (GstPipeline at 0x9ce6c38)>
'print orig' prints <__main__.GstMultiFdSink object at 0x9868c0c (GstMultiFdSink at 0x98656d0)>
'print pspec' prints None
'print component' prints all components in the pipeline

Printing pspec in the pre-ported Flumotion shows that it's only a log of the pipeline properties/specifications.

Tried a lot of things, but at the end i did this to get pass the problem:

https://github.com/bananadine/flumotion/commit/5a1ac72140408aeb84be09cc99de792c01390fcd#L0R51

2.
  1. Twisted traceback:
  2. Traceback (most recent call last):
  3.   File "/usr/lib/python2.7/dist-packages/twisted/spread/pb.py", line 896, in proto_message
  4.     self._recvMessage(self.localObjectForID, requestID, objectID, message, answerRequired, netArgs, netKw)
  5.   File "/usr/lib/python2.7/dist-packages/twisted/spread/pb.py", line 910, in _recvMessage
  6.     netResult = object.remoteMessageReceived(self, message, netArgs, netKw)
  7.   File "/home/max/Desktop/flumotion-porting/flumotion/flumotion/common/medium.py", line 279, in remoteMessageReceived
  8.     self, broker, message, args, kw)
  9.   File "/home/max/Desktop/flumotion-porting/flumotion/flumotion/twisted/pb.py", line 584, in remoteMessageReceived
  10.     d = defer.maybeDeferred(method, *args, **kwargs)
  11. --- <exception caught here> ---
  12.   File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line 134, in maybeDeferred
  13.     result = f(*args, **kw)
  14.   File "/home/max/Desktop/flumotion-porting/flumotion/cache/component/3a795ff0d790d96af4e17e4306ad0c5c/flumotion/component/feedcomponent.py", line 249, in remote_setMasterClock
  15.     return self.comp.set_master_clock(ip, port, base_time)
  16.   File "/home/max/Desktop/flumotion-porting/flumotion/cache/component/3a795ff0d790d96af4e17e4306ad0c5c/flumotion/component/feedcomponent010.py", line 504, in set_master_clock
  17.     element = self.pipeline.get_by_name('src')
  18. exceptions.TypeError: unbound method get_by_name() must be called with Pipeline instance as first argument (got str instance instead)
  1. Traceback (most recent call last):
  2.   File "/home/max/Desktop/flumotion-porting/flumotion/cache/vorbis-component/2b18938d80c0f3474d96f6eea8f6c471/flumotion/component/encoders/vorbis/vorbis010.py", line 75, in buffer_probe
  3.     in_rate = kaps[0].get_value('rate')
  4.   File "/usr/lib/python2.7/dist-packages/gi/types.py", line 43, in function
  5.     return info.invoke(*args, **kwargs)
  6. TypeError: unknown type GstIntRange

(pygst doesn't yet support the full set of gstreamer GType values)

4.
  1. WARN  [13016] "encoder-audio"                  feedcomponent     Jul 28 16:42:14      element /GstPipeline:pipeline-encoder-audio/GstFdSrc:eater:default error Internal data flow error. gstbasesrc.c(2809): gst_base_src_loop (): /GstPipeline:pipeline-encoder-audio/GstFdSrc:eater:default:
  2. streaming task paused, reason not-negotiated (-4) (flumotion/component/feedcomponent010.py:261)
  3. INFO  [13016] "encoder-audio"                  feedcomponent     Jul 28 16:42:14      We got an eos from pipeline-encoder-audio (flumotion/component/feedcomponent010.py:284)

I don't know anything about this one, yet.

5.
  1. Twisted traceback:
  2. Traceback (most recent call last):
  3.   File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 84, in callWithLogger
  4.     return callWithContext({"system": lp}, func, *args, **kw)
  5.   File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 69, in callWithContext
  6.     return context.call({ILogContext: newCtx}, func, *args, **kw)
  7.   File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 118, in callWithContext
  8.     return self.currentContext().callWithContext(ctx, func, *args, **kw)
  9.   File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 81, in callWithContext
  10.     return func(*args,**kw)
  11. --- <exception caught here> ---
  12.   File "/usr/lib/python2.7/dist-packages/twisted/internet/posixbase.py", line 586, in _doReadOrWrite
  13.     why = selectable.doRead()
  14.   File "/home/max/Desktop/flumotion-porting/flumotion/flumotion/twisted/fdserver.py", line 98, in doRead
  15.     message[offset:offset+msglen])
  16.   File "/home/max/Desktop/flumotion-porting/flumotion/flumotion/job/job.py", line 338, in fileDescriptorsReceived
  17.     os.close, eaterId)
  18.   File "/home/max/Desktop/flumotion-porting/flumotion/cache/component/3a795ff0d790d96af4e17e4306ad0c5c/flumotion/component/feedcomponent010.py", line 806, in feedToFD
  19.     self.pipeline.get_state(0)[1] == Gst.State.NULL):
  20. exceptions.TypeError: unbound method get_state() must be called with Pipeline instance as first argument (got int instance instead)

This is gone.

6.
  1. Traceback (most recent call last):
  2.   File "/home/max/Desktop/flumotion-porting/flumotion/cache/component/3a795ff0d790d96af4e17e4306ad0c5c/flumotion/component/feedcomponent.py", line 985, in buffer_probe_cb
  3.     pad = Gst.Element.get_static_pad('src')
  4. TypeError: unbound method get_static_pad() must be called with Element instance as first argument (got str instance instead)

This change needs to be applied here: https://github.com/bananadine/flumotion/commit/5a1ac72140408aeb84be09cc99de792c01390fcd#L1L1019

Instead of calling the method on Gst.Element (which makes no sense) I need to call it on something which is a GstElement.

I'll post the current worker output tomorrow/later in an edit to show what needs to be fixed.

EDIT: Worker output http://pastebin.com/xsa7x7rj

No comments :

Post a Comment