Jump to content

Naming and Ordering IPTV.m3u


bubs

Recommended Posts

Then i think it won't work for mapping and sorting at the same time. We need 2 different properties for channel number and xmltv mapping.

It doensn't make sense to sort by something like Rai1.it or map the xmltv by something as 001

Debugging the dashboard javascripts I see that the channels have 2 properties containing the same data (channelNumer and Number), maybe we could use one of these for the xmltv and one for the channel number

 

Thanks

Edited by gmb
Link to comment
Share on other sites

  • 1 month later...
Jdiesel

I think because there is not standard out there, or at least providers are not sticking to a standard m3u method, the best option is to have a way of mapping manually and the option to auto-generate channel numbers.

 

In my case I have:

 

#EXTINF:0 tvg-id="bravo.*****.com", Bravo

 

Where the tvg-id is not the channel name or the number and there is no channel number. To make matters worse the m3u needs to be updating quite frequently so manually editing it is not really an option. Ideally it would be nice to be able to link to a single field in the m3u that stays static, in my case the tvg-id, and map other metadata such as channel number, channel name, logo against it external from the m3u itself.

Link to comment
Share on other sites

Thanks for the report. I'm adding some fixes to the next release of Emby Server to address the channel name parsing. Thanks.

Link to comment
Share on other sites

Jdiesel

Thanks, I just tested and can report back.

 

My M3U is:

#EXTINF:0 tvg-id="bravo.*****.com", Bravo

 

My channel tile shows:

0 tvg-id="bravo.*****.com" bravo.*****.com

Link to comment
Share on other sites

taylorbourne

Thanks for the report. I'm adding some fixes to the next release of Emby Server to address the channel name parsing. Thanks.

Sweet! Can't wait for this.. might even have to switch to dev to give it a try.

Link to comment
Share on other sites

Jdiesel

I can also report that the guide is not populating at all on the latest beta 3.1.239. I can confirm that the guide with the same M3U and XML was working on .8500.

Link to comment
Share on other sites

Due to the changes you may need to remap channels to guide data. And if I continue to adjust the channel number parsing in subsequent builds, you may have to remap it again at that point.

Link to comment
Share on other sites

Jdiesel

Initially I did not need to map any of the channels to the guide, on the stable server that is, the guide populated with the correct channels. To make testing easier I condensed my M3U to a few entries. I tried mapping them but nothing is populating in the guide. I had just switched over to the beta server builds at build .238 so I am unaware of how things were working prior to the recent commits.

Link to comment
Share on other sites

  • 2 weeks later...
Jdiesel

Just wanted to provide some feedback on the M3U parsing. As of the most recent beta .248 the channel names are still not displaying correctly. For reference they are displayed correctly on .8500. Attached is what I am seeing currently.

 

58482bf427536_Capture.png

Link to comment
Share on other sites

Jdiesel

Everything is working much better since the changes made in beta .249, in fact the channels are even mapping with the guide .xml automatically for me now. Great job! The only feedback I have is when the tvg-id is blank like tvg-ID="" the channel name defaults to the entire M3U string -1 tvg-id="" CA: CBC HD. This seems like more of a M3U issue so I will work on my end to straighten out the blank entries. Thanks again for the help with this.

Link to comment
Share on other sites

Jdiesel

What paramter does the channel mapping feature use to associate with a channel? I'm having an issue getting Schedule Direct to channel map to a M3U playlist that looks like this:

 

#EXTINF:0,Discovery Channel

 

Does it need to have a tvg-id or tvg-name for the channel mapping to work?

Link to comment
Share on other sites

Jdiesel

Just an update, it appears that the channel mapping uses one of the following to associate with a channel listingId, channelNumber, or channelName. Any throughts on being able to autoassign channel numbers or manually add them from the info menu? 

*** Error Report ***
	Version: 3.1.249.0
	Command line: /usr/lib/emby-server/bin/MediaBrowser.Server.Mono.exe -programdata /var/lib/emby-server -ffmpeg /usr/bin/ffmpeg -ffprobe /usr/bin/ffprobe -restartpath /usr/lib/emby-server/restart.sh
	Operating system: Unix 4.4.0.51
	64-Bit OS: True
	64-Bit Process: True
	Mono: 4.6.2 (Stable 4.6.2.7/08fd525 Mon Nov 28 20:49:26 UTC 2016)
	Processor count: 8
	Program data path: /var/lib/emby-server
	Application directory: /usr/lib/emby-server/bin
	System.ArgumentNullException: Value cannot be null.
	Parameter name: key
	  at System.ThrowHelper.ThrowArgumentNullException (System.ExceptionArgument argument) [0x00006] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x0000b] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Collections.Generic.Dictionary`2[TKey,TValue].TryGetValue (TKey key, TValue& value) [0x00000] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at Emby.Server.Implementations.LiveTv.Listings.SchedulesDirect.GetStation (System.String listingsId, System.String channelNumber, System.String channelName) [0x0003f] in <6d4dba971ad14ac2ad18b0d159dca5f1>:0 
	  at Emby.Server.Implementations.LiveTv.Listings.SchedulesDirect+<AddMetadata>c__async1.MoveNext () [0x003f3] in <6d4dba971ad14ac2ad18b0d159dca5f1>:0 
	--- End of stack trace from previous location where exception was thrown ---
	  at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0004e] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x0002e] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x0000b] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV+<GetChannelsAsync>c__async2.MoveNext () [0x00269] in <6d4dba971ad14ac2ad18b0d159dca5f1>:0 
	System.ArgumentNullException
	  at System.ThrowHelper.ThrowArgumentNullException (System.ExceptionArgument argument) [0x00006] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x0000b] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Collections.Generic.Dictionary`2[TKey,TValue].TryGetValue (TKey key, TValue& value) [0x00000] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at Emby.Server.Implementations.LiveTv.Listings.SchedulesDirect.GetStation (System.String listingsId, System.String channelNumber, System.String channelName) [0x0003f] in <6d4dba971ad14ac2ad18b0d159dca5f1>:0 
	  at Emby.Server.Implementations.LiveTv.Listings.SchedulesDirect+<AddMetadata>c__async1.MoveNext () [0x003f3] in <6d4dba971ad14ac2ad18b0d159dca5f1>:0 
	--- End of stack trace from previous location where exception was thrown ---
	  at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0004e] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x0002e] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x0000b] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <8f2c484307284b51944a1a13a14c0266>:0 
	  at Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV+<GetChannelsAsync>c__async2.MoveNext () [0x00269] in <6d4dba971ad14ac2ad18b0d159dca5f1>:0 
Link to comment
Share on other sites

Jdiesel

Will the auto assign work by order of the entries in the M3U playlist? My thoughts are if an entry is removed from the list or the list is reordered the channels will have to be remapped each time.

Link to comment
Share on other sites

  • 4 years later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...