[transmageddon] Fix rank settings for hardware encoders, fix remuxing support
- From: Christian Fredrik Kalager Schaller <uraeus src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [transmageddon] Fix rank settings for hardware encoders, fix remuxing support
- Date: Thu, 3 Jul 2014 08:47:14 +0000 (UTC)
commit b35e18c4d63dac5db640d35f6f57319bdb7354e8
Author: Christian Fredrik Kalager Schaller <uraeus linuxrising org>
Date: Thu Jul 3 10:46:34 2014 +0200
Fix rank settings for hardware encoders, fix remuxing support
src/transcoder_engine.py | 9 ++-------
src/transmageddon.py | 14 +++++++++-----
2 files changed, 11 insertions(+), 12 deletions(-)
---
diff --git a/src/transcoder_engine.py b/src/transcoder_engine.py
index 26bfc5f..6f01016 100644
--- a/src/transcoder_engine.py
+++ b/src/transcoder_engine.py
@@ -338,23 +338,17 @@ class Transcoder(GObject.GObject):
def OnDynamicPad(self, uridecodebin, src_pad):
origin = src_pad.query_caps(None)
- #print("origin is " + str(origin))
if (self.streamdata['container']==False):
a = origin.to_string()
if a.startswith("audio/"): # this is for audio only files
src_pad.add_probe(Gst.PadProbeType.EVENT_DOWNSTREAM, self.padprobe, None)
else:
c = origin.to_string()
- #print("c is " +str(c))
if not (c.startswith("text/") or c.startswith("subpicture/") or c.startswith("audio/")):
if not (c.startswith("video/") and (self.videodata[0]['outputvideocaps'] == False)):
if self.streamdata['passcounter'] == int(0):
- # if not c.startswith("audio/"):
if c.startswith("video/x-raw"):
- #print("origin is now " +str(origin))
- #print("try to emit")
self.sinkpad = self.encodebin.emit("request-pad", origin)
- #print(self.sinkpad)
if c.startswith("audio/"):
if self.streamdata['passcounter'] == int(0):
src_pad.add_probe(Gst.PadProbeType.EVENT_DOWNSTREAM, self.padprobe, None)
@@ -370,6 +364,7 @@ class Transcoder(GObject.GObject):
if self.sinkpad != None:
self.videoflipper.get_static_pad("src").link(self.sinkpad)
else:
+ self.sinkpad = self.encodebin.emit("request-pad", origin)
src_pad.link(self.sinkpad)
def on_autoplug_continue(self, element, pad, caps):
@@ -387,7 +382,7 @@ class Transcoder(GObject.GObject):
x=x+1
if streamid ==self.videodata[0]['streamid']:
if self.videodata[0]['dopassthrough'] == True:
- self.autoplugreturnvalue = False
+ autoplugreturnvalue = False
capsvalue=caps.to_string()
if capsvalue.startswith("subtitle/"): # this is to avoid wasting resources on decoding subtitles
self.autoplugreturnvalue =False
diff --git a/src/transmageddon.py b/src/transmageddon.py
index 7f44b38..ccc8f9c 100644
--- a/src/transmageddon.py
+++ b/src/transmageddon.py
@@ -58,15 +58,19 @@ dvdfactory=Gst.ElementFactory.find("dvdreadsrc")
if dvdfactory:
dvdfactory.set_rank(300)
-# Disable vaapi decoding as it gives issues
+ # Disable vaapi decoding as it gives issues
vaapidecfactory=Gst.ElementFactory.find("vaapidecode")
if vaapidecfactory:
- vaapidecfactory.set_rank(200)
+ vaapidecfactory.set_rank(0)
-# if Vaapi encoder exists, use it
-vaapiencfactory=Gst.ElementFactory.find("vaapiencode")
+ # if Vaapi encoder exists, use it
+vaapiencfactory=Gst.ElementFactory.find("vaapiencode_h264")
if vaapiencfactory:
- vaapiencfactory.set_rank(300)
+ vaapiencfactory.set_rank(0)
+ # if Vaapi encoder exists, use it
+vaapiencfactory=Gst.ElementFactory.find("vaapiencode_mpeg2")
+if vaapiencfactory:
+ vaapiencfactory.set_rank(0)
TARGET_TYPE_URI_LIST = 80
dnd_list = [ ( 'text/uri-list', 0, TARGET_TYPE_URI_LIST ) ]
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]