Forum

MPEG4 is getting audio only video is missing

Sulabh Khanal 2019-01-18 13:40:37 UTC in WMSPanel functionality

Hello,

I am trying to stream HLS from a very low bitrate MPEG4 stream but only audio is being played and video is blank. I am pulling udp multicast stream via ffmpeg => transcoding it into mpeg4 => pushing it to wmspanel/nimble via udp:

ffmpeg -re -timeout 2000 -i 'udp://@239.1.9.53:8002?overrun_nonfatal=1&fifo_size=50000000' -pix_fmt yuv420p -aspect 16:9 -filter:v yadif=0:-1:1,fps=25 -c:v mpeg4 -vtag xvid -s 176:144 -b:v 74k -c:a aac -b:a 64k -ar 44100 -framerate 20 -strict -2 -max_muxing_queue_size 1024 -f mpegts 'udp://192.168.2.200:2345' </dev/null >/dev/null 2>/root/mpeg4.log &

The following is the ffmpeg output:
Input #0, mpegts, from 'udp://@239.1.9.53:8002?overrun_nonfatal=1&fifo_size=50000000':
Duration: N/A, start: 50971.689489, bitrate: N/A
Program 98
Metadata:
service_name : #########
service_provider: ########
Stream #0:0[0x63]: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p(tv, bt470bg, top first), 720x576 [SAR 12:11 DAR 15:11], 25 fps, 50 tbr, 90k tbn, 50 tbc
Stream #0:1[0x64](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, s16p, 128 kb/s
Stream #0:2[0x65](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, s16p, 64 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> mpeg4 (native))
Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
Press [q] to stop, [?] for help
[h264 @ 0x55e294d23460] reference picture missing during reorderbitrate= -0.0kbits/s speed=N/A
[h264 @ 0x55e294d23460] Missing reference picture, default is 65413
[h264 @ 0x55e294e00ce0] mmco: unref short failure
Last message repeated 1 times
[h264 @ 0x55e294e00ce0] number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one
[h264 @ 0x55e294b76aa0] mmco: unref short failure
[h264 @ 0x55e294e1fa80] mmco: unref short failure
[mpeg4 @ 0x55e294c233c0] too many threads/slices (10), reducing to 9ate= -0.0kbits/s speed=N/A
Output #0, mpegts, to 'udp://192.168.2.200:2345':
Metadata:
encoder : Lavf57.83.100
Stream #0:0: Video: mpeg4, yuv420p, 176x144 [SAR 16:11 DAR 16:9], q=2-31, 74 kb/s, 25 fps, 90k tbn, 25 tbc
Metadata:
encoder : Lavc57.107.100 mpeg4
Side data:
cpb: bitrate max/min/avg: 0/0/74000 buffer size: 0 vbv_delay: -1
Stream #0:1(eng): Audio: aac (LC), 44100 Hz, stereo, fltp, 64 kb/s
Metadata:
encoder : Lavc57.107.100 aac
root@vm2:~# fps= 25 q=31.0 size= 3790kB time=00:02:40.12 bitrate= 193.9kbits/s speed=0.998x

I have pulled the above mpegts udp stream via wmspanel/MPEGTS In and streaming via hls through MPEGTS Out. In MPEGTS out, I can see that both VIDEO and profile audio profiles are being loaded (udp://192.168.2.200:2345 Stream 256 (MPEG-4 Video) udp://192.168.2.200:2345 Stream 257 (MPEG-2 AAC Audio)

However, when I play the HLS stream, there is no video but audio is playing.
The video is playing when I use x264 codec in ffmpeg. As listed in https://wmspanel.com/nimble/codecs MPEG4 Video is supported.
Could you please suggest?

Denis Slobodskoy 2019-01-21 02:59:37 UTC 

Please remove -vtag xvid option (or use -vtag h263) since Nimble doesn't recognize this setting. Also, if you would like to play it in a browser, use H.264 encoder ( -c:v libx264) instead of mpeg4.

Sulabh Khanal 2019-01-21 12:57:45 UTC 

Thank you Denis.
I can now play the video stream on VLC player. However, webplayers (player.wmspanel.com) still do not play the video and the video on the stream's dvr is also missing. I guess its best to use H.264 encoder for best compatibility.

nino 2020-01-18 18:26:28 UTC 

hi guys i have transcode so i want to
pipe:///usr/bin/ffmpeg -i /stream/channelnumber/54 -vf yadif=0:0:0 -vcodec libx264 -preset veryfast -s 1280x720 -b 2500k -minrate 2500k -maxrate 2500k -bufsize 2500k -acodec aac -ab 128k -ar 44100 -strict -2 -metadata service_provider=TTVSTREAM -metadata service_name=TGCOM24 -f mpegts -tune zerolatency pipe:1

add my personal logo but it gives me error doing so

-i /home/logo.png -filter_complex overlay=main_w-overlay_w-1600:main_h-overlay_h-920 -vf yadif=0:0:0 -vcodec libx264 -preset veryfast -s 720x576 -b 3000k -minrate 3000k -maxrate 3000k -bufsize 3000k -acodec aac -ab 128k -ar 44100 -strict -2 -metadata service_provider=TTVSTREAM -metadata service_name=TGCOM24 -f mpegts -tune zerolatency pipe:1

Post a reply


Post a new question

Categories:

Tags:

nimbleNimble StreamerFAQHLSDVRRTMPhlsnimble streamerABRcachewmsauthNimbledvrAPISRTtranscoderffmpegapiVODfailoverrtmpstreamingDASHwmspanelvodudprtsppaywallsubtitlessrtsldpDispersaRTSPyoutubeabrlivelivestreamingmp4WMSAuthMPEG-DASHpay-per-viewgeodashWMSPaneledgevideostreamerWindowsencryptionhttpsUDPuser agentwhite labelconfigsmilFFMPEGsslmulticastMPEG-TSaudioCORSre-streamingmpeg-dashchunksraspberry piandroidbandwidthadvertizercorsvlcS3DRMrules.confplaylistadvertisingipv6MPEGTSFastSpringRAMthumbnailFMLEVATcrossdomainupdateRecordingSMILmpegtsaespushakamaiwowzaserverserrorm3u8TranscodebalanceSSLchromecastplaylist_dvrWowzaconfigurationIDreportingbugperformancedomainnimblestreamerLarixIPrepublishingmpeg-tspublish controlcodecmobileloopHttpsVidillionawsAWSdownloadorigincloudfrontCDNraspianwms panelroutesSLDPchunknimble webcam html5UIbitrateRegistration Issuedirect link32-bit Windowstwitchcache_controlitworkmelive abr support mpeg-dashwmspanelapiresumertmp abrbeirutWWDCdubaideep statsCentOS v6.4hls to multicast udplogcloudIIS Smooth StreamingmediaHot-linking protectionHTTPSAbrHDSvaddioalertsjwplayer websitebaselinewhmcsnginx rtmp nimbleAV BridgeAuthentication in HLSVaddioPI3 Ubuntupriceview timelimitOld logsscte-35screencastinterfacesattaching domainsDVRRecordingloadbalancingmod_rewritemetadataprofileID3 tagsgbpsAxiswmsauthsignhighmessageWMSCONFIG_HOMEhds streamrestreamcostlocalcisco.net hotlinkhls restreaminggentoo install server nimbleVLCPublic Iptranscoding using NvidiaPaywall AuthniblerofflinedocumentationNimble streamer upgradeTrancoderconcurrent-connectionsdecodertransocding republishingVideo PlayerfileAliaslost trafficServer-sidetasks-controllebanonlocationmanifeststoppedNimble Streamer versionmainipMP4 not playedspaceicecast urlruledvr streamconnectivityunique visitorseekinghot linkingchangepay per viewamfplayoutPlayReadyamazon web servicelimuxdvr stream twicedvr_archivesmpeg dashobsTCOhot-linkAXVVGopensslSteam stopped workingonblocknvencHLS vodExpression Encoder7analyticspaywalapplicationbrandingtrialMP4microsoft streamerrorsHLS Playerrocksoftlog traffic statsDASH Playerdebianprogressive downloadABR DASHFFmpegmultiple originsnimblesessionidlive video on demandbandwithscreen freezecan't registerserverheaderprivate networkLarge DVR fileslog nimble analysertmp playbackvideojsno WMSPanellive videointerleavingsourcemac osx installadaptiveAV1 codecSnapshotsNGINX-RTMPJWPLAYERwotermarkvimeohelp errorPullvideo stopload balance4Kcrossdomain more then 1 domainvsomcdnattachmentlive streamvod no soundconcurrent connectionAWS 3buttmpeg2tsDelayServer-Side-Task-Controldisk migrationWidevineFairplayfallbackamazonControl APIscreen capturestereo to monoLive streamingTranscoderRemote StorageWowza Agentsecuritydrmnot foundCPU Loadresourceaes encryptionpullsubscriptionAS3ABR HLS Bitrateslive pull settingsWMSPanel settingsrtmp for YouTubetwitch larix broadcaster androidDVRSettingsinstall players setup ready to goDelete recordsAppleicecastudp streamingoutratevideo loopnimble streamer vod hls transmuxingloggingstarttime duration seekpointrebootdvr streamslearnermonitorautomationnimble streamer web server php script pageNimble Streamer APIlivestreamnimble.confrtmp republishing transcodeIIS Media Servicsinsert logoapi accessDeep statsNimble CapacityABR DVR problemweb playerLive SwitcherAVCaptureMovieFileOutputblock downloadcontent-dispositionnot to stealLive BroadcastPost processingadd_chunk failedfake extensionMPEG DASHUbuntu artful 17.10Transcoder MPEG DASHNimble Serverstatus:errorFFMPEG;RTMP;I/O errortranscodingHotlinking ProtectionStreaming routeRTMP republishlarix broadcasterMPEG-DashPIDbroadcasterOSXpaymentstatsreloadpremium featureThumbnailsserver incorrect timeLiveLIVEdemandHow to do live stream with multiple audio trackProgressivenimble aliasesprogressivermtpno internetHLS Streamingthumbnail dvr-thumbnailLoad-Balancingnimble streamer mpeg-ts multiple inputswmsAuthSignsoundHLS Meta Tag editing.streamsdelaympeg4Secureraspberryavoid refreshreportstranscoder nimbleAndroiduser_agentdvr on wmspanelVideo cant be playedS3 AWSBroadcastcredentialslivestream bitratevbv-maxratetranscodeRepublishingVR-360Failoverpublish streamStream Delaytraffichd25Larix BroadcasterAArch64PacketizingABR bitratesbuildcontentRTMP Republishdomain lockoutputUsers limitcloudflareVOD HLS streaming on public IPincoming streamno soundInvalid frame headerHTML5 playerGopNimbleStreamerav1 codecDVR Setting limitssaibufferrtsp push androidartifactscache expiryvideo streamingQuickTime.movalias routestoragedistributionfastspringmp2 audiodata slicesaliasplayer sldpspeedup my videoiOSqataritworkscdnvideo.jstransocderlivestreaminRAM Loaddiskstorage space available3.6.1-1webhookdvr to livedissapointmentpay-per-minuteSO_RCVBUFbuffering videoadvp9adjustsoftware versionnimble dvrdurationBandwidthgpuPaywallvideo and audio not matchmanage_dvrhow-toError when installingrulesDVRStreamsaws amazonIOSrestartFallbackhelpUDP MulticastMax connectionMPEG2 Videologo in streama recordwirecasthttp serverSSL requestserver ip21compatibility protocolssha265VP9CSSactionscript 3server ssl errordynamic linksTLSV 1.2 Certificateanalisyssctenimble on cloudprerolllatencyscte35ubuntu 18Teradek DecoderViewer StatsNDICross DomainSRT protocolabr fallbackNimble connectionsmd5pricingissuecpugoogle cloud storagePORTDVR SettinganalyseStreamID

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the Privacy Policy. If you want to know more or withdraw your consent to all or some of the cookies, please refer to the Privacy Policy.
By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to the use of cookies.