Add support for NeuCodec
Author: harryjulian
Pull request: yes

<!-- ci-dashboard-badge:start -->
[![CI](https://transformers-ci.lor-e.huggingface.cool/badge/pr?pr=47143)](https://transformers-ci.lor-e.huggingface.cool/d/pytest-observability-by-pr/pytest-observability-branch?var-pr=47143)
<!-- ci-dashboard-badge:end -->

Adding support for NeuCodec.

Comments:
run-slow: neucodec

[Workflow Run ⚙️](https://github.com/huggingface/transformers/actions/runs/29501353640)

This comment contains `run-slow`, running the specified jobs: 

models: ["models/neucodec"]
quantizations: []

## CI Results
[Workflow Run ⚙️](https://github.com/huggingface/transformers/actions/runs/29501353640)

### Commit Info
| Context | Commit | Description |
|---------|--------|-------------|
| RUN | [14a74ea7](https://github.com/huggingface/transformers/commit/14a74ea7b00a240e521510cebb13db1e68d30cec) | workflow commit (merge commit) |
| PR | [fba26803](https://github.com/harryjulian/transformers/commit/fba26803168228cd60d66962ed13b1376954ec4f) | branch commit (from PR) |
| main | [a8609bed](https://github.com/huggingface/transformers/commit/a8609bed2ad1593e7d756006525a10053d4d5bc6) | base commit (on `main`) |

⚠️ **Model CI failed to report results**

The test failure analysis could not be completed. Please check the [workflow run](https://github.com/huggingface/transformers/actions/runs/29501353640) for details.


Thank you for your contribution 🤗!

## CI Security Gate — automatic approval blocked

This PR was **not** automatically approved for CI because the security gate failed.

**Possible reasons:**
- The PR touches 50 or more files — only PRs with fewer than 50 changed files are automatically approved
- A changed file is outside the allowed directories (`src/`, `tests/`, `docs/`, `utils/`), has a disallowed extension (only `.py`, `.txt`, `.md` permitted outside `tests/` and `docs/`), or is not `.md`/`.yml` inside `docs/`
- A new high-severity security issue was detected in the changed Python files (Bandit check)

See the [workflow run](https://github.com/huggingface/transformers/actions/runs/29504245211) for the exact violations.

A maintainer can review and manually approve CI if a finding is a false positive.

@vasqu could I get your thoughts on two things?
- Neucodec has different input/output sampling rates. What do you think of [this naming](https://github.com/huggingface/transformers/pull/47143#discussion_r3537934711)?
- Neucodec can almost use the feature extractor of Xcodec2. What do you think about [this approach](https://github.com/huggingface/transformers/pull/47143#discussion_r3593967565) to avoid defining a new one here?

> Neucodec has different input/output sampling rates. What do you think of https://github.com/huggingface/transformers/pull/47143#discussion_r3537934711?

Yea, I don't think there is a right or wrong tbh. I think it's fine but we need to be strict about this - I guess the sampling rate of the feature extractor == input sample rate? Maybe it would be even best to define both input/output to be as explicit as possible

> Neucodec can almost use the feature extractor of Xcodec2. What do you think about https://github.com/huggingface/transformers/pull/47143#discussion_r3593967565 to avoid defining a new one here?

I would just apply modular tbh and override the call, add a small comment to the change in question. Seems to overshoot a bit to change xcodec to me

**[For maintainers]** Suggested jobs to run (before merge)

run-slow: auto, neucodec, xcodec2

<!-- ci-dashboard-recap:start -->

---

### CI recap

**Dashboard:** [View test results in Grafana](https://transformers-ci.lor-e.huggingface.cool/d/pytest-observability-by-pr/pytest-observability-branch?var-pr=47143)
**Latest run:** [29566989749:2](https://github.com/huggingface/transformers/actions/runs/29566989749)
**Result:** `failure` | **Jobs:** 15 | **Tests:** 170,797 | **Failures:** 35 | **Duration:** 13h 29m

<!-- ci-dashboard-recap:end -->