On Fri, 14 May 2021, Dominguez Bonini, David wrote:

Hi,

Hi Marton,

Il 2021-05-12 19:18 Marton Balint ha scritto:
On Wed, 12 May 2021, Ubaldo Porcheddu wrote:

Hi Marton,

+    }
+
+    //private data
+    desc_len += 6 + 2;
+    *q++ = 0x5F;
+    *q++ = 4;
+    *q++ = 0x00;
+    *q++ = 0x00;
+    put16(&q, 40);

What are these?

I didn't find any official document about it but this seems to be the
way many national (FR,IT,UK) broadcasters are writing the virtual
channel private data header and the one recognized by many popular tv
on the market.

But this looks like a separate descriptor from the virtual channels
(logical_channel_descriptor).

I think it is better to remove it until it is more clear what it does,
or maybe we add an extra mpegts flag like "nit_lcn_extra" ?


The private data specifier descriptor is needed for the TV to correctly process 
the LCN descriptor. When it is needed, you have to include both or none.
Also, in the Scandinavian countries, that use the NORDIG spec, the LCN 
descriptor has a different format, though I think the European format may still 
be understood.

Specs can be found here for NORDIG : 
https://nordig.org/wp-content/uploads/2017/03/NorDig-Unified_ver_2_6.pdf

Specs for the European LCN can be found here, it's the French spec, but the 
rest are the same: 
https://www.csa.fr/web/index.php/content/download/253685/723620/version/1/file/CSA-Signalling-Profilev3.4.pdf

Specs for the Australian LCN descriptor can be found here: 
https://www.freetv.com.au/wp-content/uploads/2019/08/OP-41-LCN-Descriptor-Issue-8-July-2016.pdf

The rules, as far as I know them are:

NORDIG --> Private Data Specifier = 0x00000029,  LCN Descriptor Tag = 0x83 
(legacy), 0x87 (Nordig version)
United Kingdom --> Private Data Specifier = 0x0000233A,  LCN Descriptor Tag = 
0x83
Rest of Europe + Most of the World --> Private Data Specifier = 0x00000028,  
LCN Descriptor Tag = 0x83
Australia --> _Do_not_include_Private_data_specifier_descriptor_ , LCN 
Descriptor Tag = 0x83

My suggestion would be to add an "LCN_mode" parameters, with values: NO_LCN, 
Australia,UK,Nordig, etc

Thanks for this, I agree with your suggestion.

It probably also makes sense to split the feature in two patches:

patch 1 adds support the nit flag (I think it is shorter than emit_nit) without LCN.

patch 2 add support for various lcn modes:
-lcn_mode (none|nordig|nordig_legacy|uk|australia|world).
And this would enable lcn generation in the NIT.

Regards,
Marton
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to