Hi,
I've noticed that "video-dimensions-changed" reports 0x0 size for rtsp stream in gstplayer. Any idea how to workaround this? |
On Di, 2016-09-20 at 13:28 -0700, pedjaman wrote:
> Hi, > > I've noticed that "video-dimensions-changed" reports 0x0 size for rtsp > stream in gstplayer. > Any idea how to workaround this? How can this be reproduced, and on which RTSP stream? Can you get a debug log with GST_DEBUG=6? -- Sebastian Dröge, Centricular Ltd · http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (985 bytes) Download Attachment |
I've tried several RTSP streames (h264 AAC).
They are playing correctly but size iz 0x0. Size change is reported only once with this value. No further dimension change events fired. How can I set debug level from JNI? |
On Mi, 2016-09-21 at 07:35 -0700, pedjaman wrote:
> I've tried several RTSP streames (h264 AAC). > They are playing correctly but size iz 0x0. > Size change is reported only once with this value. No further > dimension > change events fired. > > How can I set debug level from JNI? In gstreamer_android-1.0.c.in (in!) you can find a line that sets it to GST_LEVEL_WARNING. Change that to GST_LEVEL_LOG and rebuild your application. Then you should get a lot of debug output in "adb logcat". -- Sebastian Dröge, Centricular Ltd · http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (985 bytes) Download Attachment |
Thank you fro your reply.
Mentioned file doesn't exists in project tree or downloaded gstreamer 1.9.2 archive from this location: https://gstreamer.freedesktop.org/data/pkg/android/ Where it should be located? |
On Do, 2016-09-22 at 07:39 -0700, pedjaman wrote:
> Thank you fro your reply. > > Mentioned file doesn't exists in project tree or downloaded gstreamer > 1.9.2 > archive from this location: > https://gstreamer.freedesktop.org/data/pkg/android/ > <https://gstreamer.freedesktop.org/data/pkg/android/> > Where it should be located? In share/gst-android/ndk-build inside those files. -- Sebastian Dröge, Centricular Ltd · http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (985 bytes) Download Attachment |
Thank you for fast reply.
When setting such debug level, a lot of debug messages are lost due to excessive amount of verbose messages. I'm attaching two logcats: 1. logcat.txt - having some messages dropped including one which should be outputted by my debug line (see bellow): 2. logcat_filtered_width.txt - (filtered by word width) outputting my debug line and above that properly detected size Snippet of code reportinng 0x0 mGstMediaPlayer = new Player(); mGstMediaPlayer.setVideoDimensionsChangedListener(new Player.VideoDimensionsChangedListener() { public void videoDimensionsChanged(Player player, final int width, final int height) { Log.d(TAG, "videoDimensionsChanged: width=" + width + " height=" + height); } }); Snippet above is borrowed from player example. Handler is set with: g_signal_connect (player->player, "video-dimensions-changed", G_CALLBACK (on_video_dimensions_changed), player); static void on_video_dimensions_changed (GstPlayer * gstplayer, gint width, gint height, Player * player) { JNIEnv *env = get_jni_env (); (*env)->CallVoidMethod (env, player->java_player, on_video_dimensions_changed_method_id, width, height); if ((*env)->ExceptionCheck (env)) { (*env)->ExceptionDescribe (env); (*env)->ExceptionClear (env); } } I wonder why this reports 0x0 when we have width and height proeprly detected? Any clue or workaround on mind? |
In reply to this post by pedjaman
On Do, 2016-09-22 at 09:18 -0700, pedjaman wrote:
> Thank you for fast reply. > > When setting such debug level, a lot of debug messages are lost due > to excessive amount of verbose messages. Can you make available the RTSP stream that results in this? This should be reproducible outside Android too, on platforms where you can actually debug more easily. -- Sebastian Dröge, Centricular Ltd · http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (985 bytes) Download Attachment |
Any h264 AAC stream behaves the same. I haven't tried others.
For example, widely used: rtsp://mpv.cdn3.bigCDN.com:554/bigCDN/definst/mp4:bigbuckbunnyiphone_400.mp4 We could move this outside android, bt on android, decoders we are using are OMX based. So it might be specific to them. herefore, moving outside may not be helpful. Although, we can try |
On Do, 2016-09-22 at 12:41 -0700, pedjaman wrote:
> Any h264 AAC stream behaves the same. I haven't tried others. > > For example, widely used: > > rtsp://mpv.cdn3.bigCDN.com:554/bigCDN/definst/mp4:bigbuckbunnyiphone_400.mp4 > > We could move this outside android, bt on android, decoders we are using are > OMX based. So it might be specific to them. herefore, moving outside may not > be helpful. Although, we can try What I see here is that the signal first gets emitted with 0x0, and then a bit later with 320x180. Is that also what you see? -- Sebastian Dröge, Centricular Ltd · http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (985 bytes) Download Attachment |
No. in 1.9.2 only one signal is fired. check supplied catlog
|
On Do, 2016-09-22 at 13:26 -0700, pedjaman wrote:
> No. in 1.9.2 only one signal is fired. check supplied catlog Ok, please file a bug with a testcase and the link to the stream then. https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer I can't reproduce this here, it seems to always report first 0x0 and then the correct resolution once it is actually known. -- Sebastian Dröge, Centricular Ltd · http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (985 bytes) Download Attachment |
Bug #771882 submited.
|
Could you provide sample code you are using? The one which produces two events (0x0 and apropriate widthn and height)?
Also which version of GStreamer? Is it 1.9.2? Trying to find out if I'm doing something wrong or it is somehwere in GStreamer |
On Fr, 2016-09-23 at 09:59 -0700, pedjaman wrote:
> Could you provide sample code you are using? The one which produces > two > events (0x0 and apropriate widthn and height)? > Also which version of GStreamer? Is it 1.9.2? > Trying to find out if I'm doing something wrong or it is somehwere in > GStreamer I was using gst-play from here: https://cgit.freedesktop.org/gstreamer/gst-examples/tree/playback/player/gst-play And then added a signal handler for video-dimensions-changed, which just printed the resolution. This is with GIT master, but nothing changed in that regard since 1.9.2. Does your stream start playing for you? -- Sebastian Dröge, Centricular Ltd · http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (985 bytes) Download Attachment |
Stream is playing, audio is there but just colored stripes on texture due to not being able to get size from gstreamer to set surfaces buffer size. I've made workaround by: 1. catching "state-changed" (on_state_changed in example code) 2. adding following snippet to re-fire size change // Workaround for bad width and height if(state == GST_PLAYER_STATE_PLAYING) { GstPlayerVideoInfo * vi = gst_player_get_current_video_track(player->player); gint width = gst_player_video_info_get_width(vi); gint height = gst_player_video_info_get_height(vi); __android_log_print (ANDROID_LOG_DEBUG, "GstPlayer", "*************************************************** width x height=%dx%d", width, height); on_video_dimensions_changed(unused, width, height, player); } Nasty workaround but that solved a problem. Please note that this is the only change in example code. This will do it until we find real cause of missing event On Sat, Sep 24, 2016 at 3:50 PM, Sebastian Dröge-3 [via GStreamer-devel] <[hidden email]> wrote: On Fr, 2016-09-23 at 09:59 -0700, pedjaman wrote: |
On Sat, 2016-09-24 at 06:56 -0700, pedjaman wrote:
> Stream is playing, audio is there but just colored stripes on texture > due to not being able to get size from gstreamer to set surfaces > buffer size. > I've made workaround by: > 1. catching "state-changed" (on_state_changed in example code) > 2. adding following snippet to re-fire size change > // Workaround for bad width and height > [...] Well, as you say, that's only a workaround :) Can you get a full debug log, and one with gst-player:6 into the bug report? That might already give a hint where to look before I get the time to test things myself on Android. -- Sebastian Dröge, Centricular Ltd · http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (949 bytes) Download Attachment |
Free forum by Nabble | Edit this page |