页次: 1
最近有点闲,想做点小东西来配合上个世纪的电视机。
但在调试F1C200S的tv-out输出的时候,没有任何办法和头绪,还是太菜。
在linux内核启动的时候,启动信息看到tv-encoder了,dev有fb0和dri/card0,但始终差临门一脚。
望各位大佬指点一下小弟,感激不尽。
启动的部分信息
[ 1.059740] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pd not found, using dummy regulator
[ 1.071758] sun4i-drm soc:display-engine: bound 1e00000.display-frontend (ops 0xc083b2c0)
[ 1.080737] sun4i-drm soc:display-engine: bound 1e60000.display-backend (ops 0xc083ab00)
[ 1.090389] sun4i-drm soc:display-engine: bound 1c0c000.lcd-controller (ops 0xc08396a0)
[ 1.098997] sun4i-drm soc:display-engine: bound 1c0a000.tv-encoder (ops 0xc083a3c0)
[ 1.106775] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 1.113429] [drm] No driver support for vblank timestamp query.
[ 1.121605] [drm] Initialized sun4i-drm 1.0.0 20150629 for soc:display-engine on minor 0
[ 1.130550] [drm] kms: can't enable cloning when we probably wanted to.
[ 1.187122] Console: switching to colour frame buffer device 60x34
[ 1.239317] sun4i-drm soc:display-engine: fb0: sun4i-drmdrmfb frame buffer device
modeprint 信息
trying to open device 'sun4i-drm'
count_connectors : 2
count_encoders : 2
count_crtcs : 1
count_fbs : 0
Connector: unknown-1
id : 49
encoder id : 48
conn : connected
size : 95x53 (mm)
count_modes : 1
count_props : 5
props : 1 2 5 6 4
count_encoders : 1
encoders : 48
Mode: "480x272" 480x272 60
Connector: composite-1
id : 51
encoder id : 0
conn : connected
size : 0x0 (mm)
count_modes : 2
count_props : 5
props : 1 2 5 6 4
count_encoders : 1
encoders : 50
Mode: "PAL" 720x576 50
Mode: "NTSC" 720x480 60
Encoder: none
id :48
crtc_id :47
type :0
possible_crtcs :0x1
possible_clones :0x0
Encoder: TVDAC
id :50
crtc_id :0
type :4
possible_crtcs :0x1
possible_clones :0x0
Crtc
id : 47
x : 0
y : 0
width : 480
height : 272
mode : 0x256cc
gamma size : 0
Ok
设备树部分相关设置
tve0: tv-encoder@1c0a000 {
compatible = "allwinner,suniv-f1c100s-tv-encoder",
"allwinner,sun4i-a10-tv-encoder";
reg = <0x01c0a000 0x1000>;
clocks = <&ccu CLK_BUS_TVE>;
resets = <&ccu RST_BUS_TVE>;
status = "okay";
port {
tve0_in_tcon0: endpoint {
remote-endpoint = <&tcon0_out_tve0>;
};
};
};
tcon0: lcd-controller@1c0c000 {
compatible = "allwinner,suniv-f1c100s-tcon",
"allwinner,sun4i-a10-tcon";
reg = <0x01c0c000 0x1000>;
interrupts = <29>;
clocks = <&ccu CLK_BUS_LCD>,
<&ccu CLK_TCON>,
<&ccu CLK_TVE1_CLK>;
clock-names = "ahb",
"tcon-ch0",
"tcon-ch1";
clock-output-names = "tcon-pixel-clock";
resets = <&ccu RST_BUS_LCD>;
reset-names = "lcd";
assigned-clocks = <&ccu CLK_TCON>;
assigned-clock-rates = <297000000>;
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
tcon0_in: port@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
tcon0_in_be0: endpoint@0 {
reg = <0>;
remote-endpoint = <&be0_out_tcon0>;
};
};
tcon0_out: port@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
tcon0_out_tve0: endpoint@1 {
reg = <1>;
remote-endpoint = <&tve0_in_tcon0>;
allwinner,tcon-channel = <1>;
};
};
};
};
一步一步的来,出现这个错误了。看楼上有这个错误,只是看完了还是不知道如何解决。明明注册好的。
找到解决方法了,我的平台是f1c200s,楼主在另外一个帖子说明了解决方法。
# gst-launch-1.0 filesrc location=bad_apple.mp4 ! qtdemux name=demux demux.audio
_0 ! queue ! decodebin ! audioconvert ! audioresample ! alsasink demux.video_0 !
queue ! h264parse ! omxh264dec ! videoconvert ! videoscale ! fbdevsink
Setting pipeline to PAUSED ...
debug : cedarc <AwOmxComponentInit:26>:OMXCORE: aw_omx_component_init 16a400
debug : omx_vdec <__AwOmxVdecInit:1059>:++++++++++++++++++++++omx begin++++++++++++++++++
debug : omx_vdec <__AwOmxVdecInit:1060>:name = OMX.allwinner.video.decoder.avc
debug : omx_vdec_aw <OmxDecoderCreate:958>:kay: ** 0.
debug : cedarc <CdcMessageQueueCreate:47>:nMessageSize = 20
debug : cedarc <AwOmxComponentSetCallbacks:309>:OMXCORE: aw_omx_component_set_callbacks 16a400, b6447504 , 61470
debug : omx_vdec <__AwOmxVdecSetCallbacks:1812>:===== vdec set callbacks
Pipeline is PREROLLING ...
debug : omx_vdec <AwOmxVdecPortSetDefinitioin:190>:port:<<<<<<<<in,nBufferCountActual = 2, mBufferCntActual = 2
debug : omx_vdec <AwOmxVdecPortSetDefinitioin:190>:port:<<<<<<<<in,nBufferCountActual = 2, mBufferCntActual = 2
error : omx_vdec <AwOmxVdecPortGetFormat:288>:erro: pParamData->nIndex > m_sPortFormatType.nIndex
debug : omx_vdec <controlSetState:358>:current state:OMX_StateLoaded, target state:OMX_StateIdle
debug : omx_vdec <doStateWaitforResources2Idle:561>:bEnabled[1],[1],bPopulated[0],[0]
debug : omx_vdec <__AwOmxVdecAllocateBuffer:1693>:kay: __AwOmxVdecAllocateBuffer
debug : omx_vdec <__AwOmxVdecAllocateBuffer:1713>:kay: __AwOmxVdecAllocateBuffer 2
debug : omx_vdec_aw <__liAllocatePortBuffer:885>:kay: *** 0.
debug : omx_vdec_aw <__liAllocatePortBuffer:897>:kay: malloc
debug : omx_vdec_aw <__liAllocatePortBuffer:899>:kay: malloc2
debug : omx_vdec <__AwOmxVdecAllocateBuffer:1715>:kay: __AwOmxVdecAllocateBuffer 3
debug : omx_vdec <AwOmxVdecPortPopBuffer:393>:*******port pop buffer:<<<<<<<<in
debug : omx_vdec <__AwOmxVdecAllocateBuffer:1693>:kay: __AwOmxVdecAllocateBuffer
debug : omx_vdec <__AwOmxVdecAllocateBuffer:1713>:kay: __AwOmxVdecAllocateBuffer 2
debug : omx_vdec_aw <__liAllocatePortBuffer:885>:kay: *** 0.
debug : omx_vdec_aw <__liAllocatePortBuffer:897>:kay: malloc
debug : omx_vdec_aw <__liAllocatePortBuffer:899>:kay: malloc2
debug : omx_vdec <__AwOmxVdecAllocateBuffer:1715>:kay: __AwOmxVdecAllocateBuffer 3
debug : omx_vdec <AwOmxVdecPortPopBuffer:393>:*******port pop buffer:<<<<<<<<in
......
WARNING: from element /GstPipeline:pipeline0/GstFBDEVSink:fbdevsink0: A lot of buffers are being dropped.
Additional debug info:
../libs/gst/base/gstbasesink.c(3005): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstFBDEVSink:fbdevsink0:
There may be a timestamping problem, or this computer is too slow.
WARNING: from element /GstPipeline:pipeline0/GstFBDEVSink:fbdevsink0: A lot of buffers are being dropped.
Additional debug info:
../libs/gst/base/gstbasesink.c(3005): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstFBDEVSink:fbdevsink0:
There may be a timestamping problem, or this computer is too slow.
......
debug : omx_vdec <doStateWaitforResources2Idle:561>:bEnabled[1],[1],bPopulated[1],[1]
debug : omx_vdec <controlSetState:379>:Transit current state:OMX_StateExecuting --> target state:OMX_StateIdle --OK!
Setting pipeline to NULL ...
debug : omx_vdec <controlSetState:358>:current state:OMX_StateIdle, target state:OMX_StateLoaded
debug : omx_vdec <AwOmxVdecPortFreeBuffer:455>:port:<<<<<<<<in, pBufferHdr:0x135d70
debug : omx_vdec <AwOmxVdecPortFreeBuffer:455>:port:<<<<<<<<in, pBufferHdr:0x135dc0
debug : omx_vdec <AwOmxVdecPortFreeBuffer:455>:port:>>>>>>>out, pBufferHdr:0x8f278
debug : omx_vdec <AwOmxVdecPortFreeBuffer:455>:port:>>>>>>>out, pBufferHdr:0x8f2c8
debug : omx_vdec <AwOmxVdecPortFreeBuffer:455>:port:>>>>>>>out, pBufferHdr:0x8f318
debug : omx_vdec <AwOmxVdecPortFreeBuffer:455>:port:>>>>>>>out, pBufferHdr:0x8f368
debug : omx_vdec <controlSetState:379>:Transit current state:OMX_StateIdle --> target state:OMX_StateLoaded --OK!
debug : cedarc <AwOmxComponentDeinit:47>:OMXCORE: aw_omx_component_deinit 16a400
debug : omx_vdec <__AwOmxVdecComponentDeinit:1829>:Omx Vdec Component Deinit begin
debug : omx_vdec <onMessageReceived:786>:********quit************
debug : omx_sem <OmxTryPostSem:119>:post sem:flushSem
debug : omx_thread <loopEntryWrapper:72>:exit thread drain truely!!!
debug : omx_thread <loopEntryWrapper:72>:exit thread decode truely!!!
debug : omx_thread <loopEntryWrapper:72>:exit thread submit truely!!!
debug : omx_vdec <__AwOmxVdecComponentDeinit:1835>:threads exit!
debug : cedarc <checkLibUnload:188>: Unloading the dynamic library for OMX.allwinner.video.decoder.avc
Freeing pipeline ...
附上一些启动日志,供参考。
Setting pipeline to PAUSED ...
ERROR: Pipeline doesn't want to pause.
ERROR: from element /GstPipeline:pipeline0/GstOMXH264Dec-omxh264dec:omxh264dec-omxh264dec0: Could not initialize supporting library.
Additional debug info:
../gst-libs/gst/video/gstvideodecoder.c(2517): gst_video_decoder_change_state (): /GstPipeline:pipeline0/GstOMXH264Dec-omxh264dec:omxh264dec-omxh264dec0:
Failed to open decoder
Setting pipeline to NULL ...
Freeing pipeline ...
一步一步的来,出现这个错误了。看楼上有这个错误,只是看完了还是不知道如何解决。明明注册好的。
页次: 1