def runTest(self): job = bitcodin.Job( input_id=self.input.input_id, encoding_profile_id=self.encoding_profile.encoding_profile_id, manifest_types=self.manifests, speed='standard', merge_audio_channel_configs=self.merge_audio_channel_configs, audio_meta_data=self.audio_meta_data ) self.job = bitcodin.create_job(job) self.assertEquals(self.job.input.input_id, job.inputId) self.assertEquals(self.job.input.url, self.input.url) self.assertEquals(self.job.encoding_profiles[0].encoding_profile_id, job.encodingProfileId) self.wait_until_job_finished(self.job.job_id)
audio_configs = [ bitcodin.AudioStreamConfig(default_stream_id=0, bitrate=192000, rate=48000) ] encoding_profile_obj = bitcodin.EncodingProfile( name='API Test Profile', video_stream_configs=video_configs, audio_stream_configs=audio_configs) encoding_profile_result = bitcodin.create_encoding_profile( encoding_profile_obj) manifests = ['mpd', 'm3u8'] job = bitcodin.Job( input_id=input_result.input_id, encoding_profile_id=encoding_profile_result.encoding_profile_id, manifest_types=manifests, speed='standard', deinterlace=True) try: job_result = bitcodin.create_job(job) except Exception, e: print('Could not start job: %s' % e.message) print('API Response: %s' % e.error) sys.exit() while job_result.status != 'Finished' and job_result.status != 'Error': job_result = bitcodin.get_job(job_result.job_id) print(job_result.to_json()) sleep(5)
height=480, width=854)) audio_configs = [ bitcodin.AudioStreamConfig(default_stream_id=0, bitrate=192000) ] encoding_profile_obj = bitcodin.EncodingProfile( name='API Test Profile', video_stream_configs=video_configs, audio_stream_configs=audio_configs, rotation=45) encoding_profile_result = bitcodin.create_encoding_profile( encoding_profile_obj) manifests = ['mpd', 'm3u8'] # Simply give a output_id to the job configuration to which the results should be copied when the job is finished. job = bitcodin.Job( input_id=input_result.input_id, encoding_profile_id=encoding_profile_result.encoding_profile_id, manifest_types=manifests) job_result = bitcodin.create_job(job) while job_result.status != 'Finished' and job_result.status != 'Error': job_result = bitcodin.get_job(job_result.job_id) print(job_result.to_json()) sleep(5) print(job_result.to_json()) print "Job Finished!"
audio_configs = [ bitcodin.AudioStreamConfig(default_stream_id=0, bitrate=192000), bitcodin.AudioStreamConfig(default_stream_id=1, bitrate=192000) ] encoding_profile_obj = bitcodin.EncodingProfile('API Test Profile Closed Captions', video_configs, audio_configs) encoding_profile_result = bitcodin.create_encoding_profile(encoding_profile_obj) manifests = ['mpd', 'm3u8'] audio_meta_data = [ bitcodin.AudioMetaData(0, 'Spanish', 'es'), bitcodin.AudioMetaData(1, 'English', 'en') ] video_meta_data = [ bitcodin.VideoMetaData(0, 'Spanish', 'es') ] job = bitcodin.Job( input_id=input_result.input_id, encoding_profile_id=encoding_profile_result.encoding_profile_id, manifest_types=manifests, speed='standard', extract_closed_captions=True, audio_meta_data=audio_meta_data, video_meta_data=video_meta_data ) job_result = bitcodin.create_job(job)
)) audio_configs = [bitcodin.AudioStreamConfig(default_stream_id=0, bitrate=192000)] encoding_profile_obj = bitcodin.EncodingProfile('API Test Profile', video_configs, audio_configs) print("ENCODING PROFILE REQUEST %s\n\n" % encoding_profile_obj.to_json()) encoding_profile_result = bitcodin.create_encoding_profile(encoding_profile_obj) print("ENCODING PROFILE RESULT %s\n\n" % encoding_profile_result.to_json()) manifests = ['mpd', 'm3u8'] job = bitcodin.Job( input_id=input_result.input_id, encoding_profile_id=encoding_profile_result.encoding_profile_id, manifest_types=manifests, speed='standard', duration=20, start_time=50 ) print("JOB: %s" % job.to_json()) job_result = bitcodin.create_job(job) while job_result.status != 'Finished' and job_result.status != 'Error': job_result = bitcodin.get_job(job_result.job_id) print(job_result.to_json()) sleep(5) print(job_result.to_json()) print("Job Finished!")
encoding_profile_obj = bitcodin.EncodingProfile('API Test Profile', video_configs, audio_configs) encoding_profile_result = bitcodin.create_encoding_profile( encoding_profile_obj) manifests = ['mpd', 'm3u8'] drm_config = bitcodin.PlayreadyWidevineCombinedDrmConfig( key='100b6c20940f779a4589152b57d2dacb', pssh= 'CAESEOtnarvLNF6Wu89hZjDxo9oaDXdpZGV2aW5lX3Rlc3QiEGZrajNsamFTZGZhbGtyM2oqAkhEMgA=', kid='eb676abbcb345e96bbcf616630f1a3da', la_url= 'http://playready.directtaps.net/pr/svc/rightsmanager.asmx?PlayRight=1&ContentKey=EAtsIJQPd5pFiRUrV9Layw==', method='mpeg_cenc') hls_encryption_config = bitcodin.HLSEncryptionConfig( key='cab5b529ae28d5cc5e3e7bc3fd4a544d', method='SAMPLE-AES', iv='08eecef4b026deec395234d94218273d') job = bitcodin.Job( input_id=input_result.input_id, encoding_profile_id=encoding_profile_result.encoding_profile_id, manifest_types=manifests, speed='standard', drm_config=drm_config, hls_encryption_config=hls_encryption_config) job_result = bitcodin.create_job(job)
profile='Main', preset='premium', height=768, width=1024 )) video_configs.append(bitcodin.VideoStreamConfig( default_stream_id=0, bitrate=1200000, profile='Main', preset='premium', height=480, width=854 )) audio_configs = [bitcodin.AudioStreamConfig(default_stream_id=0, bitrate=192000)] encoding_profile_obj = bitcodin.EncodingProfile('API Test Profile', video_configs, audio_configs) encoding_profile_result = bitcodin.create_encoding_profile(encoding_profile_obj) manifests = ['mpd', 'm3u8'] job = bitcodin.Job( input_id=input_result.input_id, encoding_profile_id=encoding_profile_result.encoding_profile_id, manifest_types=manifests, speed='standard', location='europe' ) job_result = bitcodin.create_job(job)
] encoding_profile_obj = bitcodin.EncodingProfile('Merge Audio Channels Profile', video_configs, audio_configs) encoding_profile_result = bitcodin.create_encoding_profile( encoding_profile_obj) # Merge all 6 audio channels into one merge_audio_channel_config = bitcodin.MergeAudioChannelConfig( [1, 2, 3, 4, 5, 6]) merge_audio_channel_configs = [merge_audio_channel_config] manifests = ['mpd', 'm3u8'] # Audio merging is only available with speed standard job = bitcodin.Job( input_id=input_result.input_id, encoding_profile_id=encoding_profile_result.encoding_profile_id, manifest_types=manifests, speed='standard', merge_audio_channel_configs=merge_audio_channel_configs) job_result = bitcodin.create_job(job) while job_result.status != 'Finished' and job_result.status != 'Error': job_result = bitcodin.get_job(job_result.job_id) print(job_result.to_json()) sleep(5) print(job_result.to_json()) print("Job Finished!")
audio_configs = list() audio_stream_config_0 = bitcodin.AudioStreamConfig(default_stream_id=0, bitrate=192000) audio_stream_config_1 = bitcodin.AudioStreamConfig(default_stream_id=1, bitrate=192000) audio_configs.append(audio_stream_config_0) audio_configs.append(audio_stream_config_1) encoding_profile_obj = bitcodin.EncodingProfile('API Test Profile', video_configs, audio_configs) encoding_profile_result = bitcodin.create_encoding_profile( encoding_profile_obj) audio_meta_data = [] audio_stream_config_0_meta_data = bitcodin.AudioMetaData(0, 'de', 'Just Sound') audio_stream_config_1_meta_data = bitcodin.AudioMetaData( 1, 'en', 'Sound and Voice') audio_meta_data.append(audio_stream_config_0_meta_data) audio_meta_data.append(audio_stream_config_1_meta_data) manifests = ['mpd', 'm3u8'] job = bitcodin.Job( input_id=input_result.input_id, encoding_profile_id=encoding_profile_result.encoding_profile_id, manifest_types=manifests, speed='standard', audio_meta_data=audio_meta_data) job_result = bitcodin.create_job(job)