File tree Expand file tree Collapse file tree 4 files changed +76
-2
lines changed Expand file tree Collapse file tree 4 files changed +76
-2
lines changed Original file line number Diff line number Diff line change @@ -25,7 +25,11 @@ client = qencode.client(API_KEY)
2525client.create()
2626
2727task = client.create_task()
28- task.start(TRANSCODING_PROFILEID, VIDO_URL)
28+ task.start(TRANSCODING_PROFILEID, VIDEO_URL)
29+
30+
31+ #getting video metadata:
32+ metadata = client.get_metadata(VIDEO_URL)
2933
3034````
3135
Original file line number Diff line number Diff line change 11from httptools import Http
22from task import Task
3+ from metadata import Metadata
34
45class QencodeApiClient (object ):
56
@@ -42,4 +43,9 @@ def _get_access_token(self):
4243 else :
4344 self .error = response ['error' ]
4445 self .code = response ['error' ]
45- self .message = response .get ('message' )
46+ self .message = response .get ('message' )
47+
48+ def get_metadata (self , uri ):
49+ metadata = Metadata (self .access_token , self .connect )
50+ video_info = metadata .get (uri )
51+ return video_info
Original file line number Diff line number Diff line change 1+ from task import *
2+ from qencode import QencodeTaskException
3+ import urllib2
4+
5+ class Metadata (Task ):
6+
7+ def get (self , uri ):
8+ params = """
9+ {"query": {
10+ "source": "%s",
11+ "format": [ {"output": "metadata", "metadata_version": "4.1.5"} ]
12+ }
13+ }
14+ """ % uri
15+ self .custom_start (params )
16+ while True :
17+ status = self .status ()
18+ # print status
19+ # print json.dumps(status, indent=2, sort_keys=True)
20+ if status ['error' ] or status ['status' ] == 'completed' :
21+ break
22+ time .sleep (5 )
23+
24+ if self .error :
25+ raise QencodeTaskException (self .message )
26+
27+ url = None
28+ if len (status ['videos' ]) > 0 :
29+ url = status ['videos' ][0 ]['url' ]
30+ elif len (status ['audios' ]) > 0 :
31+ url = status ['audios' ][0 ]['url' ]
32+
33+ if url is None :
34+ raise QencodeTaskException ('No metadata URL found in status response' )
35+
36+ data = urllib2 .urlopen (url ).read ()
37+
38+ return data
39+
40+
Original file line number Diff line number Diff line change 1+ #!/usr/bin/python
2+ # -*- coding: utf-8 -*-
3+
4+ import sys
5+ import os .path
6+ sys .path .append (os .path .abspath (os .path .join (os .path .dirname (__file__ ), os .path .pardir )))
7+ import qencode
8+ from qencode import QencodeClientException
9+
10+ #replace with your API KEY (can be found in your Project settings on Qencode portal)
11+ API_KEY = 'your-api-qencode-key'
12+ VIDEO_URL = 'https://nyc3.s3.qencode.com/qencode/bbb_30s.mp4'
13+
14+ client = qencode .client (API_KEY )
15+ if client .error :
16+ raise QencodeClientException (client .message )
17+
18+ print 'The client created. Expire date: %s' % client .expire
19+
20+ metadata = client .get_metadata (VIDEO_URL )
21+ print ('Metadata: ' + metadata )
22+
23+
24+
You can’t perform that action at this time.
0 commit comments