Joining video file

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Joining video file

adrien_sch
CONTENTS DELETED
The author has deleted this message.
Reply | Threaded
Open this post in threaded view
|

AW: Joining video file

Thornton, Keith
A bit more detail about the type of video files and which OS it is running on would be helpful (mpeg2-ps files can be concatenated using cat).

-----Ursprüngliche Nachricht-----
Von: gstreamer-devel [mailto:[hidden email]] Im Auftrag von adrien_sch
Gesendet: Mittwoch, 16. April 2014 17:38
An: [hidden email]
Betreff: Joining video file

Hello guys,

I'm trying to join multiple video file (without decoding), so to achieve my goal, a use the playbin element, and listen the callback "about-to-finish", on this callback, I'm updating the playbin's uri to the next video file, until a reach to last video file, and then I'm firing an EOS event.

My problem is that the result file "contains" the only two first files and it seems that the segment event receive in the video sink isn't right after the second file.

Example :

First Segment :
** Message: Segment : Base 0
** Message: Segment : Duration 11011017072
** Message: Segment : Offset 0
** Message: Segment : Position 0
** Message: Segment : Start 0
** Message: Segment : Stop 18446744073709551615
** Message: Segment : Time 0

Second segment :
** Message: Segment : Base 0
** Message: Segment : Duration 11011017072
** Message: Segment : Offset 0
** Message: Segment : Position 10969000000
** Message: Segment : Start 0
** Message: Segment : Stop 11010708398
** Message: Segment : Time 0
** Message: receive segment event
** Message: Segment : Base *11010708398*
** Message: Segment : Duration 10260708398
** Message: Segment : Offset 0
** Message: Segment : Position 0
** Message: Segment : Start 0
** Message: Segment : Stop 18446744073709551615
** Message: Segment : Time 0

Third segment :
** Message: Segment : Base 0
** Message: Segment : Duration 10260708398
** Message: Segment : Offset 0
** Message: Segment : Position 10219000000
** Message: Segment : Start 0
** Message: Segment : Stop 10260708398
** Message: Segment : Time 0
** Message: receive segment event
** Message: Segment : Base *11010708398*
** Message: Segment : Duration 7257708398
** Message: Segment : Offset 0
** Message: Segment : Position 0
** Message: Segment : Start 0
** Message: Segment : Stop 18446744073709551615
** Message: Segment : Time 0

For me, the third segment base must be the addition of first + second segment duration.

What should I do to get this working ?
Is the observed behavior "normal" ?







--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Joining-video-file-tp4666463.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

---------------
This message is intended for a particular addressee only and may contain business or company secrets.
If you have received this email in error, please contact the sender and delete the message immediately. Any use of this email, including saving, publishing, copying, replication or forwarding of the message or the contents is not permitted.
_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Joining video file

adrien_sch
In reply to this post by adrien_sch
CONTENTS DELETED
The author has deleted this message.
Reply | Threaded
Open this post in threaded view
|

AW: Joining video file

Thornton, Keith
I think you could do it with newer versions of ffmpeg using the -concat option.

-----Ursprüngliche Nachricht-----
Von: gstreamer-devel [mailto:[hidden email]] Im Auftrag von adrien_sch
Gesendet: Donnerstag, 17. April 2014 09:38
An: [hidden email]
Betreff: Re: Joining video file

These is some additional information :

GST version : 1.2.3
OS : Linux
Muxer : Matroska



--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Joining-video-file-tp4666463p4666469.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

---------------
This message is intended for a particular addressee only and may contain business or company secrets.
If you have received this email in error, please contact the sender and delete the message immediately. Any use of this email, including saving, publishing, copying, replication or forwarding of the message or the contents is not permitted.
_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: AW: Joining video file

adrien_sch
CONTENTS DELETED
The author has deleted this message.
Reply | Threaded
Open this post in threaded view
|

Re: AW: Joining video file

Sebastian Dröge-3
On Do, 2014-04-17 at 04:12 -0700, adrien_sch wrote:
> I solved the problem by updating correctly the segment event.
>
> For me, this operation can be done by the playbin master element, so should
> I create a bug entry for this ? (at least, it's done correctly for the first
> switch)

What's the bug you think could be there? What exactly are you doing and
how did you solve the problem you noticed previously? There might be a
bug around that but without further information that's hard to tell.

--
Sebastian Dröge, Centricular Ltd - http://www.centricular.com
Expertise, Straight from the Source

_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (968 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: AW: Joining video file

adrien_sch
CONTENTS DELETED
The author has deleted this message.
Reply | Threaded
Open this post in threaded view
|

Re: AW: Joining video file

Sebastian Dröge-3
On So, 2014-04-20 at 02:21 -0700, adrien_sch wrote:

> Hello Sebastian,
>
> I tried to concatenate multiple video file into one without decoding the
> video stream using the playbin element and the signal "about-to-finish". My
> observation is that the second segment sent after the first "switch" (file1
> -> file2) is correct, but all the next (file2 -> file3 or file3 -> file4)
> are wrong (the base attribute of the segment is lost <-> = 0).
>
> To resolve the issue, I simply catch the segment event, an updated with the
> correct value (base always calculated with the previous base and stop), and
> it worked as expected. I may think that this is a bug because, the first
> the switch is right but not the others, and the playbin element may have
> all the information needed to do the job.
>
> But maybe this expected behavior is against some others behavior that the
> playbin may support.
This indeed sounds like a bug. Could you create one at
http://bugzilla.gnome.org , ideally with a testcase?

Inside playbin the streamsynchronizer element is responsible for
adjusting segments in a way that the running time of such multiple
streams played one after another directly is monotonically increasing.

--
Sebastian Dröge, Centricular Ltd - http://www.centricular.com
Expertise, Straight from the Source

_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (968 bytes) Download Attachment