[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gstreamer-devel
Subject:    AW: h264parse element needed to play video in VLC after encoding with nvh264enc
From:       "Thornton, Keith" <keith.thornton () zeiss ! com>
Date:       2019-09-30 9:32:12
Message-ID: VI1P190MB0590D40DE3DE625C330A23928C820 () VI1P190MB0590 ! EURP190 ! PROD ! OUTLOOK ! COM
[Download RAW message or body]

[Attachment #2 (text/plain)]

HI,
without the h264parse element, your encoder will deliver byte-stream format. Most \
players like to play h264 / mp4 files in avc format. The h264parse will convert from \
byte-stream to avc. Gruesse

Von: gstreamer-devel <gstreamer-devel-bounces@lists.freedesktop.org> Im Auftrag von \
                Serhan Gül
Gesendet: Montag, 30. September 2019 11:16
An: gstreamer-devel@lists.freedesktop.org
Betreff: h264parse element needed to play video in VLC after encoding with nvh264enc

Hi,
I'm encoding a YUV video to H.264 using nvh264enc. When I use the first pipeline \
blow, the encoding works but I cannot play the MP4 file in VLC 3.0.8 (Ubuntu 18.04) \
but only using the Videos application of Ubuntu. However, when I add a h264parse \
element between nvh264enc and filesink, as in the second pipeline, I can play the \
video without a problem in VLC. Any ideas why this is happening? I don't really \
understand why I need the parser element h264parse after the encoder

> gst-launch-1.0 -v filesrc location=BQTerrace_1920x1080_60.yuv ! rawvideoparse \
> format=i420 width=1920 height=1080 ! nvh264enc ! filesink \
> location=BQTerrace_1920x1080_60.mp4

> gst-launch-1.0 -v filesrc location=BQTerrace_1920x1080_60.yuv ! rawvideoparse \
> format=i420 width=1920 height=1080 ! nvh264enc ! h264parse ! filesink \
> location=BQTerrace_1920x1080_60.mp4

Actually I was expecting to put a mp4mux element between nvh264enc and filesrc but if \
I do that, I get the error: "WARNING: erroneous pipeline: could not link nvh264enc0 \
to mp4mux0".  If I use x264enc, the pipeline works though.

Thanks,
Serhan

--
  Serhan Gül
  serhan@fastmail.com<mailto:serhan@fastmail.com>


[Attachment #3 (text/html)]

<html xmlns:v="urn:schemas-microsoft-com:vml" \
xmlns:o="urn:schemas-microsoft-com:office:office" \
xmlns:w="urn:schemas-microsoft-com:office:word" \
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" \
xmlns="http://www.w3.org/TR/REC-html40"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p.MsoNoSpacing, li.MsoNoSpacing, div.MsoNoSpacing
	{mso-style-priority:1;
	margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
p.msonormal0, li.msonormal0, div.msonormal0
	{mso-style-name:msonormal;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
span.E-MailFormatvorlage20
	{mso-style-type:personal-reply;
	font-family:"Arial",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="DE" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:&quot;Arial&quot;,sans-serif;mso-fareast-language:EN-US">HI,<o:p></o:p></span></p>
 <p class="MsoNormal"><span lang="EN-US" \
style="font-size:10.0pt;font-family:&quot;Arial&quot;,sans-serif;mso-fareast-language:EN-US">without \
the h264parse element, your encoder will deliver byte-stream format. Most players \
like to play h264 / mp4 files in avc format.  The h264parse will convert from \
byte-stream to avc.<o:p></o:p></span></p> <p class="MsoNormal"><span lang="EN-US" \
style="font-size:10.0pt;font-family:&quot;Arial&quot;,sans-serif;mso-fareast-language:EN-US">Gruesse<o:p></o:p></span></p>
 <p class="MsoNormal"><span lang="EN-US" \
style="mso-fareast-language:EN-US"><o:p>&nbsp;</o:p></span></p> <div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b>Von:</b> gstreamer-devel \
&lt;gstreamer-devel-bounces@lists.freedesktop.org&gt; <b>Im Auftrag von </b>Serhan \
Gül<br> <b>Gesendet:</b> Montag, 30. September 2019 11:16<br>
<b>An:</b> gstreamer-devel@lists.freedesktop.org<br>
<b>Betreff:</b> h264parse element needed to play video in VLC after encoding with \
nvh264enc<o:p></o:p></p> </div>
</div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<div>
<p class="MsoNormal">Hi,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I'm encoding a YUV video to H.264 using nvh264enc. When I use \
the first pipeline blow, the encoding works but I cannot play the MP4 file in VLC \
3.0.8 (Ubuntu 18.04) but only using the Videos application of Ubuntu. However, when I \
add a  h264parse element between nvh264enc and filesink, as in the second pipeline, I \
can play the video without a problem in VLC. Any ideas why this is happening?&nbsp;I \
don't really understand why I need the parser element h264parse after the \
encoder<o:p></o:p></p> </div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">&gt; gst-launch-1.0 -v filesrc \
location=BQTerrace_1920x1080_60.yuv ! rawvideoparse format=i420 width=1920 \
height=1080 ! nvh264enc ! filesink location=BQTerrace_1920x1080_60.mp4<o:p></o:p></p> \
</div> <div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">&gt; gst-launch-1.0 -v filesrc \
location=BQTerrace_1920x1080_60.yuv ! rawvideoparse format=i420 width=1920 \
height=1080 ! nvh264enc ! <b>h264parse</b> ! filesink \
location=BQTerrace_1920x1080_60.mp4<o:p></o:p></p> </div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">Actually I was expecting to put a mp4mux element between \
nvh264enc and filesrc but if I do that, I get the error: &quot;WARNING: erroneous \
pipeline: could not link nvh264enc0 to mp4mux0&quot;.&nbsp; If I use x264enc, the \
pipeline works though.<o:p></o:p></p> </div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Serhan<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div id="sig67116920">
<div>
<p class="MsoNormal">--&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; Serhan Gül<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; <a \
href="mailto:serhan@fastmail.com">serhan@fastmail.com</a><o:p></o:p></p> </div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
</div>
</body>
</html>


[Attachment #4 (unknown)]

_______________________________________________
gstreamer-devel mailing list
gstreamer-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic