Guest User

Untitled

a guest
Jan 23rd, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.10 KB | None | 0 0
  1. import gobject
  2. import pygst
  3. pygst.require('0.10')
  4. import gst
  5. import os
  6.  
  7. class GST_Mjpeg:
  8. def __init__(self):
  9. self.header = 'HTTP/1.1 200 OK\r\nContent-Type: multipart/x-mixed-replace;boundary=ThisRandomString\r\n\r\n'
  10.  
  11. print 'creating GST object'
  12.  
  13. source = 'v4l2src'
  14.  
  15. source = 'videotestsrc'
  16. source_filter = 'video/x-raw-yuv,width=640,height=480,framerate=15/1'
  17.  
  18. jpegenc = 'jpegenc'
  19. multipartmux = 'multipartmux'
  20.  
  21. tcpserversink = 'tcpserversink host=127.0.0.1 port=5001 name=tcpserversink'
  22.  
  23.  
  24. line = [source, source_filter, jpegenc, multipartmux, tcpserversink]
  25. line = ' ! '.join(line)
  26.  
  27. self.pipeline = gst.parse_launch(line)
  28. self.pipeline.set_state(gst.STATE_PLAYING)
  29.  
  30. tcp = self.pipeline.get_by_name('tcpserversink')
  31.  
  32. tcp.connect('client-added', self.client_added)
  33.  
  34.  
  35. def client_added(self, sink, fd):
  36. print "client added"
  37. os.write(fd, self.header)
  38.  
  39. my_gst = GST_Mjpeg()
  40.  
  41. loop = gobject.MainLoop()
  42. gobject.threads_init()
  43. context = loop.get_context()
  44. while 1:
  45. context.iteration(True)
Add Comment
Please, Sign In to add comment