編寫gstreamill的job檔案

2021-06-22 23:45:01 字數 1215 閱讀 5823

gstreamill是基於gstreamer的編碼器,具體的編碼任務採用json格式的job檔案描述,json格式的job檔案編寫的基礎是對於gstreamer基本概念的理解,本文只介紹job檔案的結構,並不介紹gstreamer的相關概念。

如下是乙個job檔案的總體結構: ,

"encoders" : [

...

], "m3u8streaming" : }

name是job的名字,必須有

debug是log級別,具體含義參照gstreamer的log級別及使用方法,這個field是可選的。

source是編碼器源的描述,必須有。

encoders是編碼器的描述,必須有。

m3u8streaming是對於hls的支援,可選。

source的結構如下:

"source" : ,

"bins" : [

...]

}

elements描述gstreamerelement的具體引數,這些被描述了具體引數的element將用於bins中的bin。

bins描述若干gstreamer bin,這些bin構成source pipeline,sourcepipeline就是編碼器的源。

elements的結構如下:

"elements" :

},"property" :

}bins的結構如下:

"bins" : [

"udpsrc !queue ! tsdemux name=demuxer",

]如下是編碼器的結構:

"encoders" : [

,"bins" :[

...],

"udpstreaming" : "127.0.0.1:12345"},,

"bins" :[

...],

"udpstreaming" : "127.0.0.1:22345"

}],

encoders是array型別的,由多個encoder組成,每個encoder對應乙個編碼輸出。

encoders中的elements與source中的elements作用是一致的,

encoders中的udpstreaming用於指明該encoder是否有udp輸出。

m3u8streaming的結構如下,用於定義encoders的hls輸出,是可選項:

"m3u8streaming" :

join mysql 版本 MySql中的join

建立表 create table t2 id int 11 not null,a int 11 default null,b int 11 default null,primary key id key a a engine innodb drop procedure idata delimiter...

如何使用MapReduce實現兩表的join

map join map side join 是針對一下場景進行的優化。兩個待連線的表中,有乙個表非常大,而另乙個非常小,以至於小表可以直接存放到記憶體中。這樣,我們可以將小表複製多份,讓每乙個map task記憶體中存在乙份 比如放在hash table中 然後只掃瞄大表 對於大表中的每一條記錄k...

如何使用MapReduce實現兩表的join

map join map side join 是針對一下場景進行的優化。兩個待連線的表中,有乙個表非常大,而另乙個非常小,以至於小表可以直接存放到記憶體中。這樣,我們可以將小表複製多份,讓每乙個map task記憶體中存在乙份 比如放在hash table中 然後只掃瞄大表 對於大表中的每一條記錄k...